Dlaczego urzędy działają jak serwery RESTowe?

Dzisiaj opowiem Wam o pentestingu systemów administracyjnych

Dziurawy system łatwo shackować, a nasz system w Polsce jest mega dziurawy

Także będzie trochę wiedzy o serwerach RESTowych i urzędach i o podobieństwach miedzy nimi:

1. Urząd zawsze wystawia jakieś docsy – zestaw reguł, które wg niego mają działać – czy to jest skarbówka czy to ZUS czy inne pudełko do mielenia papieru. Wystarczy wybrać te reguły urzędu, które są ich core-owymi i zobaczyć jak urząd poradzi sam sobie ze swoimi zasadami

2. Urząd zawsze wystawia jakieś API – skończony zestaw akcji, które mozesz wykonać w obrębie urzędu – /zapłac-podatek, /złóż-dokument, /zarejestruj-działalność, /oplac-zus, /zaplac-kare, /zadaj-pytanie. Ale nie normuje w żaden sposób jaki request ma lecieć na jaki endpoint

3. Urząd zawsze na każdy request MUSI odpowiedzieć responsem – wysyłasz zapytanie do urzędu, a ten musi Ci odpowiedzieć – zobowiązuje go do tego prawo i kodeks postępowania administracyjnego i pewnie wiele innych ustaw

Mam nadzieje, że te 3 porównania coś Ci uświadomiły

Masz do przetestowania serwer, który:

  • działa od 7:00 do 15:00
  • przyjmuje listy, telefony oraz maile
  • ma jakieś API i daje jakieś docsy, ale nie musisz ich w 100% znać, aby zadać pytanie, wystarczy core-owe 20%
  • zawsze musi odpowiedzieć na Twój request jaki by nie był

I mając tą wiedzę przestań myśleć jak grzeczny użytkownik serwera, zacznij myśleć jak pentester

Co zrobić, aby stać się takim pentesterem urzędu:

  • musisz miło pytać, grzecznie prosić, ale domagać się tego, aby dali Ci coś co zrozumiesz
  • musisz rozumieć proste koncepty technologiczne i używać słownictwa
  • znać dobrze coś czego nie rozumie urzędnik z uwagi na braki wiedzy technicznej

Więc jak samodzielnie przeprowadzić pentest na niedorozwinięty mózg urzędnika urzędu skarbowego i jego kolegów nie dotykając komputera?

Musisz wrzucić mu jakiś skrypt, który zmusi go do pracy i jednocześnie spowoduje ból głowy ^^

Próbowałeś kiedyś zadać pytanie o podatki w apce dzwoniąc do skarbówki?

Przyjrzyj się na poniższy przykładowy scenariusz rozmowy i postaraj się prowadzić rozmowę w podobnej formie, ale też nie bój się eksperymentować między różnymi urzędami:

  • ZUS
  • Skarbówka
  • Urząd celny
  • Straż miejska
  • Policja
  • inne

ten przykładowy scenariusz jest dla Urzędu Skarbowego

Dzień 1

o godzinie 14:30 zadzwon do US w twoim mieście, gminie, wtedy urzędnicy już myslą o powrocie do domu i możesz rozpocząć swój pentest na urząd – są wtedy bardziej podatni, bo już chcą zjeść obiad i nikt tam się nie spodziewa, że jeszcze dzisiaj będzie musiał pracować

Ty: dzień dobry, jestem programistą i chciałbym odprowadzić właściwy podatek dla państwa od swojej innowacyjnej aplikacji, ale nie wiem dokładnie jaki i bardzo bym prosił, aby mi pan/pani udzieliła krótkiej odpowiedzi? będę bardzo wdzięczny

Urząd: [coś ala słucham, albo przekierowanie do właściwej osoby]

Ty: proszę mi powiedzieć, gdzie pojawia się obowiązek podatkowy, co stanowi koszt, a co jest zyskiem i ile procent vatu będzie naliczone, jeśli prowadzę taki biznes – emituję tokeny na blockchainie, które reprezentują jakąś użyteczność, ale nie wartość, które można potem spalić w algorytmie sztucznej inteligencji do gamblingu, potem jest przeprowadzone losowanie oraz redystrybucja tokenów typu nagroda między wszystkich właścicieli tokenów, które potem mogą zamienić na token typu wartość lub reinwestować dostając więcej tokentów typu użyteczność, wydając je w zaprzyjaźnionych społecznościach

