
@Ekultek의 BlueKeep PoC를 실제 익스플로잇으로 포팅하려는 시도
이 프로젝트는 다른 곳에서 실제 익스플로잇이 더 성공적으로 개발되었으므로 보관 처리되었습니다.
https://blog.rapid7.com/2019/09/06/initial-metasploit-exploit-module-for-bluekeep-cve-2019-0708/
bluekeep_CVE-2019-0708_poc_to_exploit
이슈(닫힌 이슈와 )를 먼저 읽어보세요. "작동 안 함", "스크립트 실행 후 아무 일도 일어나지 않음", "에러 (구체적이지 않음), 도와주세요" 같은 글을 올리기 전에요.
============================================================================
============================================================================
============================================================================ 이것은 그냥 가져다 쓸 수 있는 기성품 익스플로잇이 아닙니다.
또한, 코드가 원격 시스템에서 실행되도록 하기 위해서는 전달 방식도 중요합니다.
현재까지 우리는 여전히 셸을 띄우고 RCE를 달성하는 데 성공하지 못했습니다.
현재 나와 있는 대부분의 스캐너와 PoC는 대상 호스트의 응답을 분석하여 취약한지 여부만 판단합니다. (여러분 모두 알다시피, 패치된 버전과 패치되지 않은 버전은 다른 응답을 반환하며 영향을 받지 않는 OS도 다릅니다.) 실제로 대상 호스트를 "익스플로잇"하지는 않습니다. RCE를 달성하려면 먼저 특수하게 조작된 패킷을 보내 취약점을 트리거해야 합니다(RDP MSDN 프로토콜 사양 참조). 취약점이 트리거된 후, 두 번째 단계는 크래시 또는 메모리 덤프를 분석하여 코드가 어떻게 들어맞을 수 있는지 파악하는 것입니다. 대부분이 생각하는 것처럼 간단하지 않습니다.
유용한 자료:
셸 코드 생성을 위해 @trustedsec의 Magic Unicorn을 사용할 수 있습니다. https://github.com/trustedsec/unicorn
**참고: Python 3를 사용하세요.
RDP 클라이언트는 사용자가 연결할 원격 데스크톱 이름을 제공할 때 연결을 시작합니다. RDP 클라이언트는 X.224 연결 요청 프로토콜 데이터 유닛(PDU)을 전송하여 RD 세션 호스트에 대한 연결을 시작합니다.
RD 세션 호스트는 X.224 연결 확인 PDU로 응답합니다.
RDP 클라이언트는 GCC 회의 생성 요청과 함께 MCS 연결 초기 PDU를 전송합니다. --> 이 요청과 관련된 취약점.
RD 세션 호스트는 GCC 회의 생성 응답과 함께 MCS 연결 응답 PDU로 응답합니다.
RDP 클라이언트는 MCS 도메인 설정 요청 PDU를 전송합니다.
RDP 클라이언트는 MCS 사용자 연결 요청 PDU를 전송합니다.
RD 세션 호스트는 MCS 사용자 연결 확인 PDU로 응답합니다.
RDP 클라이언트는 여러 개(이 경우 6개)의 MCS 채널 조인 요청 PDU를 전송합니다.
RD 세션 호스트는 여러 개(이 경우 6개)의 MCS 채널 조인 확인 PDU를 전송합니다.
RDP 클라이언트는 보안 교환 PDU를 전송합니다.
RDP 클라이언트는 클라이언트 정보 PDU를 전송합니다.
RD 세션 호스트는 라이선스 오류 PDU-유효한 클라이언트를 전송합니다.
RD 세션 호스트는 활성화 요청 PDU를 전송합니다.
RDP 클라이언트는 활성화 확인 PDU로 응답합니다.
RDP 클라이언트는 동기화 PDU를 전송합니다.
RDP 클라이언트는 제어 PDU-협력을 전송합니다.
RDP 클라이언트는 제어 PDU-제어 요청을 전송합니다.
RDP 클라이언트는 0개 이상의 영구 키 리스트 PDU를 전송합니다. 이 경우 0개의 PDU가 전송됩니다.
RDP 클라이언트는 글꼴 리스트 PDU를 전송합니다.
RD 세션 호스트는 동기화 PDU를 전송합니다.
RD 세션 호스트는 제어 PDU-협력을 전송합니다.
RD 세션 호스트는 제어 PDU-제어 부여를 전송합니다.
RD 세션 호스트는 글꼴 맵 PDU를 전송합니다.