Paweł Goleń, blog

Istnieje przeświadczenie, że pierwsza odpowiedź (w testach wyboru) jest najlepsza. Sam z tej “zasady” wielokrotnie korzystałem, raczej z dobrym skutkiem. Uważam ją za skuteczną nie z jakichś magicznych powodów, ale dlatego, że mam skłonność do przekombinowania. Po prostu często wydaje mi się, że odpowiedź nie może być taka prosta i na pewno musi być w pytaniu jakiś haczyk, więc doszukuję się w pytaniach i odpowiedziach drugiego i trzeciego dna. Jak pokazuje doświadczenie – zwykle tak nie jest, pytania (i odpowiedzi) są z reguły tym, czym wydają się być na pierwszy rzut oka.

Zasada “pierwsza odpowiedź jest najlepsza” nie zwalnia oczywiście od przeczytania (i zrozumienia) pytania oraz odpowiedzi. Nie zwalnia również od myślenia i zastanowienia się. To nie jest “strzelanie w ciemno”. W moim przekonaniu takie podejście jest specyficznym wykorzystaniem zasady ekonomii myślenia.

Jakie jest Wasze zdanie na ten temat? Macie podobne, czy inne doświadczenia? I tak, tym razem pytanie ma drugie dno. A może nawet trzecie :)

Oryginał tego wpisu dostępny jest pod adresem Pierwsza myśl zawsze najlepsza?

Autor: Paweł Goleń

W trakcie testów bezpieczeństwa aplikacji nie jestem zwolennikiem podejścia “czarnego pudełka”. Wychodzę z założenia, że celem testów jest identyfikacja jak największej ilości podatności oraz słabości (słabość nie jest tożsama z podatnością). Wszystko po to, by bezpieczeństwo aplikacji poprawiło się.

Czytaj dalej...

Jakiś czas temu wspominałem o scenariuszu związanym z network forensic (Network Forensic: Nitroba University Harassment Scenario). Opierając się na dostępnym w ramach tego przykładu zapisie ruchu sieciowego, pokażę małą ciekawostkę. Jak ruch NTP może posłużyć do ustalenia ile komputerów jest aktywnych za NAT.

Czytaj dalej...

Krótki i gawędziarski wpis odnośnie tego, jak szukać prostych przypadków XSS. Przynajmniej teoretycznie prostych. Jeśli mamy do czynienia z dużą aplikacją, w ramach której można zidentyfikować kilkadziesiąt punktów wejścia (w uproszczeniu – formatek), z których każdy przyjmuje kilka(naście) parametrów, dokładne przeanalizowanie każdego z nich może być niemożliwe przez ograniczenia czasowe. Z drugiej strony dobrze jest zidentyfikować te miejsca, w których dane pochodzące od użytkownika są wypisywane na stronie i w dodatku są wypisywane w kontekście, który na XSS pozwala.

Czytaj dalej...

Było sobie trzęsienie ziemi i tsunami w Japonii. Zginęło w nim prawdopodobnie około 20 000 osób (potwierdzone ofiary oraz osoby uznane za zaginione). Jednym z efektów trzęsienia i fali tsunami jest awaria w jednej z elektrowni atomowych (Fukushima). W efekcie tej awarii na całym świecie ponownie pojawiły się głosy, że należy zrezygnować z tej formy pozyskiwania energii. A w Polsce pojawił się pomysł, by o budowie elektrowni atomowej zadecydowało referendum (SLD chce referendum ws. budowy elektrowni jądrowej w Polsce).

Ja wiem, że jesteśmy krajem, w którym żyje ponad 40 milionów ekspertów. W dodatku eksperci są bardzo wszechstronni, znają się na wszystkim, od ochrony przeciwpowodziowej, katastrof lotniczych i możliwości wywoływania sztucznej mgły, aż po, jak się okazuje, fizykę jądrową, budowę i eksploatację elektrowni atomowych. Każdy z tych ekspertów dysponuje oczywiście dogłębną wiedzą o stanie naszej infrastruktury przeznaczonej do produkcji i przesyłania prądu, jak również doskonale zdaje sobie sprawę z obecnego i oczekiwanego zapotrzebowania na energię elektryczną w naszym kraju... Zdają sobie oni również doskonale sprawę gdzie w sąsiedztwie Polski znajdują się elektrownie atomowe i potrafią bez problemu uzasadnić, dlaczego budowa nowoczesnej elektrowni na terenie naszego kraju znacząco zwiększa ryzyko. Może jakiś nowatorski sposób “zamykania granic”? Coś jak pomysł Żyrinowskiego odnośnie strzelania do przelatujących nad granicą ptaków w celu walki z ptasią grypą.

Nie, nie mamy 40 milionów ekspertów, a ludzie... ech. Cytując Kazika nasz domorosły ekspert “(...) mówi to co słyszał w radio i z gazety (...)”. A na temat racjonalnego bezpieczeństwa w epoce mediów pisał Paweł Krawczyk: Racjonalne bezpieczeństwo w epoce mediów.

Pytanie – ile osób zginęło w związku z produkcją tej strasznej “energii atomowej”, a ile w związku z “konwencjonalnymi” metodami produkcji energii? Chodzi mi o cały proces od rozpoczęcia budowy elektrowni, poprzez pozyskiwanie paliwa do niej, aż po posłanie jej do odbiorców. Litościwie pominę ofiary wojen o surowce mineralne do produkcji energii potrzebne.

