はじめに
仕事でセキュリティの話になったので、プライベートな環境にしまいこんで長期間忘れ去られていた文章を公開することにしました。以下、お読みになる際の留意事項です
- 基本的には参考ページをサマっただけの内容です
- 去年の8月に作ったものなので、ちょっと古いかも
- 文言がところどころ自分向けにカスタマイズされてます
- [重要]セキュリティのプロではないので、あまり過信は禁物でお願いします。というか、むしろ教えてくだださいまし
標準型攻撃
# | タイトル | 概要 | トリガー | 攻撃対象 | リスク | 対策(Webサービス開発者として) | 備考 |
---|---|---|---|---|---|---|---|
1 | 標準型攻撃 | 悪しきファイルやURLを添付して、ターゲットの端末にマルウェアをインストールさせる | ファイルのダウンロード、URLのクリック | 特定の組織やユーザー層 | 権限の範囲で何でも | – | – |
2 | 水飲み場型攻撃 | 1. サイトを改ざんする 2. サイトを訪問したユーザの端末にウィルスを仕込む | 改ざんサイトの訪問 | ユーザ | 権限の範囲で何でも | – | – |
3 | ドライブバイダウンロード | 1. サイトを改ざんする 2. サイトを訪問したユーザの端末にウィルスを仕込む | 改ざんサイトの訪問 | ユーザ | 権限の範囲で何でも | – | 水飲み場型攻撃よりターゲットの幅が広いだけ |
4 | クリックジャッキング | 透明なボタンやリンクあるいは別のWebサイトを配置し、クリックを促す | ボタン、リンクの押下 | 1. ユーザ 2. Webサイト | 1. 権限の範囲で何でも 2. 意図しないPOSTの実行 | HTTPレスポンスヘッダーにX-FRAME-OPTIONSを付ける | 基本は他のWebサイトを使うであろう |
ダイレクトアタック
# | タイトル | 概要 | タイプ | 攻撃対象 | リスク | 対策(Webサービス開発者として) | 備考 |
---|---|---|---|---|---|---|---|
1 | DoS攻撃 | サーバに負荷かける | 1. フラッド型: プロトコルを攻略して大量のデータを送り付ける 2. 脆弱性型: サーバやアプリケーションの脆弱性を利用して、不正処理を行わせる | 特定のサーバ | サーバダウン | WAF | F5アタックもこれにあたる。通常はTCP/IPレイヤへの攻撃だが、これはアプリケーションレイヤへの攻撃 |
2 | DDoS攻撃 | DoSの分散型。複数の端末をマルウェアで乗っ取って仕掛ける | 1. 帯域幅攻撃: 大量のパケットを送り込み、ネットワーク帯域幅やネットワーク装置のリソースを消費させる 2. アプリケーションレイヤ攻撃: TCPやHTTPなどのプロトコルで予想される動作を利用して、過剰な負荷をかける | 特定のサーバ | サーバダウン | WAF | – |
3 | DRDoS攻撃 | 攻撃者がWeb上で攻撃対象になりすまし、大量のリクエストを送信する。そのレスポンスで攻撃する | – | 特定のサーバ | サーバダウン | WAF | – |
OS・ソフト・WEBサイトなどの脆弱性を狙った攻撃
# | タイトル | 概要 | トリガー | 攻撃対象 | リスク | 対策(Webサービス開発者として) | 備考 |
---|---|---|---|---|---|---|---|
1 | ゼロデイ攻撃 | 未公表の脆弱性を悪用する攻撃 | – | 色々 | 権限の範囲で何でも | 暫定的な「緩和パッチ」をあてる | – |
2 | SQLインジェクション | ユーザ入力された「悪意のあるSQL文」をそのままデータベース操作に使うこと | ユーザ入力の受付 | Webサイト | DBのデータ持ってかれる | SQLバインドメカニズムの導入 、WAFの導入 | – |
3 | OSコマンド・インジェクション | ユーザ入力された「悪意のあるコマンド」をサーバが実行 | ユーザ入力の受付 | Webサイト | 権限の範囲で何でも | 1. シェル(cmd.exeなど)を起動可能な言語機能の利用を避ける 2. 外部からの命令文をそのままコマンドラインにインジェクションさせない | – |
4 | クロスサイトスクリプティング | XSS脆弱性のあるサービスで、怪しげなサーバにアクセス、jsファイルをダウンロードさせ、実行する | URLアクセス | ユーザ | JSの範囲で色々 | 1. クロスサイトスクリプティングに対するフィルタ機能を持つWAFの導入 2. Webページに出力するデータのエスケープ処理 | – |
5 | クロスサイトリクエストフォージェリ(CSRF) | 本来拒否すべき他サイトからのリクエストを受信し処理する | URLアクセス | Webサーバ | Webサーバで一般にできること | 1. 攻撃者に推測されにくい任意の情報を照合する処理の実装(e.g. Formページ返却時のトークン付与) 2. 画像化されたチェックコードを表示し、ユーザに入力させる「キャプチャ」機能を実装する | |
6 | バッファオーバーフロー | OSやプログラムの入力データ処理に関するバグを突く | 入力データ | Webサーバ | 権限の範囲で何でも | コードの静的検査 | スタック領域型、ヒープ領域型 |
7 | セッションハイジャック | なりすましの1種。クライアントとサーバの正規セッションに割り込んで、セッションを奪い取る | セッションIDの推測、ユーザからの奪取、セッション・フィクセーション | ユーザ/Webサーバ | 権限の範囲で何でも | 1. URLにセッションIDを含めない 2. セッション管理ツールに頼る 3. ワンタイムセッションIDの発行 | – |
パスワード関連のサイバー攻撃
# | タイトル | 概要 | トリガー | 攻撃対象 | リスク | 対策(Webサービス開発者として) | 備考 |
---|---|---|---|---|---|---|---|
1 | ブルートフォースアタック | 暗号解読方法のひとつであり、可能な組み合わせを全て試す方法 | – | サーバ | サーバへの侵入 | 検知ツール導入、強固なパスワードの設定、公開鍵認証方式の導入 | – |
2 | パスワードリスト攻撃 | 攻撃対象とは別のサイトから得たIDとパスワードの一覧(リスト)を用い、攻撃対象のサイトでログインを試行する攻撃方法 | – | ユーザ | 個人情報や金銭の搾取 | 不正アクセスの検知(?) | – |
特殊
# | タイトル | 概要 | トリガー | 攻撃対象 | リスク | 対策(Webサービス開発者として) | 備考 |
---|---|---|---|---|---|---|---|
1 | ランサムウェア | ユーザのデータを人質にとり、データの回復のために身代金を要求 | – | ユーザ | お金や名誉 | – | – |
2 | バックドア | 侵入口を仕込む | – | Webサーバ | 権限の範囲でできること | – | – |
3 | ルートキット攻撃 | ログの改ざんツール、バックドアツール、改ざんシステムコマンドのパッケージインストール | – | Webサーバ | 権限の範囲でできること | – | – |
出典
- https://www.trendmicro.com/ja_jp/security-intelligence/research-reports/threat-solution/csrf.html
- https://qiita.com/mejileben/items/39d897757d5c3a904721
- https://cybersecurity-jp.com/cybersecurity-guide/14651