🇰🇷 한글 설명
PHPJabbers Appointment Scheduler 2.0의 디렉토리 트래버설 취약점으로, 공격자가 pjBackup 컨트롤러의 pjActionDownload 작업에서 id 파라미터에 '..'을 삽입하여 임의의 파일을 읽을 수 있다. 원격 인증 없이 악용 가능하며 서버의 민감한 정보 노출 위험이 있다.
💡 쉬운 설명
웹 애플리케이션의 파일 읽기 기능에서 경로 검증이 부족해 공격자가 상위 폴더의 파일을 접근할 수 있는 취약점이다. '..'을 사용해 시스템 파일, 설정 파일, 데이터베이스 정보 등을 읽어낼 수 있다.
🇺🇸 원문 (English)
Directory traversal vulnerability in PHPJabbers Appointment Scheduler 2.0 allows remote attackers to read arbitrary files via a .. (dot dot) in the id parameter in a pjActionDownload action to the pjBackup controller.
📍 영향받는 시스템
PHPJabbers Appointment Scheduler 2.0 및 이전 버전
⚔️ 공격 벡터
HTTP GET/POST 요청으로 pjBackup 컨트롤러의 pjActionDownload 액션에 '../' 시퀀스를 포함한 id 파라미터 전송
🛡️ 대응 방법
PHPJabbers Appointment Scheduler를 최신 버전으로 업데이트하거나 입력값의 '..' 문자 필터링 및 경로 정규화를 구현
🔧 검증 코드
설치된 PHPJabbers Appointment Scheduler를 찾으면 설치 경로 확인 후 버전 파일이나 설치 폴더 이름에서 버전 확인, 결과 없으면 해당 애플리케이션이 설치되지 않은 상태
find /var/www -type d -name '*appointment*' -o -name '*pjabber*' 2>/dev/null | head -3