
CVE-2026-36227에 대한 양성 개념 증명(PoC)입니다. Easy Chat Server 3.1 사용자 등록에서의 경로 탐색 취약점입니다. 승인된 보안 연구 및 로컬 재현을 위해 UserName 매개변수를 통해 인증되지 않은 파일 쓰기를 시연합니다.
이 저장소는 Easy Chat Server 3.1 사용자 등록 처리에서 발생하는 경로 탐색 문제인 CVE-2026-36227에 대한 무해한 개념 증명을 포함합니다.
이 저장소는 승인된 보안 연구 및 로컬 재현 전용입니다. 소유하지 않았거나 명시적 테스트 권한이 없는 시스템에 사용하지 마십시오.
Easy Chat Server 3.1은 POST /registresult.htm을 통해 등록 데이터를 수락합니다. UserName 매개변수는 애플리케이션에서 사용되기 전에 충분히 살균되지 않습니다. ../../ecs-traversal-proof.txt와 같은 탐색 스타일 값은 애플리케이션이 의도된 사용자 등록 경로 밖에 쓰도록 할 수 있습니다.
공개 PoC는 의도적으로 무해한 증명 파일명을 사용하며 실행 가능한 웹쉘이나 명령 실행 콘텐츠를 포함하지 않습니다.
Vaibhav D. Barkade
/registresult.htmUserName소유하거나 테스트 권한이 있는 랩 인스턴스에 대해 실행:
python3 poc.py 127.0.0.1 80
요청을 전송하지 않고 출력:
python3 poc.py 127.0.0.1 80 --dry-run
사용자 정의 탐색 증명 값 사용:
python3 poc.py 127.0.0.1 80 --username '../../ecs-traversal-proof.txt'
대상이 취약한 경우 서버는 탐색 제어된 UserName 값으로 등록 요청을 처리합니다. 운영자는 Easy Chat Server 설치 디렉터리 또는 web/root 디렉터리에서 결과 증명 아티팩트를 확인해야 합니다.
제안된 심각도는 배포 환경과 도달 가능한 쓰기 경로에 따라 다릅니다. 인증되지 않은 원격 사용자가 웹 실행 가능 경로에 쓸 수 있는 경우 이 문제는 원격 코드 실행으로 이어질 수 있으며 높음 또는 심각으로 처리해야 합니다. 쓰기가 실행 불가능한 위치로 제한된 경우 직접적인 영향은 경로 탐색 및 무단 파일 쓰기입니다.
UserName에서 경로 구분자 및 탐색 시퀀스를 거부합니다.