Urząd: [najprawdopodobniej usłyszysz ciszę – tylko się nie śmiej]

Ty: …jeśli pan/pani nie jest w stanie odpowiedzieć mi na to pytanie, to czy mogłaby pani przekazać słuchawkę komuś kto mógłby mi pomóc? jest pani moją jedyną nadzieją, bo mój doradca podatkowy kazal mi zadzwonić bezpośrednio do was

Wariant A: … jeśli dostaniesz słuchawkę do kogoś innego zadaj podobnie brzmiące pytanie i sprawdź czy znów dostaniesz kogoś innego do telefonu i czekaj aż udzielą Ci poprawnej odpowiedzi

która brzmi… nie płacimy wtedy podatku, bo tokeny podlegają obowiązkowi podatkowemu dopiero jak jest konwersja do walut fiat – ale warto się upewnić czy nic się nie zmieniło i sprawdzić poziom zaawansowania wiedzy urzędników egzekwujących prawo podatkowe 😉

Wariant B: … jeśli nie masz czasu ich słuchać pieprzenia to każ im odpowiedzieć mailem zostawiając im maila z bardzo dziwnym adresem np

  • smalldick-at-work@twojafirmowaskrzynka.com
  • dla-mnie-masz-stajla@twojafirmowaskrzynka.com
  • apka-ktora-rozjebie-swiat@twojafirmowaskrzynka.com
  • [losowy ciag znaków]@twojafirmowaskrzynka.com
  • itp

potem poproś, aby pani odczytała maila żeby sprawdzić czy dobrze zapisała – który tak naprawdę nie istnieje – aby im odbiło maila i niech myślą, że źle zapisali maila

Be lazy – niech technologia pracuje za Ciebie

Dni kolejne

Następnego dnia o 14:30 także zadzwoń do US i spytaj sie o to czy już wiedzą jakie podatki masz zapłacić i czy już wysłali maila, bo chciałbyś już wiedzieć jak zapłacić podatki, bo inwestorzy się niecierpliwią i bardzo zależy Ci na czasie (niby urząd ma 14 dni na odpowiedz, ale co tam przeszkadza, aby go poganiać codzienie – w końcu to pentesting)

Kolejnego dnia o 14:30 znów to powtórz,

Kolejnego dnia o 14:30 znów to powtórz,

i znów, i znów …

Zobaczysz, że po 4-5 dniu regularnej i miłej 10 min rozmowy urząd będzie bał się, że kolejnego dnia znów zadzwonisz. A jaki będziesz mieć świetny humor, kiedy okaże się, że możesz rozmawiać z urzędem z pozycji siły 🙂

Najlepsze jest to, że muszą odpowiedzieć na Twoje zapytanie, a jednoczenie nie umieją, bo nie rozumieją co do nich powiedziałeś w pytaniu – co powoduje „pięćsetkę” w kawałku urzędu i tak naprawdę to nie wiesz co „wypluje” urząd w response do Ciebie…

A to pozwala dalej prowadzić pentesting w oparciu o ich odpowiedź. Jak już uznasz, że uzyskałeś swoją odpowiedź, i że już wystarczy i urząd się wykazał – podziękuj za pomoc i fachową obsługę

Co można zrobić lepiej?

To proste – jesteś programistą, napisz sobie sofcik i jakieś potrzebne skrypty, zbuduj bazę mailingową urzędów i odpowiednich osób tam zatrudnionych

Pomyśl, że możesz do tego samego urzędu co tydzień zadawać różne takie pytania

A pisząc prosty skrypt w node do wysyłania masowo maili możesz zadać to samo pytanie do wszystkich urzędów skarbowych jednocześnie

A jak udzielą odpowiedzi to sprawdzić czy są spójne i spytać się dlaczego inny urząd odpowiedział inaczej na to samo pytanie

A nawet możesz sobie napisać skrypt automatyzujący rozmowy z urzędami za pomocą mailerlite czy innych programów do budowania procesów marketingowych 😉

Pamiętajcie, że to programiści tworzą systemy, a nie systemy tworzą programistów

Z góry jesteście na wygranej pozycji, jeśli chodzi o relację z urzędami, tylko oni jeszcze tego nie widzą. Także, jeśli uważasz, że w urzędach jest za dużo leniwych urzędników wymyślających nowe wały, przejadających Twoje pieniądze to czas, aby zacząć działać

Do następnego commita!

contact

Wahasz się? Podaj nam swojego maila i umów się z naszym mentorem na niezobowiązującą konsultację.