Webコンサルタントの愚痴とアジャイル,生産性向上,Trac,オープンソースなどの与太話
相も変わらず色々アプリを書いている。いまは仕事でPHPなんだが、以前お願いして協力会社に作ってもらったソースはXSSだらけ~(ただし認証配下かつF/Wでアクセス元限定)。
なので、これはアプリケーションファイヤーウォールでも入れないといかんな、と思いとりあえず自宅鯖でmod_securityの実験してみた。
これを入れると、要は入力パラメータ(正確にはクライアント側からapacheへ送信されるもの全て)を途中でチェックし、問題がある場合はロギングしたり、エラーとして以降の処理を止めたり出来る。
httpd.confまたは.htaccessまたはincludeファイルに予め以下のようなルールを記載しておく。
SecFilter "<[[:space:]]*script.*>”
SecFilter “<[[:space:]]*style.*>”
SecFilter “<[[:space:]]*link.*>”
SecFilter “<[[:space:]]*body[[:space:]]*>”
SecFilter “javascript:”
SecFilter “vbscript:”
SecFilter “about:”
SecFilter “expression(”
SecFilter “&{.*};”
SecFilter “onError”
SecFilter “onUnload”
SecFilter “onBlur”
SecFilter “onFocus”
SecFilter “onClick”
SecFilter “onMouseOver”
SecFilter “onMouseOut”
SecFilter “onSubmit”
SecFilter “onReset”
SecFilter “onChange”
SecFilter “onSelect”
SecFilter “onAbort”
SecFilter “document.cookie”
SecFilter “Microsoft.XMLHTTP”
色々な攻撃手法が次々と出てくるが、この定義ファイルに記載することでより安全には出来る。
性能上の問題はあるかもしれないが、性能とセキュリティどっち取りますか?って聞かれればセキュリティ取る俺なので問題なし。
ちなみに先日Yahooは何故PHPを採用しているのかを示す英語文書を読んだが、やはりアプリケーションファイヤーウォールを併用しているようだ。いくら気をつけてもアプリからXSSの脆弱性はなくならないしな。
ビジネスブログの定義は以下の通りだそうな。
* 運営者が明確であること。
* 企業が運営していること。
* 会社概要のWebサイトへのリンクがあること。
* メールまたはメールフォームでの問い合わせ先があること。
* RSSを配信していること。
* コメント追加・Trackback追加が出来ること。
なるほどなるほど。上4つはビジネスであることで、下2つは
ブログであることを示している。
となるとブログを企業が採用する理由は究極的には以下に集約できるのではないか。
* 更新が楽(運用コストが削減できる)
* SEO対策が出来る
そもそも論だが、現在のWebサイトにおける集客はかなりの割合を検索エンジンに頼っている。
ちなみに俺のサイトも7割以上は検索サイト経由だ。
検索サイトに集客を頼る、ということは、特定のキーワードで自社サイトが上位の結果として
出てくるようにしなければならない。上位に出すためには、外部間のリンクの多さや
更新頻度の多さが非常に重要となる。
ブログを使うと訪問者自身が勝手にトラックバックやコメントを追加し、外部との連携を
強化していってくれるわけで、訪問者に訴えかけたい内容が、共感を得れば得るほど、
また、他との差をアピールできればできるほど、自動的に大勢に広がっていく、
という効果が見込める。
そういう意味では、他との差別化をしにくい金融業界や小売業界においては
ビジネスブログが高い効果を上げることは難しいだろう。
てなことを色々と調べているのだが、俺はシステム屋なので、どう使うかよりも
どうやって作るかにより興味があったりする。
ビジネスブログで言えば、俺が見る限り、MovableTypeで決まり。
よくよく詳しく見るとBlogソフト兼軽量版CMSといったカンジだが内容秀逸。
なんか他に良いのあったら教えてくれ。
色々とオープンソースCMSを試しているのでその感想など。
ezPublish
・とりあえず日本語がまだ使えない。日本語が使えればかなりよさそう
・動的生成タイプ
・SEO対策としてURLがきれい
・PHP+MySQL
・今後も様子見が必要
typo3
・管理画面が使いにくい
・URLがパラメータ渡しで長いので検索エンジンの親和性が低い
・動的生成タイプ
・PHP+MySQL
・とりあえずスルー
Apache Lenya
・JAVA+XMLベース
・なんかイマイチ使いにくい
・日本語化は半端な模様
・とりあえずスルー
Joomla
・とりあえずまだ多言語化はされておらず日本のコミュニティで独自日本語化モジュールを出している。
・文字コードはUnicode。
・操作感や全体のイメージは良い。
・URLがパラメータ渡しで長いので検索エンジンの親和性が低い
・PHP+MySQL
・もともとmamboから始まったプロジェクトが分裂したような感じなので今後どのような方向で進むのか不安もある。
Drupal
・日本語が普通に動く
・操作感や全体のイメージは良い。
・URLがPathInfoで渡せるので検索エンジン的に良い
・PHP+MySQL
・最近日本での採用事例多いかも。
・一番注目。
結局そうなったか。
日記 PHP オープンソース Linux Trac Perl wordpress フリーソフト Agile 自宅サーバ phpMyFaq Plugin 書評 Delphi apache プラグイン Subversion アジャイル mojavi セキュリティ Ruby Firefox Ajax/Web2.0 eclipse サーバ Zope フレームワーク CakePHP 文字化け scuttle OpenVZ 自宅 phpBB CMS 翻訳・日本語化 Excel ApacheDS 生産性向上 仮想化 hacks CodeIgniter XAMPP LDAP SBM taskfreak Ajax 修正 言語ファイル mod_security ダウンロード HTML::FillInForm 情報共有 格安 メンテナンス 移転 アンケート レンタル PhpScheduleIt 翻訳 API