🇰🇷 한글 설명
유효한 인증을 요구하는 파일 전송 인터페이스에서 파일 이름에 포함된 쉘 메타문자를 제한하지 않는 취약점이 발견되었습니다. 인증된 공격자가 악성 명령어가 포함된 파일 이름을 업로드하면, 이후 자동화된 프로세스가 이를 시스템 명령어로 실행하여 임의의 OS 명령을 수행할 수 있습니다.
💡 쉬운 설명
로그인한 사용자가 파일 이름을 특수 기호가 섞인 명령어로 만들어 올리면, 서버가 이를 명령어로 착각해 실행해버리는 문제입니다. 이를 통해 공격자는 서버의 데이터를 읽거나 수정하고 내부 네트워크로 침투할 수 있습니다.
🇺🇸 원문 (English)
A file-transfer interface that requires valid credentials accepts attacker-controlled filenames without restricting shell metacharacters. An automated process later constructs and runs a system command using the uploaded file's name, allowing an authenticated attacker to embed and execute arbitrary operating system commands with the privileges of that process. This allows an attacker to read and modify ingested log data, and could provide a foothold for further movement within the internal network.
📍 영향받는 시스템
파일 전송 인터페이스를 사용하는 인증 기반 시스템 (버전 미상)
⚔️ 공격 벡터
인증된 사용자가 쉘 메타문자가 포함된 파일 이름을 업로드하여 명령 주입(Command Injection) 수행
🛡️ 대응 방법
파일 이름 입력값에 대한 쉘 메타문자 필터링 적용 및 시스템 명령 실행 방식의 보안 강화
🔧 검증 코드
명령어 실행 결과로 세미콜론(;), 앰퍼샌드(&), 파이프(|) 등이 포함된 파일명이 검색된다면 취약한 파일명이 존재할 가능성이 있습니다.
find /path/to/upload/dir -name '*;*' -o -name '*&*' -o -name '*|*' 2>/dev/null