「シェルコード」とは何か【後編】
「シェルコード」は何が危険なのか? 具体的な対策は?
悪意あるプログラムを実行させるために用いられる「シェルコード」。それを悪用した具体的な攻撃手法と、企業が取るべき対策を紹介する。
コンピュータを攻撃するための機械語によるプログラムを「シェルコード」と呼ぶ。前編「『シェルコード』とは? 凶悪なマルウェア感染を可能にする手口」で述べた通り、シェルコードを悪用した攻撃の例には、バッファ(一時的な記憶領域)に許容量を超えるデータを送り込んでエラーを発生させる脆弱(ぜいじゃく)性「バッファオーバーフロー」を悪用した攻撃がある。他にも「Windows」のグラフィック機能「GDI+」の脆弱性「JpegOfDeath」を悪用する攻撃がある。エクスプロイト(脆弱性悪用プログラム)によって作成した有害なJPEG画像を標的のコンピュータに開かせ、バッファオーバーフローを誘発するというものだ。
エクスプロイトは通常、悪用対象の技術とペイロード(攻撃者による悪質なプログラムの実行を可能にするコンポーネント)という2つの要素から成る。悪用対象の技術は、標的となるアプリケーションにシェルコードを挿入して実行経路を変え、シェルコードを実行させるために悪用する。そうすることで攻撃者は、シェルコードをペイロードで実行できるようになる。例えばプログラムが実行すべきコマンドを記したメモリのアドレスを、シェルコードのアドレスに上書きすることでシェルコードの実行を誘発できる。
シェルコードで悪用されるバッファオーバーフローは、スタックおよびヒープを利用したものが一般的だ。スタックとはプログラムが関数を操作するために扱うデータをあらかじめ格納しておく記憶領域、ヒープとは動的に確保する記憶領域を指す。他にもコンピュータが扱える最大値を超える整数を与えることで発生する「整数オーバーフロー」を悪用した攻撃や、プログラムが扱う文字列に特殊な文字列を挿入し、メモリの値を不正に読み書きする「書式文字列攻撃」などの攻撃手法がある。
ペイロードを使うことで、攻撃者が次のコマンドを入力するのを待つ状態にすることもできる。シェルコードはローカルでもリモートでも実行可能だ。ローカルでの実行は攻撃者が物理的にコンピュータにアクセスできる時に使われる。一方リモートでの実行は、脆弱性のあるプロセスを実行しているコンピュータを狙い、ネットワークを介してそのコンピュータにアクセスする目的で使われる。
シェルコード対策の勘所
シェルコードによる攻撃を食い止めるために、企業は多層的なセキュリティ対策を実施しなければならない。攻撃者は自動化された手法で既知の脆弱性があるアプリケーションを探す。従って企業のファイアウォールやデバイス管理製品は、疑わしい接続および悪意ある接続を阻止する設定にしておく必要がある。モニタリングやAI(人工知能)技術を使って異常な挙動を発見し、恒久的な損害が生じる前に攻撃を食い止めなければならない。
アプリケーションの保護も重要だ。メモリ保護や、プログラムの実行が不可能な記憶領域からのプログラム実行の防止といったセキュリティ対策を有効にすることで、エクスプロイトへの耐性を強化する必要がある。「Metasploit Framework」や「PowerSploit」といったセキュリティテストツールを使うことで、実行中のプロセスにシェルコードが挿入されていないかどうかなどを調査することができる。
最後に、そうした防御の組み合わせが有効かどうかをチェックすることも欠かせない。そのためには侵入テストツールを使って、シェルコードを実行しようとする攻撃を検出し、それをきちんと防止できるかどうかをテストするとよい。
Copyright © ITmedia, Inc. All Rights Reserved.
「シェルコード」とは何か
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
「Microsoft 365のセキュリティ運用」に関するアンケート
-
3
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
「データストレージの活用方法」に関するアンケート
-
8
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
9
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー