Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2023-21554 — CVE-2023-21554 PoC | Kitploit
도구/GitHubGitHub/shootweb/cve-2023-21554
Vulnerability AnalysisExploitationNetwork SecurityPenetration TestingLearning & EducationLabs & Practice
GitHubshootweb/cve-2023-21554

CVE-2023-21554

CVE-2023-21554 PoC

저장소 보기
210개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

MSMQ 취약점 개념 증명

이 저장소는 TCP 포트 1801에서 수신 대기 중인 Microsoft Message Queuing을 대상으로 하는 즉시 실행 가능한 개념 증명(PoC)을 포함합니다. 이 작업은 원본 프로젝트의 자료를 기반으로 하며 이를 사용합니다:
https://github.com/leongxudong/MSMQ-Vulnerability

이 저장소는 해당 프로젝트에서 제공한 바이너리 아티팩트를 사용합니다. PoC에 포함되고 참조되는 바이너리 파일은 다음과 같습니다:

  1. establish_connection.bin
  2. connection_parameters.bin
  3. user_message.bin

설명

이 PoC는 일련의 MSMQ 프로토콜 프레임을 포트 1801의 대상 호스트에 전송하여 CVE 2023 21554에 설명된 조건을 재현하려고 시도합니다. PoC 스크립트는 네트워크 수준 활동만 수행하며 사후 악용 작업은 수행하지 않습니다. 이 프로젝트는 격리된 실습 환경에서의 분석 및 방어 검증만을 목적으로 합니다.

포함된 파일

  1. CVE-2023-21554.py — 세 개의 바이너리 블롭을 순서대로 전송하는 원본 PoC 스크립트
  2. CVE-2023-21554.py — 응답, 헥스 덤프, 타임스탬프, 소켓 수준 오류를 기록하는 공격자 측 보조 스크립트. 이 스크립트를 사용하여 보다 유용한 공격자 측 증거를 확보하십시오
  3. establish_connection.bin — 원본 저장소의 1단계 바이너리 페이로드
  4. connection_parameters.bin — 원본 저장소의 2단계 바이너리 페이로드
  5. user_message.bin — 원본 저장소의 3단계 바이너리 페이로드
  6. README.md — 이 파일

사전 요구 사항

  1. 공격자 호스트에 Python 3 설치
  2. 대상 호스트 포트 1801에 대한 네트워크 접근 권한과 해당 호스트를 테스트할 수 있는 명시적 허가
  3. 테스트 후 변경 사항을 되돌릴 수 있도록 대상 가상 머신의 스냅샷
  4. 검증용 증거를 수집하는 도구(예: Wireshark 또는 tcpdump) 및 Windows용 Sysinternals procdump

실습 환경에서 PoC 실행 방법

  1. 세 개의 바이너리 파일을 PoC 스크립트와 같은 폴더에 둡니다

  2. PoC 스크립트 또는 CVE-2023-21554.py를 편집하여 대상 IP 주소를 설정합니다

  3. 공격자 머신에서 대상 IP와 포트에 대한 네트워크 캡처를 시작합니다. 별도의 셸에서 사용하는 예시 명령(IP를 대상 IP로 바꾸세요):

    sudo tcpdump -i eth0 host 10.0.2.15 and port 1801 -w msmq_test.pcap

  4. 타임스탬프가 포함된 로그와 헥스 덤프를 얻기 위해 향상된 확인 스크립트를 실행합니다

    python3 CVE-2023-21554.py

  5. PoC 출력과 네트워크 캡처 파일을 분석용으로 저장합니다

PoC가 성공했는지 확인하는 방법

1. 공격자 측 지표

  1. CVE-2023-21554.py가 페이로드 단계 직후 connection_reset 또는 orderly_close를 보고합니다(이들은 보조 스크립트가 출력하는 명시적 상태입니다).
  2. PoC가 대상으로부터 의미 있는 응답(작고 특이한 응답 바이트)을 수신합니다. 해당 응답을 비교할 수 있도록 저장하고 헥스 덤프를 뜹니다.
  3. 네트워크 캡처에서 익스플로잇 패킷 직후 TCP 리셋(RST) 또는 기타 비정상 종료가 표시됩니다.

2. 대상 측 지표

  1. 테스트 시점에 Message Queuing 서비스 프로세스 mqsvc.exe가 크래시되거나 다시 시작됩니다.
  2. Windows 이벤트 뷰어의 응용 프로그램 또는 시스템 로그에 액세스 위반이나 오류가 발생한 응용 프로그램 이름 mqsvc.exe를 참조하는 이벤트가 있습니다.
  3. 테스트 시점에 캡처한 procdump에서 mqsvc 프로세스의 예외가 표시됩니다.

