Woźny. Najmłodszy Zwykolak wszedł na produkcję

Woźny. Najmłodszy Zwykolak wszedł na produkcję

Trochę nie po kolei. Ale życie, jak widać, niespecjalnie przejmuje się roadmapą.

Cześć, z tej strony Kuba.

Mieliśmy spokojnie przedstawiać kolejnych członków Gildii Zwykolaków, zgodnie z historią, numerkami i całą cywilizowaną dokumentacją.

No więc oczywiście tego nie zrobimy.

Bo był incydent bezpieczeństwa.

Po incydencie była analiza.

Po analizie pojawiło się:

„Dobra. Tego nam jeszcze brakuje.”

A następnego dnia o 6:48 nowy Zwykolak był już na produkcji.

Więc po co czekać?

Przedstawiam Woźnego.

Najpierw był „incydent”

Po incydencie bezpieczeństwa związanym z nieprawidłową sanityzacją nagłówków doszedłem do wniosku, że potrzebuję kolejnej warstwy kontroli.

Uwielbiam język cyberbezpieczeństwa. Uwielbiam ITIL 🙂

„Incydent”.

„Sanityzacja”.

„Wektor wejścia”.

Brzmi znacznie bardziej profesjonalnie niż: ktoś zrobił coś, czego nie powinien, i teraz trzeba posprzątać.

Ale właśnie takie sytuacje dobrze pokazują jedną rzecz.

Możesz mieć WAF.

Możesz mieć Cloudflare.

Możesz skanować endpointy.

Możesz pozamykać serwer tak mocno, że za chwilę sam będziesz obchodził własne zabezpieczenia, bo nie da się normalnie pracować.

I nadal potrzebujesz wiedzieć:

co dzieje się już po drugiej stronie drzwi?

Cieć stoi na zewnątrz. Woźny chodzi po korytarzach.

To właściwie najprostszy sposób na wyjaśnienie różnicy.

Cieć sprawdza, czy ktoś nie zostawił otwartego okna.

Patrzy z zewnątrz.

Szarpie za klamki.

Pilnuje podstawowej powierzchni ataku.

Woźny ma inne zadanie.

On zakłada, że ktoś mógł już wejść.

Nie robi pentestów.

Nie próbuje „hakować” własnego serwera.

Nie udaje cyberwojownika z kapturem przed sześcioma monitorami.

Chodzi po środku i patrzy, czy coś nagle nie wygląda inaczej niż wcześniej.

Czy pojawiły się nowe pliki.

Czy zmieniła się konfiguracja.

Czy jakiś proces zaczął zachowywać się inaczej.

Czy cron dostał nowego kolegę.

Czy coś, co wczoraj miało jeden stan, dzisiaj bez wyraźnego powodu ma inny.

Czy ktoś przypadkiem nie siedzi już w piwnicy.

A kiedy coś mu się nie podoba:

Telegram.

W tłumaczeniu z języka Woźnego na ludzki:

Panie kierowniku, coś tu się dzieje.

Bo bezpieczeństwo nie polega na budowie sejfu absolutnego

To chyba najważniejszy wniosek z całej historii.

Nie wierzę szczególnie w systemy „niewłamywalne”.

Wierzę za to w warstwy.

W utrudnianie wejścia.

W ograniczanie skutków.

W wykrywanie anomalii.

I przede wszystkim w to, żeby koszt ataku był nieproporcjonalny do potencjalnej korzyści.

Model zagrożeń dużej platformy technologicznej będzie zupełnie inny niż model zagrożeń strony lokalnego biznesu.

To nie oznacza, że ten drugi system ma być zabezpieczony byle jak.

Oznacza tylko, że zabezpieczenia powinny wynikać z rzeczywistego ryzyka, a nie z prezentacji sprzedażowej producenta systemu cyberbezpieczeństwa.

I tutaj Woźny jest kolejnym małym klockiem.

Nie zapewnia bezpieczeństwa absolutnego.

Daje mi informację, że coś się zmieniło.

A bardzo często właśnie to jest najważniejsze.

Jak to działa?

Bez wielkiej filozofii.

Python. Linux. Dane ze stanu systemu. Porównanie. Alert.

Woźny zbiera informacje o wybranych elementach środowiska, zapisuje stan odniesienia, a później sprawdza, czy coś się zmieniło.

Jeśli zmiana jest oczekiwana — wszystko dobrze.

Jeżeli nie jest:

alarm.

Przy okazji zrobiłem też rzecz, którą powinienem był zrobić wcześniej.

Sekrety wylatują z kodu.

Tokeny, hasła i pozostałe rzeczy, których repozytorium zdecydowanie nie potrzebuje znać, siedzą poza nim i są ładowane z .env.

Jeszcze chwila i zacznę myć ręce przed siadaniem do terminala.

Dlaczego nie dopisałem tego po prostu do Ciecia?

Pierwsza myśl była dokładnie taka.

Cieć już zajmuje się bezpieczeństwem.

To może dorzucę mu:

procesy,
pliki,
cron,
konfigurację,
monitoring zmian
i jeszcze pół systemu.

A potem przypomniałem sobie, jak powstawała cała Gildia.

Zwykolak ma mieć jedną robotę.

I robić ją dobrze.

Cieć ma swoją.

Woźny ma swoją.

Mógłbym oczywiście zbudować jedną wielką platformę bezpieczeństwa z panelem, dashboardem, rolami użytkowników i siedemnastoma modułami.

Tylko po co?

Na tym etapie potrzebuję programu, który:

chodzi, patrzy i alarmuje.

Koniec specyfikacji.

Trochę nie po kolei. Ale zgodnie z logiką.

Woźny pojawia się w historii Gildii trochę poza kolejnością.

I trudno.

Atak nie sprawdził roadmapy publikacji.

Problem się pojawił.

Znalazłem rozwiązanie.

Rozwiązanie dostało własny proces.

Proces dostał imię.

A skoro już działa na produkcji, nie widzę powodu, żeby trzymać go przez trzy tygodnie w szufladzie tylko dlatego, że marketing zaplanował innego Zwykolaka na wtorek.

To zresztą bardzo dobrze opisuje sposób, w jaki budujemy takie rzeczy.

Nie wymyślamy automatów, żeby mieć co pokazać.

Najpierw pojawia się problem.

Potem powstaje automat.

A dopiero później zastanawiamy się, jak go nazwać.

Na razie:

Woźny.

Lore nadal jest w wersji 0.1.

Ale produkcja już działa.

Witamy w Gildii.

Cieć pilnuje drzwi.

Woźny sprawdza korytarze.

I chyba właśnie zrobiło się trochę spokojniej.

Share this :