
SMB 프로토콜 감사, 취약점 탐지(EternalBlue, SMBGhost), null 세션 열거, 자격 증명 무차별 대입, 그리고 Windows 및 Samba 시스템에서의 공유 액세스 테스트를 위한 셸 스크립트 모음입니다.
███████╗███╗ ███╗██████╗ ███║
██╔════╝████╗ ████║██╔══██╗ ║██║
███████╗██╔████╔██║██████╔╝ ██║ ██ ║██║
╚════██║██║╚██╔╝██║██╔══██╗ ╚██╗ ██ ╔╝██║
███████║██║ ╚═╝ ██║██████╔╝ ╚████╔╝ ██║
╚══════╝╚═╝ ╚═╝╚═════╝ ╚═══╝ ╚═╝
SMB는 네트워크에서 머신 간에 파일, 프린터 및 기타 리소스를 공유할 수 있게 해주는 네트워크 프로토콜입니다. SMB v1(Server Message Block 버전 1)은 네트워크 파일 공유용으로 안전하지 않고 구식입니다.
SMB v1 - 안전하지 않음 !!!
암호화 없음: 사용자와 비밀번호를 포함한 데이터를 평문으로 전송합니다.
심각한 취약점: 악성코드에 의해 악용됨
WannaCry: 2017년 수백만 대에 영향을 준 랜섬웨어. EternalBlue: NSA가 개발한 익스플로잇으로 WannaCry에서 사용됨.
NotPetya: 수십억 달러의 손실을 초래한 악성코드.
문서화된 다중 취약점 (CVE-2017-0143 등).
버전 감지:
기타 빠른 명령어
sudo mount -t cifs //10.0.0.1/Public /mnt -o guest
공유 폴더에서 특정 파일 검색
for share in $(smbclient -L //192.168.1.100 -N 2>/dev/null | awk '/Disk/ {print $1}'); do echo "Buscando en $share:" smbclient -N //192.168.1.100/$share -c "ls pass; ls backup" 2>/dev/null done
for user in admin administrator guest test; do echo -n "Probando $user:password123... " smbclient -L //192.168.1.100 -U "$user%password123" 2>&1 | grep -q "session setup failed" && echo "FAIL" || echo "OK" done
smbclient -U "user%pass" //192.168.1.100/ShareName -c "prompt OFF; recurse ON; mget *"
SMBv1: CVE-2017-0143 취약점, 심각도 8.8, SMBv1이 있는 Windows에서의 원격 코드 실행(RCE) (ms17-010)
EternalBlue는 NSA가 사이버보안 도구로 만든 익스플로잇입니다. Microsoft가 제공한 공식 익스플로잇 이름은 MS17-010입니다. 이 익스플로잇은 Windows 장치에만 국한되지 않고 Microsoft의 SMBv1 서버 프로토콜을 지원하는 모든 장치에 영향을 미칩니다.
SMBv1은 Microsoft Windows Vista SP2; Windows Server 2008 SP2 및 R2 SP1; Windows 7 SP1; Windows 8.1; Windows Server 2012 Gold 및 R2; Windows RT 8.1 및 Windows 10 Gold, 1511 및 1607 및 Windows Server 2016에서 원격 공격자가 조작된 패킷을 통해 임의의 코드를 실행할 수 있게 하며, "Windows SMB Remote Code Execution Vulnerability"로도 알려진 취약점입니다. 이 취약점은 CVE-2017-0144, CVE-2017-0145, CVE-2017-0146 및 CVE-2017-0148에 설명된 취약점과 다릅니다.
https://www.exploit-db.com/exploits/41891
스크립트 : https://github.com/hackingyseguridad/smb/
| scansmbnull.sh | Null 세션을 감지하고 열거합니다. |
| ms08-068_tester.sh | MS08-068 (CVE-2008-4036) 취약점 테스트. |
| scansmbghost.sh | SMBGhost (CVE-2020-0796)에 잠재적으로 취약한 시스템 감지. |
| smbuserenum.sh | SMB를 통해 사용자 열거. |
| bruteinvsmb.sh | 역방향 무차별 대입으로 자격 증명을 시도합니다. |
인증 없는 SMB(Null Session): 자격 증명 없이 사용자, 공유 폴더 및 기타 시스템 정보를 열거할 수 있습니다. 스크립트: scansmbnull.sh, smbuserenum.sh, scansmb.sh.
기본값이거나 취약하거나 직접 및 역방향 무차별 대입으로 추측 가능한 비밀번호. 스크립트: bruteinvsmb.sh(역방향 무차별 대입용으로 보임), README의 다른 명령어는 간단한 자격 증명을 테스트합니다.
CVE-2008-4036 (MS08-068): SMB의 로컬 권한 상승 취약점. 스크립트: ms08-068_tester.sh. CVE-2020-0796 (SMBGhost): SMBv3의 버퍼 오버플로 버그. 스크립트: scansmbghost.sh.
과도한 권한으로 구성된 공유 폴더("guest"에 대한 읽기 전용 또는 쓰기 접근 등).스크립트: automontar.sh, smbauto.sh, smbescribefichero.sh(파일 쓰기용), scansmbfile.sh(파일 검색용).