
Zerologon(CVE-2020-1472)용 PoC - 익스플로잇

이 익스플로잇을 사용하려면 GitHub에서 최신 impacket을 사용해야 합니다.
impacket 설치 시 netlogon 구조가 추가되었는지 확인하세요.
참고 :
기본적으로 성공적인 익스플로잇은 DC 계정의 비밀번호를 변경합니다.
DCSync를 허용합니다.
다른 도메인 컨트롤러와의 통신을 중단시킵니다 (주의하세요!)
원본 연구 및 정보는 여기에서 확인하세요.
Python 3.7 이상과 Pip이 필요합니다. 다음과 같이 종속성을 설치하세요:
pip install -r requirements.txt

시크릿을 덤프할 수 없습니다!


NTDS.dit 시크릿을 성공적으로 덤프했습니다!
python3 zero-logon-exploit.py를 실행하세요.-just-dc 및 -no-pass 또는 빈 해시와 DCHOSTNAME$ 계정을 사용하여 secretsdump로 DCSync를 수행하세요.secretsdump의 이 줄이 통과하도록 하면 (예: if True:로 변경) secretsdump는 레지스트리에서 일반 텍스트(16진수 인코딩) 컴퓨터 계정 비밀번호도 덤프합니다. 동일한 DC에 대해 DA 계정을 사용하여 실행하면 됩니다.
또는, 먼저 레지스트리 하이브를 추출한 다음 오프라인 상태에서 secretsdump를 실행하여 동일한 비밀번호를 덤프할 수 있습니다 (이 경우 Kerberos 해시를 계산할 수 없기 때문에 항상 일반 텍스트 키를 출력하므로 라이브러리를 수정할 필요가 없습니다).
이 비밀번호를 사용하여 -hexpass 매개변수와 함께 restorepassword.py를 실행할 수 있습니다. 이 스크립트는 먼저 빈 비밀번호로 동일한 DC에 인증한 다음 비밀번호를 원래대로 되돌립니다. 대상으로 netbios 이름과 IP를 다시 제공해야 합니다. 예를 들어 다음과 같이 실행합니다:
python restorepassword.py testsegment/s2016dc@s2016dc -target-ip 192.168.222.113 -hexpass e6ad4c4f64e71cf8c8020aa44bbd70ee711b8dce2adecd7e0d7fd1d76d70a848c987450c5be97b230bd144f3c3...etc
익스플로잇 제공 크레딧 : dirkjanm