ホワイトハッカーから学ぶ情報セキュリティ対策 ~ハッカーの心理と行動を知る~|研修コースに参加してみた
今回参加したコースは ホワイトハッカーから学ぶ情報セキュリティ対策 ~ハッカーの心理と行動を知る~ です。
ホワイトハッカーとは、ブラックハッカーが犯罪行為で使う技術を、対象を守るために使う技術者のことです。 つまりクラッキングできる実力をセキュリティ側に活かす IT エンジニアだということですね。
ホワイトハッカーは日本ではまだまだ少ないのが現状ですが、このコースでは、その第一人者である 阿部 ひろき さんが登壇されました。 攻撃側が優位に立つセキュリティの世界で、ハッカーが何を考え、何をするのかがわかると、それに沿った対策ができます。
… と、サラッと書きましたが、これまで多くのセキュリティのコースに参加した私がズバッとわかりやすく言います。 「ハッカー視点はハッカーでないとわからない、それがわかるコースです」と。 ハッカー視点でこれまで学んだことを見つめ直すと、新たな発見が山盛りでした。
では、どんなコースだったのか、レポートします!
もくじ
コース情報
想定している受講者 | セキュリティの基礎知識 |
---|---|
受講目標 | 攻撃の本質を知ることによって、効率的なセキュリティ対策を考えることができるようになる |
講師紹介
このコースで登壇されたのは、参加してみたレポートでは初登場となる 阿部 ひろき さんです。
合同会社ビーエルケー・スミス代表執行社員 CEO / 一般社団法人 IT キャリア推進協会 技術顧問 / 株式会社デジタルハーツ セキュリティラボ技術顧問
現在は北海道在住。 地元では剣道・居合道の指導も行う。
20 年以上にわたる情報セキュリティ業界の経験と現在も第一線の現場に立ち続けるノウハウにより技術支援と教育を行う。
主な著書
ホワイトハッカー入門(インプレス刊)
Linux サーバセキュリティの対策とポイント (ソフトバンククリエイティブ刊)
入門講座 UNIX (ソフトバンククリエイティブ刊)
Linux サーバセキュリティの対策とポイント (ソフトバンククリエイティブ刊)
阿部さんが「認定ホワイトハッカー」を名乗られるのには理由があり、世界 145 ヶ国 22 万人が認定されている CEH (Certified Ethical Hacker : Ethical は “倫理的な” という意味) という、 EC-Counsil (International Council of Electronic Commerce Consultants) から認定された資格を取得されているからでした。
気になって CEH をチラ見しましたが、その内容の広さにたまげ、お値段と英語による実技試験という記述を見て、数分のうちにそっ閉じしました … 。
(阿部さんに確認すると、 CEH には日本語による講習と試験も用意されていました! 日本語の講習を希望される場合はかなりの確率で阿部さんが講師になられるとのことでした(笑)。 さすがです)
情報セキュリティ 3要素 と各種攻撃
まずはセキュリティの基礎をサッと流すところからスタートです。
- 時代が変化: システムを利用する側にも注意が必要になった
- 提供側がすべて対策を行うものではない
- そもそもセキュリティとは
- 情報資産が盗難改ざん破壊の可能性が低い もしくは 許容範囲内である状態を維持する
- 情報セキュリティの 3 要素 (CIA)
- 機密性 Confidentiality : きちんと箱に鍵がかかること
- 完全性 Integrity : きちんと鍵がかかること
- 可用性 Availability : きちんと鍵で開けられること
- バランスよく 3 つを満たすこと
では、セキュリティの対象となるものは何でしょうか?
- セキュリティは全要素に渡る
- それぞれの要素ごとにセキュリティ対策が必要
- 多層防御 DID Defense In Depth と呼ばれる
- ゼロトラストセキュリティでも重要
- 多層防御 DID Defense In Depth と呼ばれる
- 対応する対象
- 脆弱性: バグ
- とはいえ、セキュリティアップデートにスグ対応するのはダメ
- 攻撃の可否で判断すること -> 攻撃があるならそれが “脅威”
- さらに被害の想定があるなら “リスク”
- 脆弱性: バグ
- セキュリティとはリスクに対応すること
改めて、本質を解説いただくと、脅威とリスクの違いなど、セキュリティで何をすべきなのかわかります。
攻撃内容
では、どんな攻撃があるのか、これもサラッとおさらいします。
- 攻撃は “脆弱性” を狙ってくる
- バグだけでなく設定ミスも脆弱性
- 攻撃者の目的はサーバ内の OS / ファイル / DB をアタックする
- 大きくサーバサイド攻撃とクライアント攻撃にわかれる
- サーバサイド攻撃
- サービス不能攻撃などがある
- ネットワーク帯域やシステムリソースが動かないほどの負荷を与える
- DDoS
- Bot を沢山仕込んでおく
- C & C (Command and Control) サーバから Bot を操作する
- DRDoS の場合、直接ターゲットではなく中間標的に攻撃する
- レスポンスを必要とするリクエストを送る ex. ping
- ヘッダを偽装し、レスポンスの宛先をターゲットに
- クライアント攻撃
- なりすまし、フィッシングなど Web サービス、 Web アプリケーションを経由して行う
- サーバサイド攻撃
- 他に増えているのが、ソーシャルエンジニアリング攻撃
- 攻撃者がターゲットを限定しているのであれば「人」を狙う
- 人はネットワーク上の最大の弱点
- 攻撃者がターゲットを限定しているのであれば「人」を狙う
こうやってしっかり整理されると、攻撃の体系化 = 対策の体系化 が出来ますね。
攻撃の目的と心理
ここからが本番です。 攻撃者の心理に迫ります。
なぜ、その心理が必要になるのか、それはセキュリティ側が 対処する or 対処しないのか その判断基準になるからとのことでした。
- 普通は知識と技術があっても攻撃しない。なぜなら倫理観がある
- ただし倫理観を上回る “動機” があれば攻撃を行う
- 攻撃 = 知識と技術 + 脆弱性 + 動機 と言える
- 動機が重要になる
- 主な動機
- 宗教
- 恨み
- お金
- 享楽
- 主な動機
- 動機により攻撃特定も変わる傾向にある
- 動機が強ければ、特定性が高くなる
- 動機が重要になる
なるほど! 動機によって攻撃が変わる、というのは納得です。 恨みで行う犯罪行為と、お金が得たくて行う犯罪行為はまた異なるのと同じですね。
攻撃特定性とハッキングフェーズ
では、攻撃特定性が高い = 攻撃者が対象に執着している 状態で、どのように攻撃者は攻撃を行うのか、ハッキングフェーズをもとに解説いただきました。
- ハッキングフェーズ
- 偵察: ターゲットの公開情報を収集する → OSINT (Open Source Intelligence) を行う
- スキャニング: 直接サーバにタッチする
- 列挙: 収集した情報を精査し攻撃可能なところを見つける
- アクセス権の取得
- 管理者権限まで昇格
- バックドアやマルウェアを仕込み隠蔽する (隠蔽に権限がいる)
- 攻撃特定性が高いと、攻撃の成功率が高いことを重視する
- インサイダーであることが多い
- 攻撃特定性が低いと、ターゲットに執着しない
- ハッキングフェーズに沿わない攻撃
- DoS 攻撃など
以前のレポートでも引用した スタックスネット が、このハッキングフェーズのお手本のような攻撃だったことに気づきました。 攻撃特定性が高いと、こういう凶悪なワームも生み出すのですね。
これまでに書かれた最も洗練されたソフトウェア/コードは何ですか?に対するフリーデンバーグ桃紅 (Momoko Friedenberg)さんの回答 – Quora
また OSS を使うことが当たり前の時代、 OSINT で引っかからぬよう OSS のレスポンスを消すのは一苦労です。 Google などのサービスでは一切、利用している OSS が検知されないようになっているのですが、どのようにやっているのでしょう … 。
スプーフィング
先程のハッキングフェーズの中で、攻撃者がよく行う活動として挙げられたのが、スプーフィングです。
- 攻撃者が行う偽装工作のこと
- IP アドレス / MAC アドレスなどを偽装する
- IP スプーフィング
- 送信元の IP アドレスを変える or ログファイルを変える
- ただし送信元の IP アドレスを変えるとレスポンスを受け取れない
- いろいろなリクエストに混ぎれこませて送信する
- 他の PC を踏み台にする
- スキャニングや列挙をしているときに使う → セキュリティ側に引っかかる可能性がある
- DoS 攻撃でよく使われる = DoS 攻撃を受けたら送信元を調べても無駄なのでやらないこと
- 送信元の IP アドレスを変える or ログファイルを変える
- MAC アドレススプーフィング
- 送信元の MAC アドレスを書き換える
ミステリーで出てくる犯人の行動そのもので、当たり前といえば当たり前ですが、攻撃者も捕まりたくないという心理が働きます。 この痕跡をしっかり抑えられると予防に繋がりますね。
このほかソーシャルエンジニアリングについても触れられ、 “人はネットワーク上の最大の弱点” と挙げられた理由として、どんなにセキュリティのリテラシがある人でも、疲れや不安などで状態が下ることを挙げられました。 なるほど!(なるほど以外の語彙を持ちたい)
IPS (侵入防止システム)の効率化
攻撃者の心理と活動がわかったところで、今度はセキュリティ側の対策です。
そこで要になるのが IPS (Intrusion Prevention System:侵入防止システム) です。
- 似たものに IDS (Intrusion Detection System) があるが、侵入検知まで
- IPS は検知と防止まで
- IPS の攻撃検出方法
- パターンマッチングと異常検出 (ヘッダやパケットなど) がある
- パターンマッチングはパターンが無いと対応できない
- 異常検出は新種や亜種にも対応ができるが、誤検知が多くなることもある
- パターンマッチングと異常検出 (ヘッダやパケットなど) がある
- IPS の課題
- 導入コストより運用コストがとても重要になる(忘れがち)
- 運用コスト = 人件費
- 人件費を下げるために、アラートの解析能力のアップ、インシデント対応手順などの確立が必要
- 導入コストより運用コストがとても重要になる(忘れがち)
この運用コストでキーになるのが誤検知率です。
誤検知率
- IPS が発するアラートは 2 つ
- True アラート
- アラートが真であり、アラートしなかったものは偽
- False アラート
- False Positive (偽陽性): アラートが上がったけど間違いだった(誤検知)
- False Negative (偽陰性): アラートが鳴らなかったことが間違いだった (見落とし)
- True アラート
- 見落としが一番ダメ
- 誤検知率とは False Positive (偽陽性)の割合
阿部さんによると、見落とさない範囲で誤検知率をチューニングすることに妙があるとのこと。 これはどういうことでしょうか?
- 誤検知率を下げると、見落としの可能性が高まる
- トレードオフの関係にある
- チューニングする必要がある (誤検知率を 80 % → 50 % にするだけで運用コストは半分に下がる)
- 誤検知率 80 % だと、 10 件アラートが出たら、 8 件が誤検知、 2 件が本物
- 対応コストは、 10 件の確認と 2 件の対応 = 10 + 2 = 12
- 誤検知率 50 % だと、 2 件が本物なら、誤検知が 2 件、合計 4 件のアラート
- 対応コストは、 4 件の確認と 2 件の対応 = 4 + 2 = 6
- 誤検知率 80 % だと、 10 件アラートが出たら、 8 件が誤検知、 2 件が本物
- どんな腕のいい人でも 50 % ~ 60 % ぐらいが限界
運用コストを下げるには
誤検知率のチューニングによるコストダウンのほかに、どうすると運用コストが下がるのでしょうか。
- 誤検知率を下げるためにアラート解析能力を上げる
- 検知した攻撃の判断スピードを上げる
- どの脆弱性を狙っているのか、対応が必要なのか、どのハッキングフェーズなのか
- 検知した攻撃の判断スピードを上げる
- インシデント対応手順を確立すること
- インシデントが起こっても、不必要な対応はしない
- もちろん深刻なインシデントが起こったときにも有効
- 時間との勝負なので、スピーディな初動対応が特に重要
- 事前にフローを作っておこう
最近ではインシデント対応手順をまとめておくだけでなく、実際に擬似的なセキュリティインシデントを起こして訓練する企業も出てきました。 この記事を見ると、ちょっと背筋が寒くなります。
これまでのセキュリティ対策をまとめます。
- ハッキングフェーズが上流であればあるほど被害が少ない
- 管理者権限を取得されてしまうと被害が拡大し甚大なダメージになる
- それまでのハッキングフェーズで対策しよう
監視
セキュリティ側の対策のまとめとして、ハッキングフェーズの上流で攻撃を検知することが挙げられましたが、そこで有効になるのが監視です。
なぜなら、実際の犯罪者同様に、監視はとっても攻撃者が嫌がるからです(証拠を残したくない / 特定されたくない などの心理が働く)。
その監視は何をするものなのか、解説いただきました
- 監視する対象は 3 つ
- IPS アラート
- パケット
- パケットキャプチャしておく
- ただしリアルタイム監視は困難なので、分析は別に行う
- パケットの内容に精通しておく
- 例えば、 SynScan されているときのパケット、 ARP スプーフィング攻撃時のパケットなど特徴をつかんでおく
- パケットを分析すると攻撃者が行った行動を監視できるようになる
- ログ
- GET だとインジェクションがわかりやすい
- ただし POST ではわからないのでパケットを見る必要がある
- システムログ (syslog) には認証エラーが残るので、パスワードクラッキングされているのかわかりやすい
- 監視していることを逆手に、攻撃者がカモフラージュや撹乱をすることもある
- あえて IPS アラートを出させるようにして撹乱させる場合がある
- 本番の攻撃のカモフラージュとして使う
- 見破ることもできる
- ex. IP アドレスがあっても arp キャッシュに MAC アドレスが残ってない
- キャッシュなので時間が経つと消える = スピード勝負
- あえて IPS アラートを出させるようにして撹乱させる場合がある
- あとから分析するための材料をちゃんと残そう
研修では実際に疑わしいパケットの特徴や、ログに残る SQL インジェクションの跡、ログに残る IP 偽装などを具体的に紹介いただきました。 これは生々しい! ぜひコースに参加してご覧ください !!
同時に攻撃者の行動を見抜くのは、かなりムズいことがわかりました。 世にいう “セキュリティ人材が不足している” というのはこういうことなのか、と痛感です。
最後に Web アプリケーションと WAF についても解説いただき、
- そもそも HTTP プロトコル(原則リクエスト ― レスポンスしか出来ない)で現在の Web アプリケーションを実行するのが無理筋
- プロトコルでは対処できないので、アプリケーション側で対応しないといけなくなった = 開発スキルに依存してしまっている
- 認証クラッキングではパスワードリマインダーが狙われる
- 有効なアカウントの特定は登録画面で行う
- サニタイジングには限界 = WAF の限界(リスク除去にはならない軽減だけ)
などなど、様々に警鐘を鳴らしていただき、その対策を解説されて、このコースは修了しました。
まとめ
ホワイトハッカーから攻撃者の心理や行動パターンと、そこに必要な対策をザッと学びました。
ただの役得ですが、過去に私は様々なセキュリティに関連するコースに参加しましたので、ある程度は知っているつもりでした。 しかし数少ないホワイトハッカーの阿部さんが解説することは、今まで知っていたことがなぜ必要なのか、ということまで踏み込まれていて、納得感がありました。
「ハッカーである。ただし倫理的である」という攻撃者にもなれる実力をお持ちだからですね。
セキュリティはもう学んでいる、仕事でもうやっているという方でも、なかなか得られないハッカー視点から知識や業務を確認・見直しができるので、オススメです!
label SEカレッジを詳しく知りたいという方はこちらから !!
IT専門の定額制研修 月額 28,000 円 ~/ 1社 で IT研修 制度を導入できます。
年間 670 講座をほぼ毎日開催中!!
SEプラスにしかないコンテンツや、研修サービスの運営情報を発信しています。