프로젝트 소개
Commix(command injection exploiter의 줄임말)는 Python으로 작성된 오픈소스 침투 테스트 도구로, 명령어 인젝션 및 코드 인젝션 취약점의 탐지와 익스플로잇을 자동화합니다. 주로 독립 실행형 CLI 도구로 사용되며 테스트 대상에서 운영 체제 명령을 실행하므로, 본인이 소유하거나 명시적으로 테스트 권한을 받은 시스템에만 사용해야 합니다.
README에 설명된 주요 기능:
- 다섯 가지 인젝션 기법: 결과 기반(고전적), 불리언 기반 블라인드, 시간 기반 블라인드, 파일 기반 블라인드(쓰기가 제한된 대상용 임시 파일 기반 변형 포함), 그리고 HTTP/S 및 DNS를 통한 대역 외(OAST). 기법은 --technique로 선택하거나 --type으로 보고된 유형별로 필터링할 수 있습니다.
- --eval을 통한 코드 인젝션 테스트: 대상이 PHP 또는 Python에서 코드로 평가하는 문자열을 동일한 기법으로 테스트합니다.
- 광범위한 인젝션 표면: GET/POST 파라미터, HTTP 헤더, 쿠키, JSON/XML 요청 본문, 그리고 CGI 대상용 shellshock 모듈.
- 대화형 셸 및 후속 익스플로잇: 대상의 os_shell, 내장 reverse_tcp 및 bind_tcp 모드, 구축된 셸을 통한 파일 다운로드/업로드, 현재 사용자·호스트명·권한·시스템 정보·사용자 및 비밀번호 해시 열거. 발견 사항은 --proof로 재검증할 수 있으며, 자체 실험을 실행하고 실행 출력 옆에 기록을 작성합니다.
- 결정적 순서로 적용되는 여러 조합 가능한 tamper 스크립트를 통한 필터 및 WAF 우회.
- 유연한 대상 지정: 단일 URL, 크롤링, HTML 폼, 사이트맵, 프록시 로그, 대량 파일, 원시 HTTP 요청 파일, 또는 파이프된 stdin.
- 재개 가능한 스캔 및 기계 판독 가능한 출력: 결과는 대상별로 세션 파일에 저장되며, 테스트한 모든 대상을 포함하는 JSON, CSV, 또는 실행의 HTTP 트래픽 HAR 로그로 내보낼 수 있습니다. 실행 옵션은 재사용 가능한 프로필로 저장할 수 있습니다.
- 폭넓은 백엔드 지원: PHP, Python, Perl, Ruby, ASP.NET, JSP 및 CGI, Unix 계열과 Windows 대상 모두.
설치는 Git 저장소를 복제(또는 tarball/zipball 다운로드)하여 수행하며, Python 3.7 이상이 필요하고 다른 모든 종속성은 번들로 포함됩니다. README의 사용 예시는 단일 인젝션 가능 파라미터 테스트 및 셸 진입, 응답이 아무것도 반환하지 않는 경우의 대역 외 실행 검증, 그리고 배치 모드와 JSON 보고로 대상 목록을 무인 스캔하는 방법을 다룹니다. 대역 외 탐지는 기본적으로 공용 oast.fun interactsh 서버를 사용하므로, --oob-server가 자체 호스팅 인스턴스를 가리키지 않는 한 상호작용 메타데이터가 네트워크 외부로 나갑니다. 이 프로젝트는 활발히 개발 중이며 리비전 간에 호환성을 깨는 변경이 있을 수 있습니다. 문서, 사용 예시 및 필터 우회 예시는 프로젝트 위키에서 확인할 수 있습니다.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.