トップ 最新 追記

"週"記

日記?ムリっ。
半年1回の更新を目指すよう心がけます。
RSS

WebAppSec

2003|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|03|04|05|06|07|08|09|12|
2008|01|02|
2009|04|
2010|02|

履歴


2005-12-09

_ [etc] 安全なアプリケーション開発を推進する「開発者セキュリティ」施策の開始

といったところから開発者を支援して、安全なアプリケーション開発を推進していくそうです。

本日のツッコミ(全1件) [ツッコミを入れる]

_ masa [静的コード分析の詳細な情報知ってます? これは、違った意味でやばいです。]


2005-12-10

_ [etc] 証明書

www.webappsec.jpの証明書を更新してみた。
RapidSSL.comより購入。有効期限が2年間の証明書を更新で$60とお手軽。


2005-12-21

_ [doc] 緊急点検!Webアプリ・セキュリティ(後編)

なにやら不安なことが書いてある。

さらに,データをチェックする場所も,適切な位置に変更した。従来は,SQLインジェクションやXSSへの対策として,ユーザーからの入力データを受け取ったときにチェックしていたが,それでは不適切だった。改修後は, SQL インジェクションについては「SQL文をデータベースに渡す直前」,XSSについては「応答ページを生成する直前」に,それぞれチェックするようにした。

入力値のチェックは、「ユーザーからの入力データを受け取ったとき」で正解だったんじゃないですかね?使う直前でチェックにしてしまうと、

  • Cookie発行する直前で入力値チェック
  • メール送信する直前で入力値チェック
  • 文字列連結する直前で入力値チェック
  • 足し算に使う直前で入力値チェック

とか、同じ入力値に対して何度も何度もチェックしなきゃいけなくなるんですが、私なら漏れなくチェックできる自信ないです。
せっかくチェック機能の一元化したなら、入力値を受け取った直後にチェックを行ったほうが漏れが少なくなるでしょう。

「仮に,内部犯がアプリケーションを介さずにデータベースのデータに直接SQL文や<script>タグを埋め込んだとしても無害化できる」(担当した技術者)

単に、ユーザ(ブラウザ)からの入力だけしか入力として認識してなくて、データベースからの入力に対する入力値チェックが抜けてただけですね。データベースを直接操作される危険を想定するなら、データベースに格納されたデータ全てを汚染されたデータとして扱い、ユーザからの入力と同様、データベースから読み込んだ直後に入力値チェックするだけです。

タイトルにあるように多層防御ってことで、チェックする箇所を「追加」ならよかったのに、「変更」したために攻撃が成功するパターンを増やしてしまっていないか心配です。

本日のツッコミ(全2件) [ツッコミを入れる]

_ たりき [他にも、 >レスポンス時に「<」「>」「&」「"」を「<」「>」…に置き換えるなどのサニタイジング 逆だ逆、てな部分..]

_ えっちふじた [ううっ、、、自分の認識もまちがってるかもしれない..orz まちがってたらしてきしてください、、 (自分の認識を書い..]


2005-12-22

_ [webapp]Wiki小話/Vol.4

お話させて頂きました。使った資料は若干加筆修正して公開する予定ですので、少々お待ちください。

追記: 資料公開しました


無料アクセス解析