تحدي سهل انا حاله من زمان بس اعذرني الكهربا قاطعه
دعني اشرح
اولا لدينا كود مصاب بXSS
نختبر الكود من محرر اكواد
بالمخترصر يقوم الكود بوضع المدخل داخل span
<h1>Hello <span id="name"></span></h1>
من document.getElementById("name").innerHTML = "x"
ولقد تم وضع const flag = "FLAG{XSS}";
واكيد لم تضع هباء بل ان المقصود منها هو الشئ الذي سيتم طباعته في الشاشه بواصتة window.alert(flag)
وهنا نرى انه تم استمال const
ويكون لا يوجد نص في هاذا الثابت
const name = "";
وهنا يتم استدعاء <span id="name"></span> بواسطة id
document.getElementById("name")
وهنا نرى innerHTML =name
انه يقوم بغير او اضافة قية name داخل html وفي الكود السابق عرفنا ان تسمته هكذا ""
document.getElementById("name").innerHTML = name
ولسبيل فحص الكود اكثر غيرت innerHTML = name
لهاكذا
document.getElementById("name").innerHTML = `<a onclick="alert(flag)">FLAG_XSS</a>`
والان الكود الجميل هاذا
يجعلنا نكتب html داخل span
والكود يكون معنا
هاكذا
<h1>Hello <span id="name"></span></h1>
<script>
const flag = "FLAG{XSS}";
const name = "";
document.getElementById("name").innerHTML = `<a onclick="alert(flag)">FLAG_XSS</a>`
</script>
مشاهدة المرفق 10669