|
ADMmutateとは? |
前回はSnortへのDoSアタックとして、「Snot」や「Stick」によるアタックについて紹介したが、今回はIDSを回避するアタック方法について見てみよう。はじめに、バッファーオーバーフロー攻撃の検知を回避する「ADMmutate」を検証してみることにする。
ADMmutateの概要はこちらの記事を参照するとわかりやすいだろう。昨年の春に公開されており、バッファーオーバーフロー攻撃の検知を「Polymorphic Coding」という技術を用いて回避する。ADMmutateは攻撃内容のデータペイロード部分をランダマイズに変化させ、それにより、シグネチャベースのIDSの検知を回避することを可能にしている(関連リンク)。バッファーオーバーフロー攻撃についての解説は機会を改めて行うつもりだが、攻撃手法としては現在、もっともポピュラーなものと言える。
ADMmutateを利用したアタックの検証 |
今回の検証は、サーバとなるコンピュータで、セキュリティホールのあるサンプルアプリケーションをroot権限で起動し、クライアントから通常のアタックと、ADMmutateを利用したアタックを行い、攻撃の検知を回避できるかをSnortのログから確認する。アタックが成功すると、サーバ側ではポート3879で「/bin/sh」が動作する。
このときのIPアドレスはそれぞれ、
サーバのIPアドレス:192.168.1.4 クライアントのIPアドレス:192.168.1.10 |
となっている。
では、攻撃対象のサーバでSnortを起動すると同時に、セキュリティホールのあるサンプルアプリケーション(exp-test)をポート2600にて起動し、動作を確認してみよう。
# /usr/local/bin/snort -Dd -A fast -c
/etc/snort/snort.conf -u snort -g snort # ./exp-test 2600 & |
![]() 写真1■サーバへのポートスキャン画面 |
![]() |
1/5 | ![]() |