ディレクトリトラバーサル
アクセスされることを想定していない非公開情報が保存されているディレクトリ(ファイル)に不正な手段でアクセスするサイバー攻撃。
- 正常な動作: ユーザーが指定した画像ファイル名(例:image1.jpg)に基づいて、その画像を表示する機能。
- 攻撃: 攻撃者は、画像ファイル名として「../../etc/passwd」を指定する。
- 結果: システムのパスワードファイルがブラウザに表示されてしまい、パスワード情報が漏洩する。
のような流れらしい。
2020年には大手電機メーカーで、第三者による不正アクセスにより個人情報や機密情報が漏えいした可能性がある事例もある。
クロスサイトスクリプティング
クロスサイトスクリプティング(Cross-Site Scripting、XSS) とは、Webアプリケーションの脆弱性を悪用し、攻撃者がサイトに悪意のあるスクリプトを注入し、それを閲覧した他のユーザーに実行させる攻撃手法。
- 攻撃者が悪意のあるスクリプトを作成: のようなJavaScriptコードを作成。
- Webサイトの入力フォームに入力: 掲示板やコメント欄など、ユーザーが入力できる箇所を狙って、このスクリプトを入力。
- 被害: スクリプトの内容によっては、Cookie情報などの窃取、ページの改ざん、悪意のあるサイトへのリダイレクトなど、様々な被害が発生する。
被害例としては、Cookie窃取、ページの改ざん、悪意のあるサイトへのリダイレクト、ブラウザの機能を乗っ取りなどがある。
SQLインジェクション
SQLインジェクションとは、Webアプリケーションの脆弱性を悪用し、不正なSQL文をデータベースに送り込み、データを盗んだり改ざんしたりする攻撃。
- 入力フォームへの不正な入力: ユーザーが入力フォームに、通常の入力値だけでなく、SQL文の一部となるような文字列を入力。
- SQL文の生成: Webアプリケーションは、ユーザーの入力を含んだSQL文を生成。
- データベースへの不正なSQL実行: 生成されたSQL文には、攻撃者が意図したSQL文が含まれているため、データベースは意図しない処理を実行。
ユーザーがusernameの欄に ' OR '1'='1 と入力した場合、生成されるSQL文
SELECT * FROM users WHERE username = '' OR '1'='1' AND password = 'password1';