🇰🇷 한글 설명
ARMBot의 upload.php에서 인증 없이 임의의 파일을 업로드할 수 있는 취약점입니다. 공격자는 경로 순회 시퀀스(../public_html/)를 사용하여 웹 루트에 PHP 파일을 작성하고 원격 코드 실행을 달성할 수 있습니다.
💡 쉬운 설명
ARMBot이라는 프로그램의 파일 업로드 기능에 보안 검사가 없어서, 누구나 악성 파일을 업로드할 수 있습니다. 업로드된 PHP 파일이 실행되면서 서버를 완전히 제어당할 수 있습니다.
🇺🇸 원문 (English)
ARMBot contains an unrestricted file upload vulnerability in upload.php that allows unauthenticated attackers to upload arbitrary files by manipulating the file parameter with path traversal sequences. Attackers can upload PHP files with traversal payloads ../public_html/ to write executable code to the web root and achieve remote code execution.
📍 영향받는 시스템
ARMBot (모든 버전 - 버전 명시 필요)
⚔️ 공격 벡터
upload.php의 file 파라미터에 경로 순회 시퀀스(../)를 포함한 PHP 파일을 POST 요청으로 업로드
🛡️ 대응 방법
upload.php에서 파일명 검증, 파일 타입 검사, 경로 순회 방지(basename 함수 사용) 등의 보안 검사 추가 및 최신 버전으로 업데이트
🔧 검증 코드
업로드 응답을 확인하여 ARMBot의 upload.php가 존재하고 파일 검증 없이 업로드를 허용하는지 확인합니다. 성공/오류 메시지로 취약점 존재 여부를 판단합니다.
curl -X POST -F '[email protected]' http://target/upload.php 2>/dev/null | grep -i 'success\|uploaded\|error' || echo 'ARMBot not detected'