Security
- 考え方
Ping of Death(PoD) 攻撃
悪意のある Ping パケットを大量に送りつけることで、サーバを停止させる攻撃手法
攻撃に晒された場合、緊急対応として一旦全種類の Ping に応答しないようにする
# sysctl -w net.ipv4.icmp_echo_ignore_all=1
ソフトウェア製品等の脆弱性を識別/評価する仕組み
Other
- クライアント証明書
- サーバーが通信している相手が意図したクライアントであることを証明
- 問題点
- ユーザーにクライアント証明書をインストールしてもらう必要がある
- コスト増
- クライアントの実在を証明するだけで、ユーザーの実在を証明するユーザ証明書ではない
- 証明書失効リスト(CRL)
出力値のエスケープの不備による脆弱性
設定や設計の不備による脆弱性
強制ブラウジング
- 公開することを意図していないファイルが閲覧可能な状態になっていること
- ファイルの連番とかで推測される
- 認証が必要なサイトであるけど直 URL を知っていれば認証を経ずに閲覧可能
- 公開することを意図していないファイルが閲覧可能な状態になっていること
- 不適切なエラーメッセージ処理
- Web アプリケーションのエラーがブラウザ上で表示されると攻撃者にとっては情報になり得る
- PHP, DB のエラー
- オープンリダイレクト
- 指定した任意の URL にリダイレクトする機能
ディレクトリリスティング
- URL でディレクトリを指定すると、ディレクトリに含まれるファイル一覧を表示する Web サーバー(Apache, IIS 等) の機能
- セッションアドプション(Session Adoption)
- PHP や ASP.NET などに存在する未知のセッション ID を受け入れる機能
クリックジャッキング
- 透明なボタンやリンクを罠となる Web ページに埋め込み、そのリンクをユーザにクリックさせることで意図しないコンテンツにアクセスさせる攻撃
- UI Redressing
- X-Frame-Options
WAF
- 改行コードインジェクション
- 動的にヘッダを生成する Web ページに対し、改行コードをヘッダ内に挿入することで任意の文字列を生成させて不正な動作を引き起こされる攻撃方法
- LDAP コードインジェクション
- 検索フィルタ文字列に、LDAP クエリとして意味がある文字(メタ文字) を混ぜ込む攻撃方法
- ファイルインクルード
- アプリケーションが使用しているスクリプト言語の include 系関数で、アプリケーションが意図していないファイルを読み込ませる攻撃方法
脆弱性
SSL/TLS のバージョンロールバック攻撃
- 通信プロトコルの古いバージョンを意図的に使用させることにより、当該バージョンに存在する脆弱性を突いて暗号化通信の解読等を試みる手法
- 例
- OpenSSL 0.9.8 以前のバージョンには、サーバのオプションとして、クライアントの不具合を回避する SSL_OP_ALL を指定した場合、バージョンのロールバック攻撃により、SSL 2.0 プロトコルによる通信を受け入れてしまうという問題
Logjam 攻撃
- TLS 1.2 を使用した通信において,DH 鍵交換アルゴリズムの脆弱性を突く攻撃
- 交換されたセッション鍵を窃取して暗号化通信の内容を解読できる
- DH 鍵交換法の脆弱性を突いて、TLS 接続を 512 ビットの輸出グレード暗号にダウングレードさせ、通信内容の解読を試みる
Dropping the change cipher spec message
- SSL のハンドシェイクプロトコルの終了前で、使用暗号化アルゴリズムの変更メッセージを、通信経路に介在する攻撃者が削除することによって、通信者が暗号化無しでセッションを開始し、攻撃者がセッションの全通信を盗聴したり改ざんしたりする
脆弱性診断ツール
2014
Heartbleed
- OpenSSL のバージョン 1.0.1 で実装された SSL の死活監視機能である「Heartbeat」に深刻な脆弱性が存在
- 悪用されると SSL 通信を行っているサーバのメモリに格納されている情報が第三者によって閲覧され、暗号化通信の内容は SSL 証明書の秘密鍵などの機密情報が漏洩する可能性がある
ShellShock
- GNU bash の脆弱性
POODLE(Padding Oracle On Downgraded Legacy Encryption)
- SSL 3.0 において、中間者攻撃によって暗号化された通信が解読されてしまう脆弱性が存在することが判明
2015
GHOST
- glibc の脆弱性
FREAK(Factoring attack on RSA-EXPORT Keys)
- SSL/TLS の脆弱性
- 輸出グレードの弱い暗号強度の RSA 暗号をサポートしていたことに起因する脆弱性が存在
- 悪用されると、中間者攻撃により、暗号化された通信が解読されてしまう可能性がある
- VENOM
- QEMU の脆弱性
- Logjam
- TLS の脆弱性
Others
- SIEM(Security Information and Event Management)
- 何らかのセキュリティインシデントが発生した場合、それを統合して把握するというアプローチ
- ログの収集、ネットワークの監視結果などの情報をリアルタイムに収集して確認できるようにしておく
- デジタルフォレンジック
- 犯罪や法的紛争が生じた際に、ハードディスク上のデータやログ、ネットワーク通信記録を収集・分析し、法的解決を図ること
- ディジタルフォレンジックスにて証拠を収集する際には、証拠の滅失を避けるために原則として
揮発性の高い情報から順に処理
- IPA によるRFC3227の日本語訳「証拠収集とアーカイビングのためのガイドライン」では、典型的なシステムにおける揮発性の例が挙げられている
FISMA(連邦情報セキュリティ管理法)
- 連邦政府機関や連邦政府機関から業務委託を受けている民間の外部委託先が、情報セキュリティを強化することが義務付けられている
- さらに、最低でも年に一度情報セキュリティの有効性についてのレビューを行い、OMB(Office of Management and Budget:米国合衆国行政管理予算局) に報告書を提出することも義務付けられている
- 各省庁では昨今耳にするようになった CSO(Chief Security Officer:情報セキュリティ責任者) の設置なども求められている
ツール
- セキュリティ監査基盤