Client Side Template Injection (CSTI)
WhiteIntel to wyszukiwarka zasilana przez dark web, która oferuje darmowe funkcje do sprawdzania, czy firma lub jej klienci zostali skompromitowani przez złośliwe oprogramowanie kradnące dane.
Ich głównym celem WhiteIntel jest zwalczanie przejęć kont i ataków ransomware wynikających z złośliwego oprogramowania kradnącego informacje.
Możesz sprawdzić ich stronę internetową i wypróbować ich silnik za darmo pod adresem:
Podsumowanie
To jest jak Wstrzykiwanie szablonów po stronie serwera, ale po stronie klienta. SSTI może pozwolić Ci na wykonanie kodu na zdalnym serwerze, a CSTI może pozwolić Ci na wykonanie dowolnego kodu JavaScript w przeglądarce ofiary.
Testowanie tej podatności jest bardzo podobne jak w przypadku SSTI, interpreter oczekuje szablonu i go wykonuje. Na przykład, z ładunkiem jak {{ 7-7 }}
, jeśli aplikacja jest podatna, zobaczysz 0
, a jeśli nie, zobaczysz oryginał: {{ 7-7 }}
AngularJS
AngularJS to powszechnie używany framework JavaScript, który współdziała z HTML za pomocą atrybutów znanych jako dyrektywy, zauważalną z nich jest ng-app
. Ta dyrektywa pozwala AngularJS przetwarzać zawartość HTML, umożliwiając wykonanie wyrażeń JavaScript wewnątrz podwójnych nawiasów klamrowych.
W sytuacjach, gdy dane wprowadzane przez użytkownika są dynamicznie wstawiane do treści HTML oznaczonej jako ng-app
, możliwe jest wykonanie dowolnego kodu JavaScript. Można to osiągnąć, wykorzystując składnię AngularJS wewnątrz danych wejściowych. Poniżej znajdują się przykłady demonstrujące, jak można wykonać kod JavaScript:
Możesz znaleźć bardzo podstawowy przykład online tej podatności w AngularJS na http://jsfiddle.net/2zs2yv7o/ oraz na stronie Burp Suite Academy
Angular 1.6 usunął piaskownicę, więc od tej wersji ładunek taki jak {{constructor.constructor('alert(1)')()}}
lub <input ng-focus=$event.view.alert('XSS')>
powinien działać.
VueJS
Możesz znaleźć podatną implementację Vue pod adresem https://vue-client-side-template-injection-example.azu.now.sh/
Działający ładunek: https://vue-client-side-template-injection-example.azu.now.sh/?name=%7B%7Bthis.constructor.constructor(%27alert(%22foo%22)%27)()%7D%
A źródłowy kod przykładowej podatnej aplikacji znajdziesz tutaj: https://github.com/azu/vue-client-side-template-injection-example
V3
Naprawdę dobry post na temat CSTI w VUE można znaleźć pod adresem https://portswigger.net/research/evading-defences-using-vuejs-script-gadgets
Kredyt: Gareth Heyes, Lewis Ardern & PwnFunction
V2
Kredyt: Mario Heiderich
Sprawdź więcej ładunków VUE w https://portswigger.net/web-security/cross-site-scripting/cheat-sheet#vuejs-reflected
Mavo
Ładunek:
Więcej ładunków w https://portswigger.net/research/abusing-javascript-frameworks-to-bypass-xss-mitigations
Lista detekcji ataków Brute-Force
WhiteIntel to wyszukiwarka zasilana przez dark web, która oferuje darmowe funkcjonalności do sprawdzania, czy firma lub jej klienci zostali skompromitowani przez malware'y kradnące informacje.
Ich głównym celem WhiteIntel jest zwalczanie przejęć kont i ataków ransomware wynikających z malware'ów kradnących informacje.
Możesz sprawdzić ich stronę internetową i wypróbować ich silnik za darmo na:
Last updated