🇰🇷 한글 설명
Flat PHP Board 1.2 이하의 index.php에서 디렉토리 트래버설 취약점으로 인해 사용자 등록 시 username에 '..'을 포함하면 임의의 파일을 서버에 생성할 수 있습니다. 또한 topic이나 username 파라미터에 '..'을 포함하면 PHP 파일을 포함한 임의의 파일을 읽을 수 있습니다.
💡 쉬운 설명
게시판 소프트웨어에서 경로 조작 문자('..')를 사용해 서버의 폴더 구조를 벗어나 파일을 읽고 쓸 수 있는 결함입니다. 공격자가 민감한 설정 파일이나 시스템 파일에 접근하여 정보를 탈취하거나 악성 파일을 생성할 수 있습니다.
🇺🇸 원문 (English)
Multiple directory traversal vulnerabilities in index.php in Flat PHP Board 1.2 and earlier allow remote attackers to (1) create arbitrary files via a .. (dot dot) in the username parameter when registering a user account, and (2) read arbitrary PHP files via a .. (dot dot) in (a) the topic parameter in a topic action or (b) the username parameter in a viewprofile action.
📍 영향받는 시스템
Flat PHP Board 버전 1.2 이하
⚔️ 공격 벡터
사용자 등록 시 username에 '..'를 포함하거나, topic/username 파라미터에 '..'를 포함한 HTTP 요청으로 파일 생성/읽기 실행
🛡️ 대응 방법
Flat PHP Board를 최신 버전으로 업데이트하고 모든 사용자 입력에서 경로 트래버설 문자('.', '/', '\\\')를 필터링 또는 제거
🔧 검증 코드
결과가 반환되면 취약한 Flat PHP Board가 설치되어 있고, 아무것도 찾지 못하면 해당 소프트웨어가 설치되지 않았거나 이미 업데이트된 상태입니다.
find / -name 'index.php' -type f 2>/dev/null | xargs grep -l 'username.*\\$_' | grep -i 'flat\\|board' | head -1