Читать книгу Na tropie błędów. Przewodnik hakerski - Peter Yaworski - Страница 38
5.
HTML INJECTION I FAŁSZOWANIE TREŚCI
Content spoofing w Within Security
ОглавлениеPoziom trudności: Niski
URL: https://withinsecurity.com/wp-login.php
Źródło: https://hackerone.com/reports/111094/
Data zgłoszenia: 16 stycznia 2016
Nagroda: 250 $
Within Security to strona należąca do HackerOne, przeznaczona do dzielenia się nowościami ze świata bezpieczeństwa. Została zbudowana na Wordpressie i zawierała standardową ścieżkę logowania na stronie withinsecurity.com/wp-login.php. Haker dostrzegł, że podczas procesu logowania, w razie błędu Within Security wyświetlał wiadomość access_denied, która odpowiadała parametrowi error w adresie:
https://withinsecurity.com/wp- login.php?error=access_denied
Widząc to, haker spróbował zmienić wartość tego parametru. W rezultacie strona wyświetlała wartości przekazane do parametru jako część wiadomości o błędzie, a nawet dekodowała znaki URI. Tak wygląda zmodyfikowany URL, którego użył haker:
https://withinsecurity.com/wp-login.php?error=Your%20account%20has%20been%20hacked%2C%20Please%20call%20us%20this%20number%20919876543210%20OR%20Drop%20mail%20at%20attacker%40mail.com&state=cb04a91ac5%257Cht tps%253A%252F%252Fwithinsecurity.com%252Fwp-admin%252F#
Parametr został wyrenderowany w postaci wiadomości o błędzie, znajdującej się nad polem logowania w Wordpressie. Wiadomość zlecała użytkownikowi kontakt z numerem telefonu bądź adresem e-mail, należącymi do atakującego.
Kluczem w tym przykładzie było zauważenie parametru w URL-u, który był wyświetlany na stronie. Wystarczyła zwykła próba zmiany wartości parametru, by zdemaskować podatność.
Wnioski
Miej na uwadze parametry URL, które są przekazywane i renderowane jako zawartość strony. Mogą ujawnić podatności typu injection, które prowadzą do ataków phishingowych. Możliwość kontroli parametrów URL renderowanych na stronie czasami może doprowadzić do ataków cross-site scripting, które omówimy w rozdziale 7. W pozostałych przypadkach takie zachowanie można wykorzystać tylko w atakach HTML injection i content spoofing. Ważne do zapamiętania jest to, że chociaż zgłoszenie zostało nagrodzone tylko 250 $, była to minimalna kwota wynagrodzenia w programie Within Security. Nie wszystkie programy cenią bądź w ogóle nagradzają podatności HTML injection i content spoofing, ponieważ, podobnie jak w inżynierii społecznej, zależą one od tego, czy wstrzyknięty tekst będzie w stanie oszukać ofiarę.
Rysunek 5.1. Atakujący dodał takie „ostrzeżenie” do strony administracyjnej WordPress.