[メモ]体系的に学ぶ 安全なWebアプリケーションの作り方
体系的に学ぶ 安全なWebアプリケーションの作り方を読んだメモ
XSS
- 悪意のあるサイトにリダイレクトして重要情報を入力させる
- スクリプトを埋め込んで重要情報をURLに引き継いで悪意のあるサイトに遷移する
対策
- エスケープする
- JSで文字列を動的に生成するときも注意。JSでエスケープするか、hidden要素などでHTML側でエスケープしておいた要素を使用する
SQLインジェクション
対策
- プレースホルダーを使用する
- Like検索ではワイルドカードをエスケープする
- 攻撃者に情報を与えないためにエラーメッセージを抑制する
- 攻撃の被害を抑えるためにデータベースの権限を最低限にする
CSRF
- 悪意のあるサイトにアクセス → ifameから正規のサイトへPOST → ログイン状態の場合セッションIDがつくのでPOSTできてしまう
- 確認画面があるようなサイトでもifameの数を増やし、時差でアクセスすることで攻撃可能
- 内部ネットワークでもルーターなどを管理者情報を持った端末が罠サイトを踏むとパスワードなど変更される恐れがある
対策
- 購入、変更など重要ページでは再度パスワードを入力してもらう -実行直前のページに攻撃者が予測できないトークを入れて実行画面で確かめる
- リファラーのチェック(自サイトからになっているか)
セッションハイジャック
- セッション情報をURLに埋め込んでいるとサイトから別サイトに遷移した時にリファラーで漏洩する
オープンリダイレクタ脆弱性
実装でリダイレクト先のURLを外部から指定できる場合に発生
- 罠サイトにリダイレクトされる
- 配布サイトでマルウェアを配布されるなど
対策
- リダイレクト先のドメインチェックをする
- クッションページを挟む(あなたは...にアクセスしようとしています)
メールヘッダーインジェクション
- webサイトのフォームなどから意図しない相手にメール送付される
- 本文を改ざんされる
対策
- 改行を含まないようにする
- 外部からのパラメーターを含ませない
ファイルダウンロードによるxss
- jsファイルをhtmlと認識させユーザーのブラウザーで実行させる
対策
- content typeを設定するなど
Author And Source
この問題について([メモ]体系的に学ぶ 安全なWebアプリケーションの作り方), 我々は、より多くの情報をここで見つけました https://qiita.com/isotai/items/741b4d169874851c66d9著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .