
CVE-2021-26855 (Exchange Server SSRF)에 대한 PoC 익스플로잇으로, 사용자 열거, 메일 헤더 읽기, 취약점 탐지를 포함합니다. 인증되지 않은 내부 리소스 액세스를 지원하며, CVE-2021-27065와 연계하여 RCE를 수행합니다.
CVE-2021-26855에 대한 PoC 익스플로잇 코드입니다.
원본 코드는 https://github.com/GreyOrder에서 개발되었습니다. 원본 저장소는 추가 기능(사용자 열거 등)이 추가된 직후 삭제되었습니다.
최신 버전이 있으시면 풀 리퀘스트를 보내주세요.
CVE-2021-26855 SSRF - golang을 이용한 간단한 연습
영향받는 버전:
Exchange Server 2013 CU23 미만, Exchange Server 2016 CU18 미만, Exchange Server 2019 CU7 미만
사용 조건:
이 취약점은 이전 Exchange 취약점과 다릅니다. 이 취약점은 로그인할 수 있는 사용자 자격 증명이 필요하지 않으며, 인증 없이 내부 사용자 리소스를 획득할 수 있습니다. CVE-2021-27065와 함께 사용하여 원격 명령 실행을 구현할 수 있습니다.
취약점 트리거 요구 사항:
- 대상 서버의 취약점 존재
- 대상 Exchange 서버는 로드 밸런싱 서버여야 합니다. 즉, 두 개 이상의 서버가 동시에 사용되어야 합니다.
- 대상 이메일 주소. 참고: 이 주소는 내부 도메인 이메일 주소여야 하며, 일반 이메일 주소와는 다릅니다. 둘 사이에 차이가 있습니다.
- 공격자는 내부 Exchange 서버의 FQDN(정규화된 도메인 이름)을 식별해야 합니다.
위 네 가지 항목 중 FQDN은 NTLM Type2 메시지를 통해 캡처할 수 있으며, 이메일 주소는 직접 열거할 수 있습니다.
사용 방법:
이 취약점을 익스플로잇하려면 ruby나 python과 같은 스크립트 언어를 사용하는 것이 더 편리합니다. golang으로 작성된 것은 주로 golang 학습을 위한 것이므로 이 작은 도구는 반제품으로 간주되며 시간이 있을 때 업데이트될 예정입니다.
이 도구는 취약점 탐지, 사용자 열거를 지원하며, 간단한 메일 ID 및 헤더 읽기(실제로는 XML 콘텐츠 수정)를 수행할 수 있습니다. 후속 사용은 XML을 제출하는 8581을 참조하십시오.
사용법:
go run CVE-2021-21978.go -h
-h string 필수, 대상 주소 또는 도메인 이름
-U string 선택사항, 열거할 사용자 목록 필요
-d 선택사항, 메일 다운로드
-l 선택사항, 메일 목록 표시
-n string 선택사항, FQND 지정 필요
-t string 선택사항, 요청 지연 시간 (기본값: "1")
-u string 선택사항, 대상 지정 (기본값: "administrator")