自作検査ツール - XSS編

ちょっと時間があいてしまいましたが、自作ツールのXSS検査について書きます。 XSSシグネチャ 検査文字列は基本的には2種類のみです。 □タイプA XXXXXX【元の値】'"<9 :&(;\qYYYYYY □タイプB XXXXXX【元の値】'":&(;\qYYYYYY ※ XXXXXX、YYYYYYはランダムな英…

自作検査ツール - ディレクトリトラバーサル編

ディレクトリトラバーサルは、比較的発見が容易な脆弱性です。検査文字列を検討する際にポイントとなるのは、どのファイルを見に行くか、NULL文字を入れるか、くらいではないかと思います。 UNIX系OS用のシグネチャ UNIX用のシグネチャは1パターンしか用意し…

自作検査ツール - OSコマンドインジェクション編

OSコマンドインジェクションを許す欠陥を持つアプリケーションは非常に少ないです。最近のアプリケーションは特に、メールを送信するために直接sendmailコマンドを叩くようなことをしなくなってきており、欠陥を持つアプリは殆ど見られなくなっています。ま…

趣味の検査ツール作成

ここのところ日記も書かずにいましたが、実は自前のWebアプリケーションの検査ツールを作るのに没頭していました。作ったツールの特徴をいくつか挙げると、 手動検査の補助ツールの位置付け ツール自体がWebアプリ(PHPで8KL以下の分量) 主にインジェクショ…

自動化されたSQL Injectionの攻撃対象

WASCのWeb Security MLの少し前の投稿より。Tactical Web Application Security: Mass SQL Injection Attacks Now Targeting PHP Sites自動化されたSQL Injection攻撃が、現在はPHPサイトをターゲットにしているとの内容の記事です。確かに、SQL Injectionに…

IE8のXSS対策

遅ればせながらIE8β2のAnti-XSS機能(の一部)である、XSS FilterとtoStaticHTMLを触ってみました。その感触を少し書いてみます。 XSS Filter 一般論として、XSSの攻撃や対策方法は、パラメータの値がHTMLのどの部分に出力されるかによって異なります。 ① タ…

最近読んだ本

今年の夏の宿題として読んだのがこの本です。The Web Application Hacker's Handbook: Discovering and Exploiting Security Flaws作者: Dafydd Stuttard,Marcus Pinto出版社/メーカー: Wiley発売日: 2007/10/22メディア: ペーパーバック購入: 7人 クリック:…

ITProに記事を書きました