바로 복사해 쓸 수 있는 Wireshark 실전 단계와 필터

각 필터에서 <TARGET>을 대상 IP로 바꾸세요.

공격자와 대상 간 MSMQ 포트의 모든 트래픽 표시: ip.addr == <TARGET> && tcp.port == 1801

서버에서 발생한 TCP RST만 표시: ip.src == <TARGET> && tcp.port == 1801 && tcp.flags.reset == 1

애플리케이션 데이터(비어 있지 않은 TCP 페이로드)가 포함된 패킷 표시: ip.addr == <TARGET> && tcp.port == 1801 && tcp.len > 0

길이가 0인 세그먼트 또는 FIN 표시: ip.addr == <TARGET> && tcp.port == 1801 && (tcp.len == 0 || tcp.flags.fin == 1)

재전송 및 TCP 이상 징후 표시: tcp.analysis.retransmission || tcp.analysis.fast_retransmission || tcp.analysis.duplicate_ack

서버 응답 바이트(원시 헥스 덤프) 추출 단계

  1. 패킷 목록 창에서 관심 있는 서버 패킷을 찾습니다. 작은 tcp.len 값이나 RST 바로 앞의 패킷을 찾아보십시오.
  2. 패킷을 마우스 오른쪽 버튼으로 클릭 → Follow → TCP Stream.
  3. Follow TCP Stream 대화상자에서 Show data as: Raw를 선택한 다음 Save As로 정확한 바이트를 내보냅니다.
  4. 또는 패킷을 선택하고 Packet Bytes 창에서 바이트를 복사합니다. 원시 바이트/헥스 덤프를 증거로 저장합니다(예: server_reply.hex).

리셋이 대상에서 왔는지 중간 박스에서 왔는지 확인하는 방법

  1. RST의 Source IP가 대상과 일치하는지 확인합니다. 일치한다면 대상 호스트 또는 해당 커널이 소켓을 닫았음을 강력히 시사합니다.
  2. RST 출발지가 경로상의 다른 장치라면 일반적으로 중간 박스나 방화벽이 연결을 끊은 것입니다. TTL 차이와 인터페이스 IP 주소가 진단에 도움이 될 수 있습니다.

타이밍 상관 관계(중요)

  1. 익스플로잇 패킷과 서버 반응 사이의 타임스탬프 차이를 기록합니다. 크래시 또는 갑작스러운 RST는 일반적으로 문제의 패킷 이후 수십에서 수백 밀리초 내에 발생합니다. 이 시간들을 증거의 일부로 기록하십시오.

비교 테스트

  1. 패치가 적용된 것으로 알려진 호스트에 동일한 시퀀스를 캡처하고 RST, FIN 또는 짧은 서버 응답의 존재 여부를 비교합니다. 차이가 결론을 뒷받침합니다.

증거 수집 체크리스트

  1. CVE-2023-21554.py의 전체 stdout 로그를 텍스트 파일로 저장합니다
  2. 네트워크 캡처 파일(예: msmq_test.pcap)을 저장합니다
  3. 테스트 시간에 해당하는 이벤트 뷰어의 응용 프로그램 및 시스템 이벤트를 내보냅니다
  4. 가능하면 procdump를 사용해 mqsvc.exe의 크래시 덤프를 캡처하고 분석용으로 저장합니다

안전 및 법적 고지

이 코드는 대상 호스트에서 서비스 크래시와 불안정성을 유발할 수 있습니다. 소유하지 않았거나 테스트에 대한 명시적 허가가 없는 시스템에서 실행하지 마십시오. 항상 격리된 실습 환경에서 테스트하고 테스트 전에 VM 스냅샷을 만드십시오. 원저작물은 업스트림 프로젝트에 있습니다:
https://github.com/leongxudong/MSMQ-Vulnerability

저작자 표시

이 저장소는 다음 원본 프로젝트에서 파생되었습니다:
https://github.com/leongxudong/MSMQ-Vulnerability

기여

탐지 보조 도구나 증거 수집 스크립트를 추가하는 경우 이를 문서화하고 안전한 실습 사용을 위한 지침을 포함해 주세요

문의 및 추가 자료

원래 컨텍스트와 바이너리 아티팩트는 위 링크의 업스트림 저장소를 참조하십시오. 방어 지침 관련해서는 CVE 2023 21554에 대한 공급업체 권고와 공개된 분석 글을 확인하십시오.

도구 다운로드