Jak kraść pieniądze
w sieci?
wykład nieetyczny ;)
UNKNOW
Jakub Mrugalski
Janusz
• Ma mało pieniędzy, żonę,
trójkę dzieci, hipotekę na
głowie i nie może znaleźć
pracy
• zna się odrobinę na
programowaniu
(frontend + PHP)
• po prostu chce dorobić
• chce dorobić za wszelką
cenę…
j4n00.sh
Może zarobię trochę kasy w
programach partnerskich?
Dostaniemy pieniądze za dokonane zakupy
Aby zarabiać w PP, musimy
posiadać popularną stronę WWW…
Sprawmy więc, aby stała się popularna ]:>
Typowy spam mailowy
Minusy:
• potrzebujemy serwera do wysyłki
• szybko trafimy na czarną listę (RBL)
• a kto dziś nie ma filtrów antyspamowych?
Użyjmy cudzych serwerów :)
• zwrotki mailowe
• formularze kontaktowe
• dziurawe skrypty PHP
SPF + PTR + DKIM
Spam na blogach
• Komentarze
• Statystyki GA / serwera
• Formularz kontaktowy
• Trackbacki
Spam w wyszukiwarce
ScrapeBox
i przyjaciele
Strona powinna
się rozprzestrzeniać
‘wirusowo’
• automatyczny like
• automatyczny share (niczym captcha)
Przecież na stronie spamera
nikt nic nie kupi…
• a po co ma kupować? cookie stuffing!
• <img src="link partnerski" />
• <iframe src="link partnerski" />
Janusz postanowił
handlować przedmiotami w
grze online
Potrzebujemy przejąć sesję
i wykonać kilka operacji w grze
• Co to jest sesja?
• Gdzie trzymane są dane sesyjne?
• Jak zabezpieczyć sesję przed kradzieżą?
• Kradzież własnej sesji?
• Czy dane z wnętrza sesji są zaufane?
Janusz chciał wygrać
kasę w konkursie…
Do konkursu można było
wysłać własne zdjęcie!
Jak sprawdzić poprawność
nadesłanej fotki?
• poprawne rozszerzenie?
• dozwolony content-type?
• ma odpowiednie wymiary?
Jedyna sensowna metoda?
wygenerowanie obrazka
na nowo!
A co jeśli serwis nie posiada
uploadu?
to wyślij plik do wyszukiwarki ;)
Głosowanie na zdjęcie
/search.php?q=koty
Zabezpieczenia:
• długość $q > 3 znaki
• htmlspecialchars($q)
• mysql_real_escape_string($q)
Głosowanie na zdjęcie
<img src="/search.php?q=%%%%" />
sprawdzaj zakres podawanych znaków…
Głosowanie na zdjęcie
na-ankieta.pl/index.php?komunikat=<p>Dziekuje+za+odda
XSS
Głosowanie na zdjęcie
na-ankieta.pl/index.php?komunikat=<p>Dziekuje+za+odda
Nadal XSS
Głosowanie na zdjęcie
<p onmouseover="exploit-here">Thx!</p>
Głosowanie na zdjęcie
Zalecenia:
• nie przyjmujemy kodu HTML od usera
• strip_tags() + htmlspecialchars()
• używamy predefiniowanych komunikatów
Głosowanie na zdjęcie
/glosuj.php?foto_id=31337
Głosowanie na zdjęcie
<img src="/glosuj.php?foto_id=31337" />
XSRF
Zmiany programisty:
• dodał token anty-xsrf
• zmienił metodę wysyłania danych na POST
Głosowanie na zdjęcie
• Na stronie intensywnie wykorzystywane były pliki SWF
• Webmaster stworzył politykę bezpieczeństwa dla Flasha
• Szkoda tylko, że taką…
Głosowanie na zdjęcie
System ładowania podstron nie był zbyt ambitny…
Głosowanie na zdjęcie
System ładowania podstron nie był zbyt ambitny…
plik.php?page=../../../../../dowolny.plik%00
A może przerobić
odwiedzających w botnet?
Prosta sztuczka wymuszająca instalację softu
Oszustwa SMS-owe
• Strona z ofertą jest weryfikowana przez pośrednika
• Wrzucanie strony do iframe + przycinanie jej
• Wymuszanie wysłania SMSa
Janusz się obłowił, a my
musimy kończyć…
UNKNOW
www: UW-TEAM.ORG
twitter: @uwteam
wykop: imlmpe
youtube: uwteamorg
e-mail: unknow@uw-team.org
Tak, to już jest koniec :]

Jak kraść pieniądze w sieci? - przegląd technik używanych przez cyberprzestępców

Editor's Notes

  • #8 RBL = Real-time Blackhole List
  • #9 DKIM = Domain Key Identified Mail
  • #11 RBL = Real-time Blackhole List
  • #12 TrackBacks, contact forms, comments, captcha people!
  • #18 w ankiecie trzeba zaznaczyć checkboxa przy wybranej fotce i kliknąć na ZAGŁOSUJ!
  • #29 samowykopujący się wpis usuwanie wpisów blogera
  • #33 RBL = Real-time Blackhole List