セキュリティ/OWASPZAP
提供: 初心者エンジニアの簡易メモ
目次
OWASP ZAPとは
脆弱性診断ツールでParosを元にしている
公式:https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
OWASP ZAPのダウンロード
https://github.com/zaproxy/zaproxy/wiki/Downloads
注意
自サイト以外には絶対に脆弱性診断しないように 仮に、診断をした場合は、攻撃とみなされ、損害賠償をされる恐れもあります。
プロテクトをする
- 誤って攻撃するおそれがあるので、最初の段階で
- 左上のプロテクトボタンを押しておく
ネットワークポート変更
preference/オプション/LocalProxiesでポートを変更 8089(適当に)
ブラウザ側のポートの変更
firefox/環境/ネットワークプロキシ 8089(適当に)
対象ページの登録
- ポート変更したブラウザでアクセスすると
- owaspクライアントの左側のサイトに登録される
脆弱性診断準備
- サイトを右クリックし、NewContextを選択し、サイトをコンテキストに登録する
- 登録したサイトのアイコンが赤くなるのを確認する
脆弱性診断
- 間違い防止のためサイトに対象サイト以外があるときは削除しておく
- 対象サイトを右クリックし、攻撃/動的スキャンを選択
レポート生成
レポート/レポート生成でhtml出力される
参考
https://qiita.com/sangi/items/ba7e3d39237045c9be36
3大警告
X-Frame-OptionsヘッダーがHTTPレスポンス
nginxの場合
add_header X-Frame-Options SAMEORIGIN;
apacheの場合
Header always append X-Frame-Options SAMEORIGIN
phpの場合
header('X-FRAME-OPTIONS: SAMEORIGIN');
- DENY:フレーム内に表示させない
- SAMEORIGIN:フレームと同じドメインのページでは許可する
HTTPレスポンスヘッダ 'X-XSS-Protection' が無効
nginxの場合
add_header X-XSS-Protection "1; mode=block";
Apacheの場合
Header set X-XSS-Protection "1; mode=block"
phpの場合
header("X-XSS-Protection: 1; mode=block");
X-Content-Type-Optionsヘッダの設定ミス
nginxの場合
add_header X-Content-Type-Options nosniff;
Apacheの場合
Header set X-Content-Type-Options nosniff
phpの場合
header("X-Content-Type-Options: nosniff");