Audit (rewizja) polega na prowadzeniu zapisów w dzienniku.
Jest to bardzo przydatny administratorowi system rejestrowania czynności wykonywanych
przez komputer. Pomaga administratorom relacjonować historie wielu różnych zdarzeń jak również prób
uzyskania dostępu do zasobów serwera. Dzięki temu w przypadku włamania się intruza do systemu audit
może pomóc w określeniu co się stało, czasami pozwala również określić tożsamość osoby włamującej się
do systemu.
Dziennik ochrony jest formą testowania i odtwarzania akcji wykonywanych przez użytkowników systemu.
Proces ten jest niezbędny aby określić skuteczność istniejącej ochrony, obserwować niewłaściwe
korzystanie z systemu przez użytkowników, sprawdzać odporność systemu, w przypadku włamania
uzyskać dowody obciążające sprawcę oraz wykrywanie anomalii i intruzów w systemie.
Efektywne robienie zapisów wymaga zapisu poprawnych informacji i ich okresowego przeglądania.
Ostatni z wymienionych plików to rejestr protokołu ppp do połączeń przez modem. Solaris 2.4 jest rozprowadzany z włączonym rejestrowaniem informacji w tym pliku, nawet jeśli w systemie nie jest używany protokół ppp lub nawet jeśli w systemie nie jest używany protokół ppp lub nawet nie zainstalowano oprogramowania do obsługi ppp. Plik ten rośnie wypełniany informacjami o braku możliwości połączenia.
- /var/log/*
- /var/cron/log
- /var/lp/logs/*
- /var/saf/_log
- /var/saf/zsmon/log
- /var/adm/{messages,aculog,sulog,vold,log,wtmp}
- /var/adm/log/asppp.log
/usr/adm
.
Plik nettl.LOG00
zawiera statystykę wykorzystania sieci, katalog
diag
- wiele binarnych plików rejestrowych. Nie należy ich dotykać./usr/adm/
w wersji
systemu IRIX 4.0 lub w /var/adm/
w wersji Irix 5.2. Rejesrty systemu
drukowania ATT znajdują się w katalogu /usr/spool/lp
. /usr/adm/
. Umieszczono
tam również pliki z danymi dotyczącymi rozliczeń - w podkatalogu accct
.
Istnieje również katalog /var/log
ale zawiera tylko dwa pliki
authlog
i syslog
. /usr/adm/
i jego podkatalogach. OSF/1 firmy DEC zapisuje komunikaty błędów jądra w pliku binarnym,
które można przekształcać w tekst programem uerf
. Domyślnym plikiem
w którym komunikaty te są zapisywane, jest /var/adm/binary.errlog
,
ale można to zmienić edytując plik konfiguracyjny .etc.binlog.conf
. sialog
jest częścią opracowanego przez DEC systemu bezpieczeństwa,
w którym są rejestrowane wszystkie wykonania poleceń ważnych z punktu widzenia bezpieczeństwa,
takich jak su, passwd
czy login
. Katalog
smlogs
zawiera pliki z komunikatami zapisanymi w czasie ostatniej
instalacji systemu operacyjnego. W konfiguracji ,,fabrycznej'' zakłada się, że dane
generowane przez syslog
są zapisywane w plikach:
/var/adm/syslog.dated/date/facility.log.
/var/log
.
Dane związane z rozliczeniami znajdują się w plikach katalogu
/var/account
. Program syslog
, napisny przez Erica Allmana z Berkeley to bardzo
ogólny system rejestrujący, wykorzystywany przez wielu dystrybutorów systemu UNIX
do zarządzania informacjami przez jądro i oprogramowanie systemowe.
Program syslog
spełnia dwie ważne funkcje: zwalnia programistów
z dokonywania zapisów oraz pozwala administratorom na zachowanie kontroli nad rejestracją
tych komunikatów. System syslog
składa się z trzech części:
syslogd
;kern
(obsługa komunikatów od jądra),
user
(procesy użytkowników), mail
(system pocztowy)
czy daemon
(demony systemowe w szczególności syslogd).syslogd
sam z siebie może tworzyć komunikaty - znaczniki czasu,
które mogą być użyte do rejestrowania daty i godziny w regularnych odstępach czasu.
Dzięki nim można precyzyjnie ustalić, że awaria nastąpiła pomiędzy 3:00 a 3:20 a nie w ,,nocy''.
Może to byc niedocenioną pomocą przyrozwiązaniu problemów pojawiających się w równych
odstępach czasu.Nr | Poziom | Przybliżone znaczenie |
---|---|---|
0 | emerg | sytuacja bez wyjścia |
1 | alert | sytuacja wymagająca pilnej interwencji |
2 | crit | warunki krytyczne |
3 | err | inne błędne warunki |
4 | warning | komunikaty ostrzeżeń |
5 | notice | zwyczajne zdarzenia, które mogą wymogać zdarzenia |
6 | info | komunikaty informacyjne |
7 | debug | do testowania |
System syslog
pozwala, aby informacje pochodzące zarówno od procesów
jądra, jak i użytkowników, były rejestrowane w pliku oraz przesyłane do wybranych użytkowników
albo innych komputerów w sieci. Warto rozważyć przygotowanie jednego bezpiecznego węzła
pracującego jako centralna maszyna rejestrująca, która drukuje informacje o naruszeniu
bezpieczeństwa (usługa auth
) na drukarce. Uniemożliwia to włamywaczom zatarcie
przez zmodyfikowanie albo usunięcie plików z rejestrami.
Niektóre czynności zapobiegające zagnieżdżaniu się intruzów mogą być zautomatyzowane
przy użyciu nieodpłatnie dostępnych narzędzi. Poniżej są omówione trzy z nich. Pojawiające
się nowe narzędzia są zwykle umieszczane w archiwum CERT
związanym
z bezpieczeństwem na serwerze cert.org (w katalogu /pub/tools) i ogłaszane
na liście dyskusyjnej cert-tools-list.
ATTENTION: Security Report for Sun Nov 14 20:24:00 MST 1993 from host raja.xor.com Warning! Root does not own the following file(s): /etc Warning! "." (or current directory) is in root's patch! Warning! /var/spool/mail is _World_ writeable! Warning! User randy's home directory /home staff/randy is mode 0777! Warning! Password file, line 8, no password: runmailq::33:10:,,,:/home/staff/runmailq:/bin/csh Warning! Password file, line 2964, no password: wp::31777:11:/white Pages/CCSO,,,:/home/staff/wp:/bin/csh Warning! /usr/bin/uudecode creates setuid files! Warning! Password Problem: Guessed: beth shell: /bin/cshCOPS oferuje wiele innych możliwości, włącznie z systemem ekspertowym Kuang, który próbuje wyczuć sposoby, jakimi zwykli użytkownicy mogliby spróbować uzyskać prawa użytkownika root.
etc/inetd.conf
, aby zamiast właściewego programu
wywoływany był tcpd, który wykona niezbędne czynności rejestracyjne
i testy zabezpieczeń zanim uruchomi odpowiedniego demona. Jeżeli na przykład
oryginalny plik /etc/inet.conf zaiwrał wiersz:
telnet stream tcp nowait root /etc/in.telnetd in.telnetdto można go zmienić na:
telnet stream tcp nowait root /usr/etc/tcpd in.telnet.dWynikowy plik z raportami (skonfigurowany w /etc/syslog.conf) może wyglądać tak:
Nov 12 08:52:43 chimchim in.telnetd[25880]: connect from rintintin.Colorado.EDU
Nov 12 19:32:13 chimchim in.telnetd[15520]: connect from catbelly.com
Nov 12 14:27:38 chimchim in.telnetd[25880]: connect from atdx.xor.com
Nov 13 07:09:16 chimchim in.telnetd[2362]: connect from zodiac.mimuw.edu.pl
### Phase 1: Reading configuration file ### Phase 2: Generating file list ### Phase 3: Creating file information ### Phase 4: Searching for incosistencies ### ### Total files scanned: 2988 ### Files added: 1 ### Files deleted: 0 ### Files changed: 2432 ### ### After applying rules: ### Changes discarded: 2430 ### Changes remaining: 1 ### changed: -rwxr-xr-x root 16368 Oct 11 13:51:17 1990 /usr/etc/reboot ### ### Phase 5: Generating expect/observed pairs ### ### Attr Observed (is) Expected (should be) ### ======== ============== ===================== /usr/etc/rebot st_ctime: Nov 25 11:15 1993 Aug 4 21:12 1991W tym przykładzie tripewire informuje, że czas modyfikacji i-węzła pliku
/usr/etc/reboot
jest inny niż poprzedniego dnia.
Może to być sygnał, że podstępny haker podmienił wersję programu
/usr/etc/reboot
na wersję zaiwerającą niespodziankę czekającą
przy kolejnym uruchomieniu programu reboot. Porównanie sumy kontronej
programu z wersją z taśmy dystrybutywnej może potwierdzić albo odrzucić
podejrzenia, że jest to ślad hakera. Ponieważ niektórzy włamywacze są na tyle
sprytni, że potrafią odtworzyć sumę kontrolną zmodyfikowanego pliku,
to tripwire używa dwóch różnych metod sprawdzenia sumy kontrolnej.
System Solaris zawiera dwa rodzaje zapisów systemowych: System unix'a (Unix System Logs) oraz C2 auditing. W pierwszym rodzaju zapisów przechowywane są informacje o logowaniu użytkowników, wykorzystywanych zasobach, limitach użytkowników i nie tylko. Wiele urządzeń używa zapisów systemowych do ostrzegania administratora systemu o ważnych zdarzeniach. Programy takie jak np. skrypty shela mogą również pisać informacje do dzienników systemowych, aby informować o przypadku wystąpienia specyficznej systuacji. System C2 zwany również kontrolowanym dostępem do danych (Controlled Access Protection) może dostarczać więcej szczegółów dotyczących pracy systemu. W 1980 roku dział zajmujący się ochroną danych zaprojektował system zapisu C2 tak, aby zapisy odbywały się na różnych poziomach ochrony komputera. Zarys wymagań jakie powinien spełniać taki system spisany został w Orange Book lub też Trusted Computer Systems Evaluation Criteria (TC-SEC). Poziomy bezpieczeństwa są oznaczane od litery D (najsłabszy) do oznaczenia A1 (najwyższy poziom ochrony). System C2 może zapisywać informacje pochodzące od użytkowników, pewnych zdarzeń lub klas. W rezultacie C2 umożliwia zapis w dzienniku o dowolnym zdarzeniu, które administrator uzna jako istotne. Solaris C2 zawiera prosty i funkcjonalny tryb ochrony, umożliwiający zapisy systemowe na wyznaczonych poziomach. W nieprzyjemnym przypadku kraksy, dzienniki systemowe są w stanie dostarczyć administratorowi systemu szczegółów, które pomogą wyśledzić przyczynę problemu.