「シェルコード」の版間の差分
提供: セキュリティ
(ページの作成:「<!-- vim: filetype=mediawiki --> シェルコード (Shellcode) とは、コンピュータセキュリティにおいて、ソフトウェアの[[セキュリテ...」) |
(→関連項目) |
||
(同じ利用者による、間の4版が非表示) | |||
行32: | 行32: | ||
*: シェルコード自体がコネクションを確立します。[[シェルコード]]が攻撃者の使用するマシンに接続します(connect back)。 | *: シェルコード自体がコネクションを確立します。[[シェルコード]]が攻撃者の使用するマシンに接続します(connect back)。 | ||
* bindshell | * bindshell | ||
− | *: | + | *: 対象ホストのポートにシェルコードをバインドします。 |
* socket-reuse | * socket-reuse | ||
*: シェルコードが実行される前にコネクションがクローズされないような脆弱性を持つプロセスを利用する場合に使われます。 | *: シェルコードが実行される前にコネクションがクローズされないような脆弱性を持つプロセスを利用する場合に使われます。 | ||
− | == | + | === ダウンロード実行型 === |
− | + | 悪意のある[[ウェブサイト]]に訪れたときに、[[シェルコード]]をダウンロードして、実行させます。 | |
− | + | [[ドライブバイダウンロード]] 攻撃と呼ばれています。 | |
− | * [[ | + | |
+ | == 関連項目 == | ||
+ | {{shellcode}} | ||
+ | * [[セキュアプログラミング]] | ||
+ | {{c}} |
2014年2月17日 (月) 15:40時点における最新版
シェルコード (Shellcode) とは、コンピュータセキュリティにおいて、ソフトウェアのセキュリティホールを利用するペイロードとして使われるコードの断片です。シェルコードは、egg とも呼ばれます。
読み方
- シェルコード
- しぇるこーど
- Shellcode
- しぇるこーど
概要
シェルコード (Shellcode) とは、コンピュータセキュリティにおいて、ソフトウェアのセキュリティホールを利用するペイロードとして使われるコードの断片です。シェルコードは、egg とも呼ばれます。
シェルコードは、シェルを起動させるコードです。シェルコードは、マシン語で書かれることが多いです。
種類
- ローカル型
- リモート型
- ダウンロード実行型 (ドライブバイダウンロード)
ローカル型シェルコード
ローカル型シェルコードは、攻撃者が、攻撃対象のマシンに限定的なアクセス権があるときに、より高い特権レベルのプロセスの脆弱性を利用します。
リモート型シェルコード
別のホストで動作する脆弱性のあるプロセスを攻撃します。
- connect back
- シェルコード自体がコネクションを確立します。シェルコードが攻撃者の使用するマシンに接続します(connect back)。
- bindshell
- 対象ホストのポートにシェルコードをバインドします。
- socket-reuse
- シェルコードが実行される前にコネクションがクローズされないような脆弱性を持つプロセスを利用する場合に使われます。
ダウンロード実行型
悪意のあるウェブサイトに訪れたときに、シェルコードをダウンロードして、実行させます。 ドライブバイダウンロード 攻撃と呼ばれています。
関連項目
- shellcode2exe.py
- libemu: x86エミュレータ
- セキュアプログラミング
- セキュアプログラミング
- C言語
- スタック
- スタックフレーム
- リターンアドレス
- ベースポインタ