Paweł Goleń, blog

Jeśli ktoś zapyta o coś prawnika, zwykle nie dostanie prostej odpowiedzi. Może oczekiwać litanii paragrafów z różnych źródeł, komentarzy, komentarzy do komentarzy, orzeczeń sądów, (...). Gdy ktoś pyta mnie o to, co jest bezpieczniejsze, oczekuje prostej odpowiedzi. Udzielenie prostej odpowiedzi nie zawsze jest możliwe, co może być dla pytających równie irytujące, jak dla mnie typowa odpowiedź prawnika.

Czytaj dalej...

Do napisania tego postu skłonił mnie Gynvael ze swoim wpisem Wybór studiów a szanse na rynku pracy. Tak jak napisałem w komentarzu, według mnie tytuł magistra stracił swą wartość, podobnie jak “wyższe wykształcenie”. Moim zdaniem za dużo osób idzie na studia i zbyt często studia wyższe są wymagane przez pracodawcę, choć obiektywnie patrząc nie są w danym przypadku potrzebne...

Czytaj dalej...

Małe nawiązanie do tematu timing attacks. Wykres prezentuje czas porównania dwóch stringów o tej samej długości w zależności od tego, na którym znaku stringi te się różnią. Dane do przygotowania wykresu zostały przygotowane przy pomocy prostego skryptu uruchamianego w Python 2.5. Porównywane były stringi o długości 64 znaków, dla każdego przypadku wykonane zostało 5 000 000 porównań.

Czytaj dalej...

Dostałem wczoraj SMS mniej więcej o takiej treści. Ktoś miał mnie sprawdzać w KRD, jeśli zadzwonię na podany numer, wówczas dowiem się kto. Oczywiście rzuciłem się do telefonu... Nie, nie rzuciłem się do telefonu. Tak mi się wydawało, że ktoś chce mnie naciągnąć na kasę, tylko nie do końca jeszcze wiedziałem jak. Dziś już wiem: SMS z Krajowego Rejestru Długów:

(...) Chodzi mi o to, że zostałem celowo wprowadzony w błąd. Dopiero po przedstawieniu mi oferty handlowej, po moim wyraźnym pytaniu 'To KTO i dla CZEGO sprawdzał mnie w bazie KRD' zostałem poinformowany o tym, ze wiadomość z sms-a jest fałszywa, a całość jest kampanią reklamową.

I treść całego SMS, gdyby ktoś szukał:

Ktos Cie sprawdza. Zadzwon pod numer 71 77 45 610 dowiesz sie wiecej. Krajowy Rejestr Dlugow.

Oryginał tego wpisu dostępny jest pod adresem Rejestr KRD: Ktoś Cię sprawdza

Autor: Paweł Goleń

Kilka ciekawych komentarzy pojawiło się pod wpisem Ataki czasowe na OpenID i OAuth. Szczególną uwagę chciałbym zwrócić na kilka z nich.

Po pierwsze dwa komentarze Gynvaela. Pierwszy komentarz dotyczy (nie)skuteczności losowych opóźnień w trakcie uwierzytelnienia w kontekście ataków timing attacks. Drugi z nich z kolei dotyczy tego, jak działa operator równości dla stringów. Temat ten został poniekąd wywołany przeze mnie w dwóch komentarzach (pierwszy komentarz, drugi komentarz). Być może wrócę do tematu jak zmienia się czas porównania stringów w zależności od tego, gdzie się różnią. O ile będę miał trochę czasu na eksperymenty.

Drugi ciekawy temat podniósł Radekk. Twierdzi on, że wstawianie sztucznych opóźnień (sleep) do aplikacji jest złym pomysłem, gdyż może ułatwić atak DoS. Konkretnie wariant ataku polegający na wyczerpaniu dostępnych wątków/procesów. Jego uwaga jest słuszna, aczkolwiek warto zwrócić też uwagę na “otoczenie” takich opóźnień w aplikacji, o czym z kolei wspominałem ja. Po prostu w niektórych przypadkach wstawienie umiarkowanego sztucznego opóźnienia do aplikacji nie będzie miało istotnego wpływu na łatwość wykonania ataku typu DoS według opisywanego scenariusza.

Oryginał tego wpisu dostępny jest pod adresem O timing attacks

Autor: Paweł Goleń

Jeśli pojęcie koniunkcji nie jest Wam obce, doskonale wiecie, że jest ona przemienna. Przemienna, czyli a i b == b i a (że to w taki sposób zapiszę). W zasadzie jest to prawda. Prawie. A prawie robi różnicę.

Czytaj dalej...

Dziś dwa przykłady, w których na podstawie pewnych przesłanek wyciągnięty zostały pewne wnioski. Co w tym ciekawego? To, że wnioski te były nie do końca uzasadnione.

Czytaj dalej...

Jadę dzisiaj sobie spokojnie, jadę i coś mi nie pasuje. Nie wiem co, nie potrafię tego nazwać, ale nic to, jadę sobie dalej. Dojeżdżam do mostku, za którym zjeżdżam z drogi na ścieżkę i... OLŚNIENIE. Samochodem to ja tędy nie przejadę, tą trasą to ja jeżdżę na rowerze :)

Oryginał tego wpisu dostępny jest pod adresem Przyzwyczajenie to druga natura

Autor: Paweł Goleń

Dziś opowiem o eksperymencie, który mi nie wyszedł. Do jego przeprowadzenia zainspirowało mnie opracowanie Side-Channel Leaks in Web Applications: a Reality Today, a Challenge Tomorrow. O temacie side-channel wspominałem również podczas mojej prezentacji dotyczącej cloud computing. Konkretnie zainteresował mnie jeden z aspektów, który dobrze oddaje ten fragment:

Song et al showed that because SSH is an interactive remote shell service and typing different keystroke-combinations naturally produces slight timing characteristics, a network eavesdropper can build a Hidden Markov Model (HMM) to infer the keystrokes. When applied to guess a password, the attack achieves a 50-time speedup compared to a brute-force guessing attack, i.e., more than 6-bit reduction of the password’s entropy.

Na temat tych konkretnych badań można przeczytać więcej tu: Timing Analysis of Keystrokes and Timing Attacks on SSH.

Czytaj dalej...

Małe podsumowanie komentarzy do wpisu Jak badać wygodę mechanizmów bezpieczeństwa? Komentarzy nie ma za wiele, więc nie chcę na ich podstawie wyciągać jakichś fundamentalnych wniosków.

Czytaj dalej...