SlideShare uma empresa Scribd logo
1 de 27
自動検査ツールでは
発見できない脆弱性
2013/6/13 OWASP JAPAN 6th Local Chapter Meeting
Ikeda Masakazu
13年6月14日金曜日
ikepyonについて
仕事は、Webアプリの自動セキュリティ検査ツール売ってます
一度、Webアプリのセキュリティ検査に飽きて会社辞めました
なのに、なぜかまたWebアプリのセキュリティ検査やってますorz
Twitter(@ikepyon)でたまにつぶやいてます。
Webアプリの自動検査ツールを試しに作ったことがあります。動作検証用
なのであんまり使えませんorz
http://webappsec.sakura.ne.jp/modules/wfdownloads/
singlefile.php?cid=2&lid=6
13年6月14日金曜日
自動検査ツールでは
発見できない
バックドアの作り方
13年6月14日金曜日
Agenda
Webアプリ脆弱性検査ツールの仕組み
検出できない脆弱性
13年6月14日金曜日
Webアプリ脆弱性検査ツールの仕組み
13年6月14日金曜日
Webアプリ脆弱性検査ツールの仕組み
商用ツール
Acunetix
AppScan
Burp
WebInspect
Vex
フリーツール
ZAP
Paros
13年6月14日金曜日
Webアプリ脆弱性検査ツールの仕組み
検査ツール ブラウザWebアプリ
リクエスト/レスポンス
を記録
リクエストを送信リクエストを送信
13年6月14日金曜日
Webアプリ脆弱性検査ツールの仕組み
検査ツールWebアプリ
記録したリクエストを基に
テストリクエストを作成
テストリクエストを送信
記録したリクエストのパラメータ・Cookieをテストパターンに変
えて送信
帰ってきたレスポンスを見て脆弱性の有無を判断
判定方法は、基本的に2個
リクエスト記録時のレスポンスと比較
レスポンスで特定の文字列を検索
13年6月14日金曜日
検出できない脆弱性
13年6月14日金曜日
検出できない脆弱性
脆弱性の仕組み上ツールだけでは検出できない脆
弱性
アプリの仕様によって検出できない脆弱性
13年6月14日金曜日
脆弱性の仕組み上ツールだけでは
検出できない脆弱性
クロスサイト・リクエスト・フォージェリ
(CSRF)
メールヘッダインジェクション
ビジネスロジックに起因する脆弱性
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
入力したデータを処理するページが数ページ後にあり、そこに脆弱性があ
る場合
CAPTCHAやワンタイムパスワードを使用しているリクエストの検査
同じ処理が何度も実行できない場合
複数のパラメータを利用して発生する脆弱性
ゲームのように同じリクエストに対して一定のレスポンスを返さない場合
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
入力したデータを処理するページが数ページ後あ
り、そこに脆弱性がある場合
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
入力したデータを処理するページが数ページ後あ
り、そこに脆弱性がある場合
攻撃パターン
を入力
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
入力したデータを処理するページが数ページ後あ
り、そこに脆弱性がある場合
攻撃パターン
を入力
攻撃が成功
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
入力したデータを処理するページが数ページ後あ
り、そこに脆弱性がある場合
ほとんどのツールはテストリクエストを送信し
た時のレスポンスしか確認しない
一部ツールはどのレスポンスを確認するか指定
できるが、どこに脆弱性があると考えられる
か事前に知っておく必要がある
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
CAPTCHAやワンタイムパスワードを使用している
リクエストの検査
2要素認証のあるアプリ
会員登録
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
CAPTCHAやワンタイムパスワードを使用している
リクエストの検査
検査には記録したときのパラメータの値か、レ
スポンスに含まれる文字列を値に使用する
画像やメールなどから送信するパラメータの値
を取得することは出来ない
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
同じ処理が何度も実行できない場合
パスワードの定期的変更処理
抽選を行うアプリ
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
同じ処理が何度も実行できない場合
記録したリクエストを再送するので、記録時に
必ず処理を行う
1度送信されたテストリクエストで処理をして
しまうと、以降テストリクエストを送信して
も、実際には処理が行われないため脆弱性が
あっても検出できない
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
複数のパラメータを利用して発生する脆弱性
不完全なShiftーJISを使用したXSS
パスワード変更処理における新パスワードと確
認用パスワードにある脆弱性
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
複数のパラメータを利用して発生する脆弱性
検査ツールでは、 一つのパラメータのみをテ
ストデータに置き換える
同時にパラメータを変更する必要がある脆弱性
は検出できない
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
同じリクエストを送信した場合、一定のレスポン
スを返さない場合
ブラウザゲーム
13年6月14日金曜日
アプリの仕様によって
検出できない脆弱性
同じリクエストを送信した場合、一定のレスポン
スを返さない場合
記録したときのレスポンスとテストレスポンス
を比較して脆弱性を検出するので、レスポンス
がリクエスト毎に変わるとFalse
Positive、False Negativeが多い
13年6月14日金曜日
まとめ
ツールでは脆弱性を検出できない場合があるので
ツールによる脆弱性検査を過信してはいけない
必要に応じて手動で検査がする必要がある
ツールによる検査の省力化は十分有用なのでツー
ルと手動のよいところを組み合わせるのがよい
13年6月14日金曜日
まとめ
脆弱性検査ツールのご利用は計画的に
13年6月14日金曜日
ご静聴
ありがとうございました
13年6月14日金曜日

