W atakach XSS treść podana przez użytkownika jest wyświetlana bezpośrednio w przeglądarce. Wygląd każdej strony internetowej opiera się na połączeniu HTML, CSS i JavaScript. Jeżeli użytkownik kontroluje to, co się wyświetla - może dodać swój własny kod do naszej strony.
Podatności XSS możemy podzielić na 3 główne rodzaje.
W Reflected XSS parametr od użytkownika jest wyświetlany na stronie od razu bez żadnej lub z drobną modyfikacją. Parametr ten może być częścią adresu URL lub też polem wysłanym w zwykłym formularzu. Może też być nagłówkiem wysyłanym przez przeglądarkę, chociażby polem User-agent.
Tylko, że aby ten rodzaj ataku zadziałał - należy jakoś przesłać użytkownikowi złośliwy kod. Zazwyczaj robi się to wykorzystując długi adres URL, w który ofiara musi kliknąć. Ten problem rozwiązuje atak stored XSS. Tutaj payload jest najpierw zapisywany w bazie danych. Dzięki temu, użytkownik wchodzący na podatną podstronę, pobiera wcześniej zapisane dane z bazy i je wyświetla. Nie musi, zatem klikać w specjalnie spreparowany odnośnik.
Ale kod HTML może być także tworzony z poziomu JavaScript. Jeżeli więc kod JS pobiera jakiś parametr z adresu URL a następnie na jego podstawie tworzy kawałek HTML - mamy do czynienia z podatnością DOM Based.
Wygląd każdej strony internetowej opiera się na połączeniu HTML, CSS i JavaScript.
Jeżeli użytkownik kontroluje to, co się wyświetla - może dodać swój własny kod do naszej strony.
Podatności XSS możemy podzielić na 3 główne rodzaje.
W Reflected XSS parametr od użytkownika jest wyświetlany na stronie od razu bez żadnej lub z drobną modyfikacją.
Parametr ten może być częścią adresu URL lub też polem wysłanym w zwykłym formularzu.
Może też być nagłówkiem wysyłanym przez przeglądarkę, chociażby polem
User-agent
.Tylko, że aby ten rodzaj ataku zadziałał - należy jakoś przesłać użytkownikowi złośliwy kod.
Zazwyczaj robi się to wykorzystując długi adres URL, w który ofiara musi kliknąć.
Ten problem rozwiązuje atak stored XSS.
Tutaj payload jest najpierw zapisywany w bazie danych.
Dzięki temu, użytkownik wchodzący na podatną podstronę, pobiera wcześniej zapisane dane z bazy i je wyświetla.
Nie musi, zatem klikać w specjalnie spreparowany odnośnik.
Ale kod HTML może być także tworzony z poziomu JavaScript.
Jeżeli więc kod JS pobiera jakiś parametr z adresu URL a następnie na jego podstawie tworzy kawałek HTML - mamy do czynienia z podatnością DOM Based.
Subskrybuj kanał na YouTube
Masz pytanie na temat bezpieczeństwa? Zadaj je na grupie od 0 do pentestera na Facebooku.
Jeżeli chcesz być wołany dodaj się do Mirkolisty.
#od0dopentestera #programowanie #security #informatyka #it #nauka #technologia #ciekawostki #gruparatowaniapoziomu #bezpieczenstwo #webdev #programista15k
Możesz zapisać/wypisać się klikając na nazwę listy.
Sponsor: Grupa Facebookowa z promocjami z chińskich sklepów
! @KacperSzurek @Mashe @UrimTumim @porque @NERP @Smevios @Jakplus @Pioneer95 @ThatPart @szczeppan @Zielarz25 @press2210 @Dorrek @hiroszi @jerekp @Dyktus @bovver91 @Campell @ghostd @heow @Bakanany @arais_siara @Pies_Benek @HeinzDundersztyc @johnyboy @MojeTrzecieKonto @Deflaut @cytawek @dziki_bak @balor @elpredatoro @notoniewiem @czechu @arba @Wroneczek @xDRpl @umiarkowany_ekstremista @bartex121 @madox @porbono @adrpan @Ravciu @brudny @luznoluzno @phund @int @tomek4 @sebekk23 @Melisandre @