
Joomla 4.2.5에서 CVE-2023-23752를 악용하는 Dockerized 랩 환경 내의 포괄적인 전체 라이프사이클 침투 테스트 프로젝트
이 프로젝트는 오픈소스 CMS(Joomla 4.2.5)에 대한 전체 수명주기 침투 테스트를 시연합니다. 전체 테스트는 실습 환경 배포부터 익스플로잇, 사후 익스플로잇, 관리자 계정 탈취까지 표준 방법론(OWASP/PTES)을 따릅니다.
다음의 정확한 단계를 따라 로컬 인프라에 취약한 환경을 배포하고 복제하세요.
대상 Ubuntu VM을 켜고 SSH로 연결하세요(또는 VM 내에서 직접 터미널을 엽니다).
Ubuntu 버전에 따라 Docker와 Compose 유틸리티를 설치하세요:
sudo apt update && sudo apt install -y docker.io docker-compose-plugin
sudo apt update && sudo apt install -y docker.io docker-compose-v2
docker-compose.yml이라는 새 파일을 엽니다:
nano docker-compose.yml
docker-compose.yml 파일의 전체 내용을 복사하여 터미널에 붙여넣습니다.Ctrl + O를 누른 후 Enter, 그런 다음 Ctrl + X를 눌러 편집기를 저장하고 종료합니다.sudo docker compose up -d
sudo docker compose ps
8080에서 대상 VM의 IP 주소로 이동합니다:
http://<YOUR_VM_IP>:8080
dbjoomla_userjoomlapasswordjoomla_db공격자 역할을 하여 Kali Linux에서 네트워크 및 CMS 특화 스캐닝 도구를 배포했습니다:
8080의 열린 포트와 서비스를 식별하기 위해 수행했습니다.Joomla 4.2.5)을 식별하는 데 사용했습니다.

버전 식별 결과를 바탕으로 취약점 연구를 통해 CVE-2023-23752 (Joomla Core API의 부적절한 접근 제어)를 발견했습니다.
Metasploit 프레임워크(msfconsole)를 사용하여 대상에 특화된 익스플로잇 모듈을 실행했습니다:
auxiliary/gather/joomla_vulnerable_config_disclosurejoomla_user / joomlapassword)을 성공적으로 추출했습니다.
실제 평가에서 잘못된 구성은 종종 연쇄적으로 발생합니다. 자격 증명 재사용을 테스트하기 위해 유출된 데이터베이스 비밀번호를 사용하여 관리자 계정 탈취를 시도했습니다:
/administrator)로 이동했습니다.
CVE-2023-23752로부터 시스템을 보호하려면:
4.2.8 이상으로 업그레이드하세요./api 엔드포인트에 대한 접근을 제한하세요.