2020年02月03日 05時00分 公開
特集/連載

「シェルコード」とは? 凶悪なマルウェア感染を可能にする手口「シェルコード」とは何か【前編】

攻撃者がマルウェアを感染させるための使う手段として「シェルコード」がある。どのような仕組みを持ち、どのような危険性があるのか。

[Michael Cobb,TechTarget]

関連キーワード

セキュリティ | 脆弱性


 「シェルコード」はコンピュータを攻撃するための、機械語で書かれたプログラムだ。「シェル」とは「Linux」の「bash」や「Windows」の「コマンドプロンプト」といった、コンピュータに対する命令を解釈するソフトウェアを指す。本来シェルコードとは、文字通り「シェルを呼び出し、そこでコマンドを実行させるためのプログラム」を表す単語だった。今では、たとえシェルを呼び出さなくても、実行中のアプリケーションに挿入された段階で実行可能になる機械語のプログラムを指すようになった。

 バッファ(一時的な記憶領域)に許容量を超えるデータを書き込む脆弱(ぜいじゃく)性「バッファオーバーフロー」を悪用した攻撃や、シェルに読み込ませる文字列を使ってメモリの値を不正に読み書きする「書式文字列攻撃」に、シェルコードが悪用される。攻撃者は標的のアプリケーションで致命的なエラーを発生させ、そのアプリケーションがシェルコードを実行するように仕向ける。

 攻撃者がシェルコードを悪用する目的はさまざまだ。シェルコードは、侵入先のコンピュータを不正操作するためのツール群「rootkit」や、一見無害だが特定の条件で攻撃活動をするマルウェア「トロイの木馬」のインストールに加え、マルウェア対策機能の停止、不正なファイルのアップロード/ダウンロードなどを可能にする。

シェルコード悪用の仕組み

ITmedia マーケティング新着記事

news158.jpg

外食に対する意識と行動はコロナ禍でどう変わったか――Retty調査
今、消費者は外食に対しどのように感じ、実際に行動しているのか。Rettyの調査です。

news134.jpg

NTTドコモ×エーザイ×カゴメ コロナ禍で重要になる「これからのCRM」
新型コロナの影響で売り上げが減少し、広告予算が削減された企業も少なくないだろう。新...