「バッファオーバーフロー攻撃」はシステムの一時的な記憶領域を狙った攻撃だ。その具体的な攻撃手法と対策を紹介する。
前編「知っておきたい『バッファオーバーフロー攻撃』とは? 主要な4種を紹介」は、一時的な記憶領域の「バッファ」を溢れさせて、プログラムの制御やクラッシュ、変更を可能にする「バッファオーバーフロー攻撃」の主要な4種類を解説した。後編は、バッファオーバーフロー攻撃の概要と、その対策方法を紹介する。
バッファオーバーフロー攻撃で最も一般的なのは、関数呼び出しに利用する記憶領域「スタック」を狙った攻撃だ。通常、関数の集合体であるプログラムがユーザー名やパスワードなどの入力をユーザーに要求するまで、スタックは空の状態になっている。入力を受け付けた時点で、プログラムは戻り先のアドレスをスタックに書き込み、ユーザーの入力をその上に格納する。スタック内に格納されたコマンドを実行すると、プログラムが指定した戻り先のアドレスにユーザーの入力を送る。
スタックのサイズは有限だ。開発者は、具体的な大きさを指定してスタック用の領域を確保しなければならない。ユーザーの入力が、入力用に確保したスタック領域の大きさを上回った場合、その入力が適切かどうかをプログラムが確認しなければ、スタックはオーバーフローする。それ自体はそれほど大きな問題ではないが、悪意のある入力と組み合わさると非常に大きなセキュリティホールになる。
続いて攻撃者は、悪意のあるプログラム内の関数が出すコマンドを格納するアドレスを、戻り先のアドレスとして指定する。スタックがオーバーフローして部分的に破壊されたプログラムは、戻り先のアドレスに帰ってプログラムを回復しようと試みる。このとき意図したコマンドをシステムに実行させるよう、攻撃者は戻り先のアドレスを変更する。そのために攻撃者は悪意のあるコマンドが配置されるアドレスを把握しなければならない。実アドレスを特定しなくていいようにするために、攻撃者は「NOP」(何もしない)コマンドを悪意のあるコマンドの前後に挿入する。これは正確なメモリ範囲が分からないときに使われる手法だ。そうすることで、攻撃者が指定したアドレスがNOPコマンドで埋めた範囲のどこかにあれば、その悪意のあるコマンドが実行されるようになる。
最後は、実行可能なプログラムの権限を回避する。たいていのOSには、現在ログインしているユーザーのアクセスレベルを制御する仕組みがある。通常、プログラムの実行には高度な権限が必要なため、これらのプログラムは上位の権限を持つ「カーネルモード」で実行されることが一般的だ。
スタックベースのバッファオーバーフロー攻撃により、新たな戻り先のアドレスにあるコマンドが実行されると、プログラムは自身の実行が続いていると誤認識する。攻撃者がコマンドによってシステムを不正に操作するため、標的のアプリケーションを通じて立ち上げたコマンド実行ウィンドウは、侵害されたアプリケーションと同じ権限を持ったまま実行される。一般に、この状態は「攻撃者がOSを完全に制御した」ことを意味する場合が多い。
Copyright © ITmedia, Inc. All Rights Reserved.
脅威の検知と迅速な対応は、セキュリティ戦略の中核をなす重要な機能だ。これを実現するために、多くの組織が自動化ツールやAIなどの技術を採用しているが、成果を挙げている組織もあれば、そうでない組織もあり、明暗が分かれている。
近年、多くの組織が多数のセキュリティ製品をパッチワーク的に導入している。その結果、運用が複雑化し、非効率な状況が生まれてしまった。このような状況を改善するためには、セキュリティベンダーを統合することが必要だ。
データセンターにおいて、NGFWやマルウェア対策といったセキュリティ製品の導入は不可欠だが、選定を誤ると非効率な運用プロセスや高いコストに悩まされることとなる。5つの組織の例から、費用対効果の高い製品を見極めるコツを探る。
ダウンタイムが許されない基幹系システムやデータベースをクラウドに展開している場合、システムの障害対策をベンダー任せにすることは危険だ。本資料では、その理由を解説するとともに、クラウドの障害対策を実施する方法を紹介する。
エンドポイントがサイバー攻撃の対象となるケースも増えている今、企業にはどのような対策が必要なのか。2024年に実施された調査の結果を基に、3つの重大なリスク要因と、その解決策としてサイバーレジリエンスが重要な理由を解説する。
いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。
「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年5月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...
「マーケティングオートメーション」 国内売れ筋TOP10(2025年5月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。
「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。