🇰🇷 한글 설명
PHPortfolio 1.3 버전의 photo.php에 있는 SQL injection 취약점으로, id 매개변수를 통해 검증되지 않은 SQL 명령어가 직접 실행될 수 있습니다. 원격 공격자는 특수 문자가 포함된 id 값을 전송하여 데이터베이스 구조를 파악하고 데이터를 무단으로 조회, 수정, 삭제할 수 있습니다.
💡 쉬운 설명
PHPortfolio라는 포토 갤러리 프로그램에서 사진을 보여주는 photo.php 파일이 안전하지 않게 만들어져 있어서, 해커가 악의적인 SQL 명령어를 보내면 데이터베이스 정보를 빼낼 수 있습니다. 마치 집의 문이 제대로 잠겨 있지 않아서 누구든 들어와 물건을 가져갈 수 있는 것과 같은 상황입니다.
🇺🇸 원문 (English)
SQL injection vulnerability in photo.php in PHPortfolio, possibly 1.3, allows remote attackers to execute arbitrary SQL commands via the id parameter.
📍 영향받는 시스템
PHPortfolio v1.3 (정확한 영향 범위 미확인, photo.php가 존재하는 모든 버전 가능)
⚔️ 공격 벡터
HTTP GET/POST 요청을 통해 photo.php?id=[SQL injection payload] 형태로 악성 SQL 코드 주입
🛡️ 대응 방법
PHPortfolio를 최신 버전으로 업데이트하거나, photo.php 파일의 id 매개변수에 대해 prepared statements 또는 parameterized queries를 적용하여 입력값 검증 강화
🔧 검증 코드
결과에 photo.php가 있으면 PHPortfolio가 설치된 것이며, 해당 파일에서 SQL 쿼리가 id 매개변수를 직접 사용하는지 grep으로 확인 (grep -n '$_GET\[.*id' photo.php)하여 취약점 존재 여부를 판단할 수 있습니다.
find / -name 'photo.php' -type f 2>/dev/null