
pinky - PHP製のミニRAT(リモート管理ツール)
Web脆弱性を悪用した後は、ほぼ常に次のステップとしてWebshellをアップロードすることになりますが、Cloudflareや新しい世代のファイアウォールなどのサービスは、攻撃者がHTTPまたはHTTPSを介してターゲット上でコマンドを実行するのを防ぐのに非常に優れています。一方、テキストコンテンツのフィルタリングやアプリケーションのホワイトリストポリシーは、最小限の労力で簡単に悪用される可能性があり、pinkyはそのPoCです。
まず、pinkyは、システムコマンドを実行するために有効な関数を特定しようとします。最適なPHP関数を見つけた後、すべての通信が暗号化されます。そのため、ファイアウォールがトラフィックを読み取るように設定されていても、そのアクティビティが悪意のあるものかどうかを判断することはできません。また、pinkyはあらゆる種類のプロキシを介して通信できます。さらに、他の人がpinkyのエージェントと通信するのを防ぐために、Basic認証(完全に安全ではないことはわかっています!)を送信する必要があります。
$ git clone [email protected]:davidtavarez/pinky.git
Cloning into 'pinky'...
remote: Counting objects: 223, done.
remote: Compressing objects: 100% (79/79), done.
remote: Total 223 (delta 54), reused 72 (delta 27), pack-reused 103
Receiving objects: 100% (223/223), 385.73 KiB | 73.00 KiB/s, done.
Resolving deltas: 100% (101/101), done.
$ cd pinky
$ php pinky.php
_ _
_ __ (_)_ __ | | ___ _
| '_ \| | '_ \| |/ / | | |
| |_) | | | | | <| |_| |
| .__/|_|_| |_|_|\_\__, |
|_| |___/ v2.0
The PHP Mini RAT.
+ Author: David Tavarez
+ Twitter: @davidtavarez
+ Website: https://davidtavarez.github.io/
+[WARNING]------------------------------------------+
| DEVELOPERS ASSUME NO LIABILITY AND ARE NOT |
| RESPONSIBLE FOR ANY MISUSE OR DAMAGE CAUSED BY |
| THIS PROGRAM ¯\_(ツ)_/¯ |
+---------------------------------------------------+
[-] I need a json file containing the settings.
まず、ターゲット上で見つかった脆弱性を悪用します。
次に、組み込みのジェネレーターを使用してエージェントを生成します。次のようにします:

結果がかなり良いため、エージェントを難読化するために、Pierre-Henry SoriaによるObfuscator-Classを使用しています。

エージェントが生成されたら、それをターゲットマシンにアップロードし、以前に作成したjsonファイルにURLを貼り付ける必要があります。SOCKS5プロキシを使用したい場合(そして使用すべきです)、設定を追加する必要があります:
{
"key":"[KEY]",
"url":"[URL]",
"login":{
"username":"[LOGIN]",
"password":"[PASSWORD]"
},
"proxy":{
"ip":"127.0.0.1",
"port":9150,
"type":"SOCKS5"
},
"cookies": "[COOKIES]"
}
最後のステップは、エージェントをアップロードし、ターミナルを開いて、jsonファイルをパラメータとして渡すことです。
$ php pinky.php config.json


貢献するには、このプロジェクトをフォークし、masterから新しいブランチを作成して、PRを送ってください。また、Wikiにページを追加して貢献することもできます :)