Łukasz Pilorz
msgbartop
Bezpieczeństwo aplikacji PHP
msgbarbottom

16 May 07 Web Based Malware

Aktualizacja (17 maja): Wbrew temu, co twierdzi większość serwisów informacyjnych, raport pracowników Google nie stwierdza, że 10% stron internetowych zawiera malware. Liczba ta dotyczy 450 tysięcy z 4,5 miliona stron, które zostały wybrane jako podejrzane podczas wstępnej selekcji. Faktyczna liczba badanych stron była znacznie większa - a więc szkodliwe jest nie 10%, ale ułamek promila.

Na stronie HotBots udostępnione zostały materiały z tegorocznych warsztatów poświęconych botnetom. Na szczególną uwagę zasługuje The Ghost In The Browser. Analysis of Web Based Malware, przygotowany przez pracowników Google. Przedstawia on najpopularniejsze metody rozprzestrzeniania złośliwego oprogramowania poprzez strony internetowe:

  • włamania mające na celu modyfikację kodu aplikacji na serwerze (np. dodanie ramki ze złośliwą “stroną-matką”)
  • ataki XSS typu persistent (szczególnie w aplikacjach blogowych, forach internetowych i serwisach społecznościowych)
  • wykorzystanie reklam, statystyk lub innych skryptów z zewnętrzej domeny (umieszczonych przez twórcę strony w dobrej wierze)

Zwłaszcza ostatni punkt jest niepokojący, ponieważ tego typu narzędzia skryptowe są bardzo powszechne. Jako ciekawostkę autorzy podają fakt, że jeden z obserwowanych skryptów statystyk funkcjonował poprawnie przez cztery lata, zanim przekształcił się w złośliwy kod. To cenne ostrzeżenie dla wszystkich serwisów wykorzystujących jakiekolwiek skrypty z zewnętrznej domeny, a zwłaszcza te mniej zaufane niż Gemius czy Google Analytics.

Złośliwe strony wykorzystują JavaScript również do rozpoznania oprogramowania stosowanego przez ofiarę, i serwowania na tej podstawie odpowiedniego exploita. Demo narzędzia realizującego podobne zadanie można znaleźć tutaj

Zainteresowanym tą tematyką polecam pełny tekst: The Ghost In The Browser. Analysis of Web Based Malware.

04 May 07 Cross Site Scripting Attacks: Xss Exploits and Defense

Od niedawna na Amazon można zamówić niedostępną jeszcze książkę Cross Site Scripting Attacks: Xss Exploits and Defense, poruszającą tematykę zaawansowanych ataków XSS. Spis treści i próbny rozdział można ściągnąć z ha.ckers.org.

Lista autorów jest imponująca:

  • Jeremiah Grossman (były oficer bezpieczeństwa Yahoo, obecnie CTO WhiteHat Security)
  • Robert Hansen (RSnake z ha.ckers.org)
  • Petko D. Petkov (pdp z gnucitizen.org)
  • Anton Rager (autor XSS-Proxy)
  • Seth Fogie

Spis treści wygląda znajomo dla każdego, kto zagląda na sla.ckers.org, chociaż pojawia się też kilka tematów nie poruszanych na tym forum. Zaskoczyło mnie, że tak skromna część poświęcona jest obronie przed XSS - moim zdaniem to temat wart przynajmniej kolejnych pięćdziesięciu stron.

Dostępny do ściągnięcia rozdział został wybrany nieprzypadkowo. Zawiera opis kilku z najciekawszych metod ataków: anti-DNS-pinning, wykorzystanie mhtml-redirect, ataki z wykorzystaniem innych protokołów - tematy jeszcze niedawno bardzo gorące w “społeczności XSS”.

Książka zapowiada się bardzo ciekawie, ale przypuszczam, że w Polsce się nie ukaże, podobnie jak wiele równie wartościowych pozycji. Zainteresowanych zapraszam do serwisu Amazon.

03 May 07 Wstrzykiwanie \n w preg_match()

Przykład do Holes in most preg_match() filters Stefana Essera:

Praktyczne wykorzystanie tego typu błędu, jeśli nie korzystamy z modyfikatora “m”, jest mało prawdopodobne, ale w pewnych okoliczościach może prowadzić do poważnych konsekwencji. Dla pewności warto wykorzystać modyfikator D (mało znany, bo nieobecny w Perlu) lub \A i \z zamiast ^ i $.

01 May 07 Uwaga na grafikę i MP4

W ciągu ostatnich kilku dni w sieci pojawiły się exploity wykorzystujące niezałatane dotąd luki w Winampie (pliki MP4), Photoshopie (BMP/DIB/RLE i PNG), GIMPie (RAS) oraz IrfanView (IFF). Pliki te mogą być ukryte pod innymi rozszerzeniami, więc warto zachować ostrożność przy otwieraniu niezaufanych plików graficznych i dźwiękowych.

01 May 07 Jak radzić sobie z zapomnianym hasłem

Logujemy się po kilku tygodniach przerwy do jakiegoś serwisu społecznościowego. Chyba pamiętamy hasło. Okazuje się, że przy pierwszej próbie nie udało się zalogować. Pewnie zrobiliśmy literówkę, więc próbujemy ponownie - ale nadal nic. Może to jednak było inne hasło? Próbujemy kolejne: z bloga, z konta pocztowego, z banku… Przesyłamy je w nieszyfrowanej postaci, a na dodatek do niezaufanego serwisu.

Jak uniknąć tej sytuacji?

  • Jeżeli zapomnieliśmy hasła, lepiej wykorzystać mechanizm przypomnienia dostępny w serwisie, niż próbować wszystkie hasła po kolei. Nie dotyczy to kont pocztowych - w ich przypadku warto już przy rejestracji zablokować przypomnienie, a hasło dobrze zapamiętać.
  • Nie używać w niezaufanych serwisach takich haseł, które są dla nas istotne. Hasła do banku czy konta pocztowego powinny być unikalne. Jeśli mamy problem z zapamiętaniem wielu haseł, możemy niektóre zapisać na karteczce schowanej np. w portfelu lub dokumentach - są to miejsca dobrze przez nas strzeżone. Najlepiej nie zapisywać haseł na papierze w czystej postaci, ale zamiast tego podpowiedź lub pierwsze kilka znaków. Można też dorzucić parę nadmiarowych liter, jeśli będziemy pamiętać, że nie należą do hasła (np. co drugi znak).
  • Warto wykorzystywać mechanizmy automatycznego zapamiętywania haseł w przeglądarce, ale wyłącznie do mniej ważnych serwisów. Nie należy zapisywać w przeglądarce istotnych haseł. W ten sposób odciążymy swoją pamięć, nie zmniejszając jednocześnie bezpieczeństwa konta pocztowego lub bankowego.
  • Jedną ze sztuczek, która pozwala szybko zapamiętywać nowe hasło, jest ustawienie go na kilkanaście dni w logowaniu do domowego komputera (lub w wygaszaczu ekranu).