Poszukiwanie błędów typu DOM Based XSS polega na odnajdywaniu takich miejsc w skrypcie strony, które pobierają dane od użytkownika, a następnie przekazują je do potencjalnie niebezpiecznych miejsc w stylu innerHTML bez odpowiedniej weryfikacji. #od0dopentestera
Jednym z obecnie stosowanych rozwiązań, jest zamiana problematycznych funkcji na ich bezpieczniejsze odpowiedniki.
I tak zamiast innerHTML można użyć innerText.
Problem w tym, że taka zmiana nie zawsze jest możliwa.

Postanowiono zatem monitorować potencjalnie niebezpieczne miejsca.
Zmieniono silnik przeglądarki w taki sposób, aby funkcje, których można użyć do ataków XSS, przestały przyjmować string.
Zamiast tego akceptują jedynie obiekt TrustedHTML, bądź inny, podobny, w zależności od oczekiwanego typu.
Ten to obiekt tworzy się przy pomocy nowo stworzonego API createPolicy.

W przypadku gdy użytkownik włączy ten mechanizm i spróbuje przekazać niepoprawny typ – otrzyma błąd JavaScript.
To sprawia, że osoby zajmujące się bezpieczeństwem nie muszą już analizować całego kodu witryny, a tylko jego fragmenty, w których to implementuje się polityki.
W takim podejściu bowiem w ostatecznym rozrachunku dane od użytkownika zawsze pojawią się właśnie tam.
Jeżeli zatem polityka odpowiednio zweryfikuje podane dane – kod będzie bezpieczny.

Subskrybuj kanał na YouTube
Masz pytanie na temat bezpieczeństwa? Zadaj je na grupie od 0 do pentestera na Facebooku.
Podcast dostępny na Google i Apple Podcasts oraz Spotify i Anchor.
Jeżeli chcesz być wołany dodaj się do Mirkolisty.

#bezpieczenstwo #programowanie #informatyka #it #nauka #technologia #ciekawostki #swiat #gruparatowaniapoziomu #biznes #webdev #security #javascript #programista15k