Nie jestem zatwardziałym zwolennikiem elektrowni atomowych, chcę jednak wiedzieć jakie mamy realne (technicznie, ekonomicznie i ekologicznie) alternatywy. Na razie jak słyszę o pomysłach typu “referendum” zaczynam się poważnie zastanawiać nad gromadzeniem zapasów świeczek, nafty i odgrzebaniem na strychu wynalazku Łukasiewicza.

Oryginał tego wpisu dostępny jest pod adresem Referendum dobre na wszystko?

Autor: Paweł Goleń

Mój eksperyment dotyczący autoryzacji transakcji składał się z dwóch części. Wyniki pierwszej części dotyczącej kodów SMS już omówiłem, teraz pora na drugi przykład symulujący działanie tokenu C/R.

Czytaj dalej...

24 marca w Krakowie odbędzie się kolejne spotkanie OWASP organizowane wspólnie z ISSA Polska. Spotkanie ponownie odbędzie się na AGH w budynku D10.

Tym razem w planie:

  • skanery kodu źródłowego,
  • dyskusja o testach penetracyjnych,

Więcej informacji między innymi tutaj: Kraków – spotkanie OWASP i ISSA 24 marca. Ciekawe czy i tym razem /var/log przygotuje transmisję ze spotkania dla tych, którzy nie mogą pojawić się na miejscu.

Oryginał tego wpisu dostępny jest pod adresem Marcowe spotkanie OWASP i ISSA

Autor: Paweł Goleń

Pora przedstawić wyniki eksperymentu dotyczącego skuteczności różnych metod autoryzacji transakcji, konkretnie SMS i tokenów C/R. Na początek opiszę wyniki dla kodów SMS. A jak przedstawiają się rezultaty? Na początek może napiszę, że w 45%25 przypadków atak kończył się sukcesem. To chyba całkiem niezły wynik w sytuacji, kiedy osoby uczestniczące w eksperymencie spodziewają się podstępu, prawda?

Czytaj dalej...

Jakieś 10-12 lat temu znacząco zmniejszyłem “konsumpcję” tradycyjnych nośników słowa pisanego (książki, gazety, czasopisma) na rzecz tego, co można było znaleźć w Internecie. Po prostu w sieci było więcej, bardziej konkretnych i aktualnych informacji. Oczywiście już wówczas pojawiał się problem z ich wiarygodnością, choć “bariera wejścia” dość skutecznie odsiewała kompletne bzdury.

Niestety, wszystko co dobre, szybko się kończy. W rezultacie ponownie udział wspomnianych tradycyjnych nośników w tym, co czytam, jest coraz większy. Dzięki temu coraz rzadziej mogę oglądać główne strony “najważniejszych portali”, które nadzorują specjaliści od wciskania tej samej informacji wiele razy, bo przecież liczy się klik i wyświetlenie reklamy.

Trzeba pogodzić się z tym, że chodzi o pieniądze. Często nie warto (w sensie – zysk nie uzasadnia poniesionych kosztów) tworzyć serwisów na wysokim merytorycznie poziomie, jeśli korzystać będzie z tego 0.1%25 społeczeństwa. W efekcie to, co jest oferowane, odpowiada temu, na co jest zapotrzebowanie. Na wyjściu jest “informacyjna” papka oparta na sensacji, plotce i cudzym niepowodzeniu (przecież nic tak nie dowartościowuje frustrata).

Można biadolić nad tym, że wszystko “schodzi na pudelka”. Można próbować apelować o “utrzymanie poziomu”, choć akurat ja nie widzę tutaj szans powodzenia. Co więcej nie widzę uzasadnienia, dlaczego miałbym komuś mówić jak ma prowadzić jego własny biznes. Za jego własne pieniądze. Mogę po prostu nie korzystać z jego usług, lub stworzyć coś alternatywnego, jeśli uważam, że zrobię to lepiej (i mam na to środki).

Coraz bardziej utwierdzam się w przekonaniu, że byłbym gotowy zapłacić za usługę, która polegałaby na otrzymywaniu w pewnym stopniu merytorycznie zweryfikowanych aktualności z wybranych przeze mnie dziedzin. Taki agregator treści z sitem na wejściu i oceną wartościowości poszczególnych informacji (nie, crowdsourcing nie działa, daje dyktaturę przeciętności). A i za samą treść też byłbym w stanie zapłacić.

Oryginał tego wpisu dostępny jest pod adresem Pudelek postępujący

Autor: Paweł Goleń

Jeśli ktoś ma trochę wolnego czasu i zastanawia się jak go wykorzystać, polecam zapoznanie się z Cryptographic Storage Cheat Sheet i przy okazji z podcastem związanym z tym właśnie tematem. A sprawa jest istotna, wystarczy przypomnieć OWASP Top10 2010: A7 – Insecure Cryptographic Storage oraz CWE-311: Missing Encryption of Sensitive Data i CWE-327: Use of a Broken or Risky Cryptographic Algorithm. By całość była bardziej na czasie, zwracam uwagę na punkt Rule – Store the hashed and salted value of passwords.

Oryginał tego wpisu dostępny jest pod adresem Cryptographic Storage – jak to robić poprawnie

Autor: Paweł Goleń