id:ockeghemさんの熱い眼差しを感じつつ書いていたら、全5回分もの分量になってしまいました。こういうのを書くのは今回初めてなので、よい機会になりました。ありがとうございます。“受動的”な検出ツール,Web 2.0系のぜい弱性に強み | 日経 xTECH(クロス…

HTTP用のページにHTTPSでアクセスする

同一ホスト上にHTTPとHTTPSのページが同居しているサイトをしばしばみます。そんなサイトでは、本来はHTTPのページに、HTTPSでもアクセスできるようになっていることがあります。そういう場合、HTMLの中身によってはセキュリティ上の問題が出ますよという話…

javascript://のXSS

こんな場合、普通はjavascriptやdataスキームなどを使ってXSSさせるのでしょう。 <a href="ここにHTMLエンコードされて入る">link</a> しかし、このアプリは「javascript://...」のように、先頭からアルファベット数文字が続き、その直後に「://」が付いている値以外は、エラーではじいてしまいます。この…

SQLのLIKE演算子のエスケープ

例えば、「\%foo」から始まる文字列を検索する場合には、どのようなSQL文を書けばよいのでしょうか。条件は以下の通りです。 DBMSソフトはMySQL ESCAPE節は使わない MySQLでESCAPE節を使わない場合、ワイルドカード文字(「%」や「_」)は「\」でエスケープ…

ページの閲覧履歴

有害なエントリーを書いてしまい申し訳ありませんでした | 松下健次郎のブログこの問題(CSS History Hack)への対策として作られたFirefoxのAddonがあります。https://addons.mozilla.org/ja/firefox/addon/1502https://addons.mozilla.org/ja/firefox/addo…

Scrawlrを試す

http://www.microsoft.com/japan/technet/security/advisory/954462.mspxMSが、SQL Injection対策ツールを3つほど紹介しています。そのうち、Scrawlrを試してみました。 Technical details for Scrawlr * Identify Verbose SQL Injection vulnerabilities in…

フォーマット制御文字

ECMA-262 3rd Edition(和訳)を見ていたら、7章にこんなことが書いてあるのを見つけました。 フォーマット制御文字は ECMAScript プログラムのソーステキストのどの場所に出現してもよい。これらの文字は、字句文法を適用する前にソーステキストから取り除…

WASFのカンファレンス

7/4、7/5にカンファレンスがあります。コンファレンス2008 | Web Application Security Forum - WASForum去年は受付など少しだけお手伝いさせてもらいました。今年も行くつもりです。

パスワードのハッシュ化の話

WASCのMLが、非常に盛り上がってました。The websecurity June 2008 Archive by threadSSL通信でも、ブラウザ上でパスワードをハッシュ化してからサーバに送るべきなんじゃないの? という話です。SSLプロトコル自体や実装上の欠陥がある場合や、弱い暗号が…

preg_replaceによるコード実行

最近少し調べていたのが、PHPの任意コード実行系の脆弱性です。中でも、preg_replace関数(Perl互換の正規表現による置換を行なうための関数)を不適切な方法で使った場合に発生する脆弱性について調べていました。せっかくなので、日記にまとめてみます。 3…

SQLインジェクションによるサイト改竄

今月に入り、SQLインジェクションによるサイト改竄被害が、広範囲で発生しているようです(参考:LACの注意喚起)。この攻撃で使われた手法に関する詳細な情報が、以下のページに載っていました。http://blogs.technet.com/neilcar/archive/2008/03/15/anato…

Burpの更新&文字化けの話

本日やっとBurp Suiteを1.1にバージョンアップしました。なんだかタブが増えてごちゃごちゃした感じです。それはともかく、BurpだとShift_JIS以外のコンテンツが文字化けするのですが(Windows環境では)、今日その解消法に気が付きました。 (EUC-JPのサイ…

試験が終わった

日曜日にとある資格試験を受けました(6時間ぶっつづけで受けるやつです)。事前に練習問題をやったときには、こりゃ楽勝かなと思ったのですが、実際の試験は思っていたより出来なかった感じがあります。1ヶ月以内には結果が判るはず。どうなるか・・・。

セッションを使ったフォーム処理にありがちな問題点

入力画面が複数に渡るフォームで、ユーザが各画面で入力したデータを、hiddenによって引き回すのではなく、セッション変数(セッションIDにヒモ付いてサーバ側に格納される情報)に一時保存するタイプのWebアプリケーションが増えているように思います。フォ…

XSS Challenges (by yamagata21) - Stage #1

XSSの練習問題。http://blogged-on.de/xss/ よりだいぶ問題が増えてます。これはいい!

Mac World Expoのチケットが無料に

今年もプラチナチケット($1,895)が無料で購入できる欠陥があったそうです。Superimposing Nothing Nowhere: Another Free MacWorld Platinum Pass? Yes in 2008!どんな方法で無料で買えたのかと言うと。。。 Apple(もしくはExpo主催者のIDG)は、チケット…

Oracleでのエスケープ

今日の日記では、OracleでのSQLインジェクション対策について書きます。以下のようなコード(PHP)があるとします。

AntiSamyをためす

OWASPがAntiSamyというオープンソースのソフトウェアをリリースしました。Category:OWASP AntiSamy Project - OWASPツールの名前は、有名なMySpaceのJavaScript Wormからきています(多分)。HTML断片から、JavaScript要素を除去するためのソフトで、現行版…

そろそろ勉強をはじめます

来年早々に、某資格試験を受けようと思ってます。もういい加減に勉強はじめます。

SQL Injectionツール

ここのところ、いくつかのSQL Injectionツールについて調べていました。今日はその結果を日記に書いてみようと思います。 はじめに SQL Injectionツールとは SQL Injection脆弱性の発見と、発見した脆弱性を突いてのDB内情報の取得を行なうためのツールです…

CSRFのはなし

ひさびさの更新です。 CSRFTesterというツールを試した Category:OWASP CSRFTester Project - OWASP頑張ってCSRF脆弱性の検査をしてくれるツールだと思って期待して試したのですが、残念ながら違いました。このツールの動作は以下のようなものです。 Proxyツ…

MySQLの文字列連結

MySQLのSQL構文はちょっと特殊でSQL Injectionの確認を行なうときには、ちょっと面倒だったりします。私がイヤなことの一つに、MySQLでは文字列連結の演算子がないことがあります(concat関数による文字列連結は可能。またANSIモードのMySQLでは「||」による…

水槽がひとまず完成

なんだかんだで作業に半日ほど掛かった。前よりもだいぶ雰囲気はよくなった。水草が伸びるともっとよくなるはず。