@kyanny's blog

My life. Opinions are my own.

4. Webアプリケーションの機能別に見るセキュリティバグ (4.1 Webアプリケーションの機能と脆弱性の対応)

4章は長いので節ごとにわけて書かないと破綻しそう。

  • 脆弱性の大分類
    • 出力時(インジェクション系)
    • 処理時(認証認可、 CSRF、ディレクトリトラバーサル)
  • インジェクション系の脆弱性は共通の原理に基づく
  • SQL インジェクション脆弱性が発生する原因は、データを想定しているところにシングルクォートがきてデータ部分が終了され、 SQL の構造が変化する、という仕組み
  • データの中に引用符、デリミタなどの「データの終端」をあらわす文字を混入させて、その後の文字列の構造を変化させる
    • 本来想定していた処理が意図しないデータ終端のせいで終了され、想定外の処理を注入されるのがインジェクション系脆弱性の原理
    • キーとなるのはデータの終端、「このデータの終端は何か?」をおさえるのが脆弱性対策を身につけるツボなのか?