0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Webアプリのセキュリティー(DDoS, CSRF, XSS, SQLインジェクション)

Posted at

セキュリティーについて

最近webアプリを作成した過程で、セキュリティーの重要性に気づいたので学んだことのアウトプットとして書いてみようと思います。

対策するべきセキュリティー

  • DoS/DDoS攻撃
  • CSRF(クロスサイトリクエストフォージェリ)
  • XSS(クロスサイトスクリプティング)
  • SQLインジェクション

Dos/DDoS攻撃

ウェブサイトなどに対して大量のアクセスやデータを送りサーバーを停止させるサイバー攻撃

DoS(Denial of Servece Attack)
1つのIPから大量のアクセスを行う。

DDoS(Distributed Denial of Service Attack)
複数のIPから大量のアクセスを行うことである。

対策

  • 特定のIPアドレスからのアクセスを遮断する
  • CDNを使用する。使用することでサーバーへの負担を分散させる。
  • ツールを使用する。

CSRF(クロスサイトリクエストフォージェリ)

攻撃者が正規のユーザーのアカウントを不正に使用して、Webアプリケーション上で操作を行う攻撃である。攻撃者の悪意あるページを訪れることで、イベントが発生し正規ユーザーのCookie情報などが盗まれてしまう。これにより正規ユーザーが望まない操作が行われてしまう。(カード決済、コメント投稿...etc)

対策

  • フォームタグを使用する際は、必ずトークンを発行するようにコードを書く
  • ツールを使用する

XSS(クロスサイトスクリプティング)

攻撃者が仕込んだJavaScriptがユーザーが訪れるたびにイベントが起動して、ユーザー情報などが盗まれてしまう。

対策

  • htmlspecialchars関数を使用して、特殊文字をエスケープ処理する必要がある。
  • ツールを使用する。

SQLインジェクション

脆弱性のあるフォームにSQLを発行する文字列を投稿することで、情報を取得したり、データベース内のテーブルを操作されてしまう。

対策

  • PDOパラメーターバインディングを使用して対策する。
  • ツールを使用する。

ツールについて

  • IDS/IPS
  • WAF
    などを使用することで、脆弱性を狙った攻撃を対策することができる。

終わりに

セキュリティーはかなり奥が深いなと感じました。まだまだ書きれていない部分があるので、今後も書いていこうと思います。ここまで見てくださりありがとうございます。

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?