
CVE-2024-51567 is a Python PoC exploit targeting an RCE vulnerability in CyberPanel v2.3.6’s upgrademysqlstatus endpoint, bypassing CSRF protections.
CVE-2024-51567은 CyberPanel v2.3.6에 영향을 미치는 심각한 명령 삽입 취약점인 CVE-2024-51567에 대한 Python 개념 증명(PoC) 익스플로잇 스크립트입니다. 이 취약점은 upgrademysqlstatus 엔드포인트에서 발견되었으며, CSRF 보호를 우회하고 특정 매개변수에서 셸 메타 문자를 사용하여 원격 명령 실행(RCE)을 가능하게 합니다.
⚠️ 중요 고지: 이 스크립트는 교육 목적과 귀하가 소유하거나 테스트할 명시적 권한이 있는 시스템에 대한 승인된 보안 테스트를 위해 작성되었습니다. 승인되지 않은 시스템에서 이 스크립트를 사용하는 것은 불법이며 법적 처벌을 받을 수 있습니다. 저자는 오용에 대해 어떠한 책임도 지지 않습니다. 항상 윤리적 기준과 관련 법률을 준수하십시오.
databases/views.py에 있는 upgrademysqlstatus 엔드포인트(커밋 5b08cd6 이전)는 POST 요청만 필터링하는 secMiddleware 보호를 우회하여 원격 공격자가 임의 명령을 실행할 수 있게 합니다. 이 취약점은 statusfile 매개변수의 셸 메타 문자를 사용하여 악용될 수 있습니다./dataBases/upgrademysqlstatus 엔드포인트를 통해 취약한 CyberPanel 서버에서 원격 명령을 실행함httpx 모듈git clone https://github.com/ajayalf/CVE-2024-51567.git
cd CVE-2024-51567
httpx가 설치되어 있는지 확인하십시오:
pip install httpx
단일 대상에 대해 스크립트를 실행하려면 다음 명령을 사용하십시오:
python CVE-2024-51567.py <target-url>
예제:
python CVE-2024-51567.py http://example.com
여러 대상에 대해 스크립트를 실행하려면 대상 URL 목록이 포함된 텍스트 파일(한 줄에 하나의 URL)을 만들고 다음 명령을 사용하십시오:
python CVE-2024-51567.py <targets.txt>
예제:
python CVE-2024-51567.py targets.txt
여러 대상을 사용하려면 targets.txt 또는 원하는 이름의 텍스트 파일을 만드십시오. 파일 형식은 아래와 같이 한 줄에 하나의 URL 목록이어야 합니다:
http://target1.com
http://target2.com
http://target3.com
스크립트가 대상에 연결되면 대상 서버에서 실행할 셸 명령을 입력할 수 있습니다. 종료하려면 exit 또는 quit를 입력하십시오.
get_CSRF_token(client): 대상의 메인 페이지 쿠키에서 CSRF 토큰을 가져옵니다.
client (an httpx.Client 객체)pwn(client, CSRF_token, cmd): CSRF 토큰과 원하는 명령이 포함된 조작된 페이로드를 전송합니다.
client (an httpx.Client 객체), CSRF_token (문자열), cmd (문자열)exploit(client, cmd): 대상에서 pwn 함수를 실행하여 명령을 실행하고 출력을 인쇄합니다.
client (an httpx.Client 객체), cmd (문자열)run_exploit(target): 대상에 대한 연결을 초기화하고 대화형 명령 루프를 시작합니다.
target (문자열, 대상 URL)CSRF 토큰이 쿠키에서 발견되지 않으면 스크립트는 수신된 모든 쿠키를 인쇄하고 도움이 되는 오류 메시지와 함께 종료됩니다.
/인지 확인하십시오. 다른 경로인 경우 get_CSRF_token 함수를 그에 따라 수정하십시오.이 취약점에 대한 자세한 내용은 다음 리소스를 참조하십시오:
exit 또는 quit를 입력할 때까지 사용자 명령을 수신합니다.메인 실행: 인수를 확인하여 대상이 단일 URL인지 또는 여러 대상이 포함된 파일인지 판단합니다.