投稿

2月, 2024の投稿を表示しています

ウェブ・セキュリティ試験

WEBアプリケーションの脆弱性 このブログでも取り上げたSQLインジェクションや、クロスサイトスクリプティングはWEBアプリケーションの代表的な脆弱性で、WEBアプリケーションにはこの他にも様々な脆弱性、およびそれらを利用したサイバー攻撃があります。 このブログで取り上げた脆弱性 [PHP] WEBアプリケーションの脆弱性 - SQLインジェクション脆弱性と対策について [PHP] WEBアプリケーションの脆弱性 - XSS(クロスサイトスクリプティング)脆弱性と対策について そのほかの脆弱性、およびサイバー攻撃 サービス運用妨害(DoS) バッファオーバーフロー ディレクトリトラバーサル コマンドインジェクション ... 開発者はこれら一つ一つをしっかりと理解し、確実に対策していく必要があります。 そのほかの脆弱性についても、今後このブログで取り上げていこうと思います。 ウェブ・セキュリティ試験 WEBアプリケーションの脆弱性と対策を体系的に学び、スキルとして証明できる「ウェブ・セキュリティ試験」という試験が以下の2種がPHP技術者認定機構より配信されています。 PHP技術者認定機構 ウェブ・セキュリティ基礎試験(徳丸基礎試験) ウェブ・セキュリティ実務知識試験(徳丸実務試験) WEBアプリケーションの脆弱性を利用した情報漏洩・攻撃は近年でも発生し続けていて、この試験の注目度、重要性、需要もとても高まってきています。 私もウェブ・セキュリティの知識を身に着け証明するために、3月中に ウェブセキュリティ試験(徳丸試験)を受験します!

[PHP] WEBアプリケーションの脆弱性 - SQLインジェクション脆弱性と対策について

イメージ
WEBアプリケーションの脆弱性の一つである、SQLインジェクションについて、その手口と対策をまとめていきます。 SQLインジェクションは、クロスサイトスクリプティングと並んで、WEBアプリケーションにおける脆弱性の代表格とされており、近年でもこの脆弱性を利用した攻撃による情報漏洩が発生しています。 しかし、アプリケーション、またはインフラストラクチャーで対策することにより確実に防げるので、その仕組みと対策をしっかりと理解しておくことが大切です。 なお、クロスサイトスクリプティングについては、以下の記事にまとめています。 [PHP] WEBアプリケーションの脆弱性 - XSS(クロスサイトスクリプティング)脆弱性と対策について SQLインジェクションとは SQLインジェクションの仕組みはとても単純で、悪意のある攻撃者が脆弱性のあるWEBサイトを見つけ、「サイト上の入力フォーム等から、サイト側の意図しないSQLを送信し、不正なクエリを実行する」というものです。 仕組みは単純ですが、その種類と想定される被害は多岐にわたり、WEBサイトに深刻な被害をもたらします。 SQLインジェクションの概要図 SQLインジェクション脆弱性のコード もっとも簡単な例でSQLインジェクションの脆弱性を再現してみます。 コード例 test.html 以下はユーザー名とパスワードを入力してログインするための画面です。 <html> <head> <title>SQLインジェクション検証</title> </head> <body> <h1>ログイン画面</h1> <form action="/login.php" method="POST"> ユーザー名:<input type="text" name="email"/><br> パスワード:<input type="text" name="password"/><br>