Edge Side Inclusion Injection (ESII)
Last updated
Last updated
Kiçik XML teqlərinə əsaslanan və bir çox məşhur HTTP surroqatlarında (əks proksilər, yük balanslaşdırıcıları, keşləmə serverləri, proxy serverlər) istifadə olunan dil. ESI üçün ümumi istifadə hallarından biri dinamik məlumat parçaları ilə əsasən statik səhifəyə xidmət göstərməkdir. ESI, tərtibatçılara səhifənin dinamik hissələrini ESI teqləri ilə əvəz etməyə imkan verməklə keş çevikliyini əlavə edir. Beləliklə, səhifə tələb olunduqda, ESI teqləri proksi tərəfindən işlənir və gətirilir, arxa uç proqram serverlərinin işini təmin edir. Aşağıdakı şəkil ESI-nin tipik istifadə halını göstərmək üçün istifadə edilə bilər, burada hava veb-saytı şəhərin hava səhifəsinin məzmununu keşləyir. Dinamik məlumatlar daha sonra API son nöqtəsinə işarə edən müvafiq ESI teqləri ilə əvəz olunacaq.
ESI sintaksisi olduqca sadədir. Yuxarıdakı nümunənin HTML faylı belə görünəcək:
HTTP surroqatları yuxarı server tərəfindən təmin edilən qanuni ESI teqləri ilə HTTP cavabında yeridilmiş zərərli olanları ayırd edə bilmir. Başqa sözlə, təcavüzkar ESI teqlərini HTTP cavabında uğurla əks etdirə bilsə, surroqat onları kor-koranə təhlil edəcək və qiymətləndirəcək və onların yuxarı serverdən təqdim edilən qanuni teqlər olduğuna inanacaq.
Uğurlu ESI hücumu Server Side Request Forgery (SSRF), HTTPOnly kuki azaldılması bayrağını aşan müxtəlif Saytlararası Skript (XSS) vektorlarına və server tərəfindən xidmətdən imtinaya səbəb ola bilər.
Server-Side Request Forgery (SSRF)
Təcavüzkar HTTP cavabına ESI daxil etiketi əlavə edə bilsə, onlar surroqat server (tətbiq serveri deyil) kontekstində SSRF hücumlarını effektiv şəkildə həyata keçirə bilər.
Təcavüzkar ESI faydalı yükü olan surroqat serverdən keçən sorğunu yerinə yetirir və onu cavabda əks etdirmək üçün backend serverinə nail olmağa çalışır.
Surroqat server sorğunu qəbul edir və onu müvafiq backend serverinə yönləndirir
Tətbiq serveri cavabda ESI yükünü əks etdirir, həmin cavabı surroqat serverə göndərir.
Surroqat server cavabı alır, ESI teqlərinin olub olmadığını yoxlamaq üçün onu təhlil edir. Surroqat server əks olunan ESI etiketini təhlil edir və evil.com-a yan sorğunu yerinə yetirir.
Surroqat server evil.com-dan yan sorğu alır və onu backend serverindən ilkin cavaba əlavə edir.
Surroqat server tam cavabı müştəriyə göndərir.
İstifadəçi daxiletmələrinin yoxlanması və sanitarlaşdırılması
İstifadəçi girişindən qaçan Çıxış Kodlaşdırması, beləliklə brauzer onu kod kimi deyil, yalnız məlumat kimi qəbul edir
ESI tərəfindən əldə edilə bilən domenlərin və ya hostların ağ siyahıya daxil edilməsi
WAF-dan istifadə