Ostatnio miał miejsce gigantyczny wyciek danych osobowych z PEKAO S.A.. Można się spierać, czy był on rzeczywiście taki gigantyczny, ale nie o tym chcę pisać. Jeśli ktoś jeszcze o tym nie słyszał, może zacząć swoją lekturę tu. Chcę pokazać dlaczego do takich zdarzeń dochodzi i będzie dochodzić.
Mniej ważne(?) aplikacje
Po pierwsze trzeba sobie uświadomić, że w banku (lub dowolnej innej firmie) istnieją dziesiątki, bądź nawet setki aplikacji. Ich liczba zależy od tego między innymi, co uzna się za aplikację. Za aplikację może być uznany nawet bardziej złożony arkusz kalkulacyjny pobierający i obrabiający dane z różnych źródeł. Znaczna część aplikacji to aplikacje internetowe (właściwie intranetowe), które były tworzone jako prowizorka i jak to zwykle bywa z prowizorkami - stają się rozwiązaniami docelowymi.
W idealnym świecie każda z tych aplikacji ma swojego właściciela biznesowego, który za aplikację jest odpowiedzialny. Często jednak aplikacje swojego właściciela nie posiadają, lub właściciel nie do końca wie, co w ramach swojego "właścicielstwa" powinien zrobić. W rezultacie może się okazać, że bardzo istotna dla pewnych procesów biznesowych aplikacja nie działa wystarczająco wydajnie, lub jest po prostu dziurawa. W obu przypadkach odpowiedzialny za taki stan rzeczy jest zwykle właściciel biznesowy aplikacji. Nie, nikt nie oczekuje od niego, że sam przedstawi odpowiednią specyfikację sprzętową, która udźwignie obciążenie generowane przez aplikację, albo sam opracuje i zweryfikuje wymagania związane z bezpieczeństwem tworzonej aplikacji. Ale to właściciel musi zwrócić się do odpowiednich osób, a nie czekać, że oni sami przyjdą do niego. Niestety, w praktyce często jest tak, że o nowej, szalenie ważnej aplikacji, zarówno komórka odpowiedzialna za bezpieczeństwo, jak i ta odpowiedzialna za utrzymanie systemów dowiadują się w ostatniej chwili. Wtedy zaczyna się przepychanka, której zwycięzcą jest ta strona, której kierownik/dyrektor/prezes jest większym bossem. W rezultacie zwykle aplikacja idzie "na produkcję", a efekty bywają opłakane.
Dlaczego bezpieczeństwo ma tak małą siłę przebicia? Moim zdaniem dlatego, że jest wciąż stosunkowo mało incydentów związanych z bezpieczeństwem, które powodują straty. W rezultacie zestawiając ze sobą wymierne straty związane z opóźnieniem wdrożenia systemu z pozostałymi w sferze domniemań i mglistych szacowań kosztami związanymi z zaistnieniem incydentu, bardziej przekonywujące są oczywiście te lepiej udokumentowane (bardziej prawdopodobne) straty. Cóż, bezpieczeństwo też trzeba umieć sprzedawać.
Pisałem kiedyś o testach penetracyjnych. Zwracałem uwagę, że decyzja o testach powinna być podjęta z rozwagą. Ważne jest, by zastanowić się, czy aplikacja zawiera jakieś wartości, które mogą być dla potencjalnego intruza interesujące. Często popełnianym błędem jest ignorowanie pewnych wartości. W bankach obraca się pieniędzmi, więc wartości kojarzą się z pieniędzmi właśnie, może z danymi klientów (tajemnica bankowa), ale już inne zasoby często bywają traktowane po macoszemu. Przykładowo działy odpowiedzialne za marketing często żyją własnym życiem, najważniejsze jest dla nich chwytliwe (z przerażeniem stwierdzam, że coraz częściej jest to jednocześnie infantylne) hasło reklamowe. Do stworzenia nowej witryny promocyjnej biorą tych wykonawców, którzy zadanie zrealizują taniej, szybciej i z większą ilością "efektownych" animacji. Zupełnie wyrzucają ze swojego pola widzenia coś, co nazywa się ryzykiem utraty reputacji (ewentualnie ryzykiem wizerunkowym)... W rezultacie można później znaleźć "ekspertów", którzy chwalą się na przykład znalezieniem XSS "w systemie banku X". Co z tego, że ten XSS do niczego nie prowadzi, a nazywanie strony WWW banku systemem bankowym to spore nadużycie. Ważny jest fakt medialny.
Obecnie firmy muszą starać się, by przyciągnąć do siebie pracowników. Z tego powodu (a i w celu usprawnienia procesu rekrutacji) także i działy HR wychodzą "do ludzi", czyli coraz częściej można złożyć aplikację przez Internet. Przy HR, marketing jest w na prawdę komfortowej sytuacji. Tu w grę wchodzi nie tylko wizerunek, ale również zgodność z przepisami prawa. W tym konkretnym przypadku z ustawą o ochronie danych osobowych. Skutki braku zgodności mogą być znacznie bardziej dotkliwe, niż skaza na wizerunku.
Testy penetracyjne nie gwarantują, że aplikacja będzie wolna od podatności. Podejrzewam jednak, że ten konkretny problem zostałby wychwycony. Jeśli link istniał na stronie (a prawdopodobnie istniał, skoro zawartość katalogu została zindeksowana przez Google), znalazłby go również jakiś spider (używany w trakcie rozpoznania aplikacji). Prawdopodobnie katalog znalazłby również DirBuster, a Nikto prawdopodobnie zgłaszałby możliwość wykonania listingu katalogów.
Podsumowując: zawsze warto zastanowić się, czy aplikacja, w której nie ma nic istotnego, przypadkiem nie jest bardziej istotna, niż się to na początku wydaje. Nawet w przypadku tych nieistotnych aplikacji należy jakieś wymagania odnośnie bezpieczeństwa postawić, a później sprawdzić, czy są zrealizowane.
EDIT: I na potwierdzenie mojej tezy:
zainwestujwprzyszlosc.pl has address 79.96.7.13 zainwestujwprzyszlosc.pl mail is handled by 10 zainwestujwprzyszlosc.pl.
whois:
% Information related to '79.96.0.0 - 79.96.127.255' inetnum: 79.96.0.0 - 79.96.127.255 netname: HOMEPL descr: home.pl webhosting farm country: PL admin-c: hNA8-RIPE tech-c: hNA8-RIPE status: ASSIGNED PA mnt-by: HOMENET-MNT source: RIPE #
Filtered Wydaje mi się mało prawdopodobne, by serwis stworzony własnymi siłami przez bank hostowany był w home.pl...
Tak, to pierwszy odcinek zapowiadanej serii wpisów. I dotyczy on często powracającego pytania o to, co jest lepsze. Człowiek czy automat?Odpowiedź na to pytanie zwykle zależy od tego, kto odpowiada. Producenci narzędzi automatycznych oraz firmy oferujące
Przesłany: Sep 27, 19:57