Mais conteúdo relacionado

Mais procurados (6)

もしAppiumとディープラーニングを組み合わせたら
もしAppiumとディープラーニングを組み合わせたらもしAppiumとディープラーニングを組み合わせたら
もしAppiumとディープラーニングを組み合わせたら
 
最近のSpringFramework2013 #jjug #jsug #SpringFramework
最近のSpringFramework2013 #jjug #jsug #SpringFramework最近のSpringFramework2013 #jjug #jsug #SpringFramework
最近のSpringFramework2013 #jjug #jsug #SpringFramework
 
Foundation for Appsでザクザク作るモックアップ
Foundation for Appsでザクザク作るモックアップFoundation for Appsでザクザク作るモックアップ
Foundation for Appsでザクザク作るモックアップ
 
地域リポーター養成講座 第3回
地域リポーター養成講座 第3回地域リポーター養成講座 第3回
地域リポーター養成講座 第3回
 
女性エンジニアの1週間
女性エンジニアの1週間女性エンジニアの1週間
女性エンジニアの1週間
 
ディープラーニングとAppiumでテストを自動化
ディープラーニングとAppiumでテストを自動化ディープラーニングとAppiumでテストを自動化
ディープラーニングとAppiumでテストを自動化
 

Semelhante a Owasp japan6th

Semelhante a Owasp japan6th (10)

App inventor for bussiness
App inventor for bussinessApp inventor for bussiness
App inventor for bussiness
 
Appiumのテスト結果レポートをsahaginで作ってみる
Appiumのテスト結果レポートをsahaginで作ってみるAppiumのテスト結果レポートをsahaginで作ってみる
Appiumのテスト結果レポートをsahaginで作ってみる
 
ディープラーニングとAppiumでモバイルテスト自動化
ディープラーニングとAppiumでモバイルテスト自動化ディープラーニングとAppiumでモバイルテスト自動化
ディープラーニングとAppiumでモバイルテスト自動化
 
第3回Ques ここからはじめる!Androidアプリのテスト自動化
第3回Ques ここからはじめる!Androidアプリのテスト自動化第3回Ques ここからはじめる!Androidアプリのテスト自動化
第3回Ques ここからはじめる!Androidアプリのテスト自動化
 
Archer
ArcherArcher
Archer
 
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テストDevice Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
 
Webアプリケーション脆弱性診断について
Webアプリケーション脆弱性診断についてWebアプリケーション脆弱性診断について
Webアプリケーション脆弱性診断について
 
ソースで学ぶ脆弱性診断 - SmartTechGeeks #2
ソースで学ぶ脆弱性診断 - SmartTechGeeks #2ソースで学ぶ脆弱性診断 - SmartTechGeeks #2
ソースで学ぶ脆弱性診断 - SmartTechGeeks #2
 
Android meets RxJava - 渋谷Java#6
Android meets RxJava - 渋谷Java#6Android meets RxJava - 渋谷Java#6
Android meets RxJava - 渋谷Java#6
 
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiAワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
 

Owasp japan6th