Jeśli ktoś jest stałym czytelnikiem mojego bloga, a statystyki wskazują, że jest ich kilku, na pewno zauważył, że ostatnio coraz częściej pojawiają się wpisy związane z czymś, co można określić ogólnie jako computer forensics. Z tej okazji kilka słów wyjaśnienia...
Forensic
Pisałem kiedyś o książce Błękitna Pustka, której autorem jest Jeffery Deaver. Czytałem również książki Kolekcjoner Kości oraz Puste Krzesło. Są to książki, których bohaterem jest Lincoln Rhyme, kryminalistyk, który na podstawie śladów rozwiązuje zagadki (kryminalne oczywiście). Prawdopodobnie gdyby książki te czytał prawdziwy kryminalistyk, to uśmiechnąłby się nad nimi z politowaniem podobnym do tego, które czułem ja czytając Błękitną Pustkę. Nie zmienia to faktu, że rzeczywiście tego typu badania są prowadzone i tego, że pozornie nieistotny ślad może odpowiedzieć na wiele pytań (lub spowodować zadanie kolejnych). Zresztą można tutaj również wspomnieć o serialu Bones, a może i innych podobnych. Jestem szczęśliwym nieposiadaczem telewizora, więc w tym zakresie jestem nieco zacofany.
Podobnie jak w kryminalistyce, tak i w przypadku komputerów można prowadzić tego typu dochodzenia. Tego typu działania określa się często jako informatyka śledcza, ale również analiza powłamaniowa czy sekcja zwłok. Dwa ostatnie określenia jasno sugerują, że chodzi o działania podejmowane po incydencie. Kiedyś pod mianem incydentu kryło się zwykle włamanie dokonane przez hakera (z krwi i kości), obecnie coraz częściej tego typu analizy przeprowadzane są po udanej infekcji różnego typu malware, co z kolei często jest określane jako malware analysis. Właśnie tego typu przykład dałem w swojej serii opowieści o tamagotchi.
Z tego typu działaniami miałem do czynienia już od dawna. Analiza ruchu sieciowego w poszukiwaniu śladów włamywacza, analiza logów serwera by ustalić jak ten intruz się włamuje, malware, nieuczciwi pracownicy... Właśnie, to też jest oddzielny obszar zastosowania informatyki śledczej. Osobiście nie jestem zwolennikiem ścisłego monitorowania i podglądania pracowników, natomiast jeśli ktoś dostarczy ku temu powodów, warto sprawdzić co się dzieje. Może się okazać, że nowo zatrudniony pracownik to domorosły haker, albo po prostu wtyka konkurencji lub grup przestępczej. Problemem jest też wynoszenie danych firmowych, czy nadużywanie zasobów firmy do celów prywatnych. Ogólnie - każdy skutek ma swoją przyczynę, każda akcja coś powoduje. Odnajdywanie tych powiązań, zagubionych przyczyn, niedostrzegalnych skutków to naprawdę wielka frajda, wyzwanie. Coś, czego czasami brakuje, gdy po raz kolejny sprawdza się aplikację tej samej firmy, tego samego typu. Jakieś nowe wyzwanie. Dlatego czasem do tego typu zajęć wracam, choćby pod postacią zabawy z tamagotchi...
Ważne jest to, że do rozpoczęcia zabawy wcale nie potrzebne jest drogie oprogramowanie. To nie jest prawda. Można rozpocząć na przykład od specjalizowanej dystrybucji o nazwie Helix, można wykorzystać do tego BackTrack. Wspaniałym zestawem narzędzi do "analizy na żywo" (systemu Windows oczywiście) jest pakiet Sysinternals Suite. Do wykonania kopii dysku wcale nie są potrzebne rozbudowane narzędzia typu EnCase, FTK Forensic Toolkit, czy ProDiscover. Wystarczy zwykłe dd czy narzędzia z pakietu Forensic Acquisition Utilities. Do jej analizy wystarczy Sleuthkit, czy zaawansowane narzędzia typu strings oraz grep. Przy analizie logów, ale i systemu plików czy rejestru niezastąpionym narzędziem jest LogParser. Doskonałym dodatkiem są narzędzia z MiteC oraz NirSoft. Nie można również zapominać choćby o RegRipper. Jeśli ktoś chce spróbować, bardziej przyjaznych narzędzi, to można spróbować ProDiscover Basic Edition, choć akurat dla mnie ta przyjazność jest co najmniej dyskusyjna.
Ktoś zainteresowany? :)
Pozdrawiam
Pozdrawiam LK