2005.01_Nessus – skaner bezpieczeństwa_[Bezpieczenstwo].pdf

(604 KB) Pobierz
332779517 UNPDF
dla początkujących
Nessus – skaner
bezpieczeństwa
puter do Internetu, uzysku-
jemy dostęp do nieprzebra-
nych zasobów. Równocze-
śnie nasz komputer staje się dostępny dla
innych użytkowników. Nie wszyscy z nich
są nastawieni pokojowo. Trudno zresztą na
to liczyć, biorąc pod uwagę wciąż rosną-
cą liczbę mieszkańców globalnej wioski.
Z tego powodu bardzo ważne jest, aby
zdawać sobie sprawę z zagrożeń, które
mogą na nas czekać. Jeszcze ważniejsze
jest, aby potrafić się przed nimi ochronić.
W łataniu powszechnie znanych luk
bezpieczeństwa znacznie mogą nam
pomóc wszelkiego typu skanery bezpie-
czeństwa. Programy takie mają za zada-
nie przetestowanie, czy system jest podat-
ny na określoną metodę ataku. Powinni-
śmy skorzystać ze skanera (lub kilku ska-
nerów) bezpieczeństwa zaraz po zain-
stalowaniu systemu. Później powinni-
śmy powtarzać tę czynność co jakiś
czas (np. co miesiąc). Pozwoli to wykryć
znane już luki, więc będziemy mieli moż-
liwość załatać je zanim wykorzysta je wła-
mywacz. Pamiętajmy bowiem, że rów-
nież "czarne charaktery" mogą korzystać
z takiego oprogramowania.
Jednym z bardziej uniwersalnych
(a przy tym otwartym i bezpłatnym) ska-
nerem jest Nessus . Jego wielką zaletą
jest aktualność oraz łatwość rozbudowy.
Opiera się na wtyczkach, dzięki czemu
możemy dodać do niego własne testy.
Oprócz tego, możemy automatycznie uak-
tualniać listę wtyczek, dzięki czemu zosta-
ną one dołączone od razu po udostępnie-
niu. Niniejszy artykuł ma na celu popro-
wadzenie Czytelników przez instalację
i konfigurację Nessusa , a także zwróce-
nie uwagi na różne aspekty bezpieczeń-
stwa systemu.
puter jednego z nich padł ofiarą ataku.
Jak się okazało, zainstalował on Linuk-
sa i będąc święcie przekonany, że to
bezpieczny system, nie podjął żadnych
dodatkowych kroków w celu jego zabez-
pieczenia. Oczywiście, gdy w wyniku
ataku script-kiddies stracił dane na dysku,
był pełen pretensji do naszego ulubione-
go systemu. Wytłumaczyliśmy mu, że
system dopiero wtedy jest bezpieczny,
gdy się o to samemu zadba. I że nie ma
tu większego znaczenia, czy jest to Linux,
czy Windows . Przy okazji postanowili-
śmy sprawdzić, który z naszych kompute-
rów jest lepiej zabezpieczony. Do testów
wykorzystaliśmy Nessusa i okazało się, że
mój system zajął dopiero trzecie miejsce
(na pięć możliwych). Jak to mówią, leni-
stwo nie popłaca. Oczywiście, od razu
załatałem najgroźniejsze ze znalezionych
luk bezpieczeństwa i obiecałem sobie,
że będę częściej kontrolował system.
Analiza zabezpieczeń
Przede wszystkim musimy odpowie-
dzieć sobie na pytanie, czy nasz system
jest dobrze zabezpieczony. Odpowiedź
nie jest taka prosta. Włamywacz ma do
dyspozycji szereg różnych technik, z któ-
rych warto wymienić wykorzystanie sła-
bych haseł, dziur w oprogramowaniu lub
błędów w konfiguracji. Nie należy rów-
nież zapominać o tym, że zwykle najsłab-
szym ogniwem jest człowiek – to my sami
Na płycie CD/DVD
Na płycie CD/DVD zamieścili-
śmy oprogramowanie omawiane
w artykule.
Przykład użycia
Około rok temu, rozmawiając ze znajo-
mymi na IRC , dowiedziałem się, że kom-
Rysunek 1. Nowe wersje Nessusa
pozwalają przeprowadzać również testy
lokalne i przyrostowe
52 styczeń 2005
Piotr Machej
G dy podłączamy nasz kom-
332779517.037.png 332779517.038.png 332779517.039.png 332779517.040.png 332779517.001.png 332779517.002.png 332779517.003.png 332779517.004.png 332779517.005.png 332779517.006.png
nessus
dla początkujących
możemy nieumyślnie podać intruzowi
hasło lub wykonać przysłany przez niego
kod, otwierając mu drogę do systemu.
Hasła powinny być łatwe do zapamię-
tania i trudne do odgadnięcia. Nie zawsze
trudność odgadnięcia hasła będzie warun-
kiem wystarczającym, gdyż jeśli jest ono
przesyłane przez sieć (np. w celu zalogo-
wania się na zdalną maszynę lub autory-
zowania się w serwisie WWW ), to może
zostać podsłuchane. Z tego powodu lepiej
jest używać oprogramowania korzystającego
z szyfrowanej transmisji, a w dodatku nigdy
nie używać hasła systemowego do autoryza-
cji w innych serwisach.
Z błędami w oprogramowaniu trzeba
zawsze się liczyć. Praktycznie każdy pro-
gram, bardziej skomplikowany niż popu-
larny Hello World, może zawierać błąd – jest
to sprawa naturalna. Odpowiednie wyko-
rzystanie niektórych błędów może pro-
wadzić do uzyskania przez intruza więk-
szych uprawnień w systemie niż miałby
normalnie. Może też pozwolić na uzyska-
nie dostępu do systemu, do którego intruz
w zwykłych okolicznościach nie powinien
mieć wcale dostępu. Takie błędy są wcześniej
lub później ujawniane, a jeśli autorzy progra-
mu opiekują się swoim projektem, to publi-
kują odpowiednie poprawki. W przypad-
ku programów Open Source mogą to zrobić
również inni programiści, a nawet my sami
(o ile posiadamy odpowiednie umiejętności).
Warto więc dbać o to, aby w systemie były
zainstalowane jak najnowsze wersje oprogra-
mowania – szczególnie chodzi tu o progra-
my najbardziej narażone na atak, takie jak
serwery WWW czy programy pocztowe.
Bardzo często zdarza się, że użytkow-
nik przez własną nieuwagę lub niewiedzę
staje się ofiarą włamania lub zwykłej utraty
danych. Swego czasu wiele osób korzystają-
cych z IRC miało zwyczaj doradzać nowym
użytkownikom Linuksa zalogowanie się na
konto root i wydanie polecenia rm -rf / . Jeśli
delikwent był łatwowierny, a na dodatek nie
znał jeszcze podstawowych poleceń linukso-
wych, mogło skończyć się to dla niego nie-
zbyt przyjemnie (wspomniane polecenie
bez pytania kasuje wszystkie pliki na dysku).
Jak widać, należy mieć mocno ograniczo-
ne zaufanie do tego, co mówią inni – czy
to na IRC , w listach elektronicznych, czy za
pośrednictwem komunikatora. Nie należy
też bez namysłu uruchamiać zasłyszanych
poleceń czy programów nadesłanych przez
nie do końca zaufane osoby. To samo zresztą
dotyczy podawania haseł czy udostępniania
naszego komputera innym – jeśli to robimy,
to musimy być święcie przekonani, że tej
konkretnej osobie możemy zaufać.
Wspomniałem o błędach konfigu-
racji. Tu w zasadzie również wchodzi
w grę czynnik ludzki, gdyż błąd w kon-
figuracji jest zwykle wynikiem nasze-
go przeoczenia, pomyłki w planowaniu
lub po prostu nieznajomości niektórych
dostępnych opcji. Wyobraźmy sobie sytu-
ację, gdy wydaje nam się, że zabezpieczy-
liśmy dobrze nasz komputer. Założyliśmy
dobre hasła, uruchomiliśmy zaporę sieciową
i udostępniliśmy na zewnątrz tylko wybrane
usługi. I wszystko byłoby w porządku, ale...
w zaporze sieciowej pomyliliśmy kolejność
dwóch regułek. I to wystarczy, aby działa-
ła nie do końca zgodnie z naszymi oczeki-
waniami – może przykładowo dawać dostęp
do portu, który miał być zablokowany.
A włamywacz tylko czeka na takie okazje.
Rysunek 2. Nessus potrai
przeprowadzać równoczesne testy na
różnych komputerach
jemy hasło użytkownika root (przy pyta-
niu o Root Password ). Instalator pyta nas
o katalog, w którym chcemy zainstalo-
wać Nessusa . Klawiszem [ Enter ] zatwier-
dzamy domyślny wybór (chyba, że
z jakiegoś powodu chcemy go zmie-
nić – wówczas wpisujemy naszą ścieżkę).
Po kolejnym wciśnięciu klawisza [ Enter ]
następuje kompilacja i instalacja programu
(w razie konieczności poprzedzona usu-
nięciem starszej wersji). Na koniec zostają
wyświetlone ostatnie wskazówki i możemy
opuścić instalator ponownym wciśnięciem
klawisza [ Enter ]. Jak widać, dzięki instalato-
rowi mogliśmy ograniczyć się do wciskania
tylko jednego klawisza, chociaż pozostało
przed nami jeszcze kilka czynności.
Najpierw musimy wygenerować cer-
tyfikat, który będzie wykorzystywa-
ny do szyfrowania komunikacji pomię-
dzy serwerem i klientem Nessusa . W tym
celu wydajemy polecenie /usr/local/
sbin/nessus-mkcert (do tego już potrze-
bujemy uprawnień superużytkowni-
ka, więc najpierw korzystamy z polecenia
su - i podajemy hasło użytkownika root ).
Oczywiście, jeśli zainstalowaliśmy Nessusa w
innym katalogu niż domyślny, to ścieżka do
programu nessus-mkcert będzie odpowied-
nio inna. Kolejno będziemy musieli podać
następujące informacje:
Instalacja Nessusa
Przed zainstalowaniem Nessusa warto
zadbać o to, aby w systemie były zain-
stalowane biblioteki i pliki nagłówkowe
OpenSSL . W przypadku Auroksa jest to
pakiet openssl-devel .
Zaczynamy od wejścia na stronę do-
mową programu ( http://www.nessus.org/ ).
Wybieramy sekcję Download , a następ-
nie odnośnik Nessus 2.2 (w chwili pisa-
nia artykułu była to wersja najnowsza).
Z wyświetlonej strony możemy dowie-
dzieć się o trzech metodach instalacji Nessu-
sa . My zdecydujemy się na drugą – prostą,
a równocześnie bezpieczniejszą od najła-
twiejszej metody. W sekcji The easy and
less dangerous way znajdziemy spis adre-
sów, pod którymi możemy znaleźć insta-
lator. Wybieramy jeden z nich (np. http://
ftp.gwdg.de/pub/linux /misc/nessus/
nessus-2.2.0/nessus-installer/ ) i pobieramy
z niego plik nessus-installer.sh . Teraz
już wystarczy wejść do katalogu,
w którym zapisaliśmy plik i uruchomić
go poleceniem sh nessus-installer.sh . Tę
operację wykonujemy z poziomu zwykłe-
go użytkownika (nie wchodzimy na konto
root ).
Po przeczytaniu informacji powital-
nej możemy wcisnąć klawisz [ Enter ]. Pro-
gram zostaje rozpakowany, a następnie
jesteśmy powiadomieni, że zostanie utwo-
rzona tymczasowa powłoka z ustawio-
nym bitem SUID . Pozwoli to instalatorowi
w razie potrzeby na automatyczne korzysta-
nie z uprawnień użytkownika uprzywile-
jowanego. Przyjmujemy to do wiadomości
wciskając klawisz [ Enter ], a następnie poda-
• termin ważności certyfikatu CA
(w dniach),
• termin ważności certyfikatu serwera
(w dniach),
• kod naszego państwa (np. dla Polski
– PL),
• nazwa naszego województwa lub
powiatu,
• nazwa miasta,
• nazwa naszej organizacji.
Jeśli mamy wątpliwości, co powinniśmy
wpisać, możemy skorzystać z wartości
www.lpmagazine.org
53
332779517.007.png 332779517.008.png 332779517.009.png 332779517.010.png 332779517.011.png
 
dla początkujących
adresu komputera. W jego miejsce pod-
stawiany jest adres komputera, z którego
łączy się użytkownik korzystający z Nes-
susa . Dzięki temu łatwo można pozwolić
użytkownikowi tylko na testowanie jego
własnego komputera. Odpowiednie reguł-
ki wyglądają następująco:
gdzie możemy zapoznać się ze wszyst-
kimi dostępnymi wtyczkami. Biorąc pod
uwagę, że jest ich obecnie sporo ponad 5
tysięcy, mamy lekturę na dłuższy czas. Na
szczęście, jeśli chcemy przeprowadzić
kompletny test, nie musimy czytać opisu
wszystkich wtyczek (opisy są dostęp-
ne po wskazaniu konkretnej wtyczki).
W górnej części znajduje się spis grup,
natomiast w dolnej spis wtyczek nale-
żących do danej grupy. Możemy zazna-
czyć wszystkie wtyczki wciskając przy-
cisk Enable all . Należy zwrócić uwagę, że
niektóre testy mają na celu destabilizację
testowanego systemu (tzw. ataki odmowy
usługi). Jeśli wolimy nie przeprowadzać
aż tak niebezpiecznych testów, możemy
je wyłączyć przyciskiem Enable all but
dangerous plugins . Dodatkowo możemy
wyłączyć całą grupę testów związanych
z odmową usługi ( Denial of Service ).
Oczywiście, nic nie stoi na przeszko-
dzie, aby przeprowadzić tylko pojedyn-
cze, wybrane testy. W tym celu wystar-
czy najpierw wcisnąć przycisk Disable
all , a następnie ze spisu wybrać potrzeb-
ne nam wtyczki. Warto przy tym zazna-
czyć opcję Enable dependencies at runti-
me , dzięki czemu w razie potrzeby zosta-
ną zaznaczone inne potrzebne wtyczki
(jeśli są potrzebne do działania wybra-
nych przez nas testów). Dostępny przycisk
Filter pozwala nam na wyświetlenie tylko
wtyczek spełniających określone kryteria
(np. w nazwie lub opisie zawierających
słowo ssh ).
Następne dwie zakładki ( Prefs.
i Scan options ) służą do ustawie-
nia dokładniejszych opcji. Możemy tu
zdecydować, jaka technika skanowa-
nia portów ma być zastosowana, jakie
Rysunek 3. Te systemy wymagają
wprowadzenia jeszcze kilku zabezpieczeń
accept client_ip
default deny
domyślnych. Po przeczytaniu informa-
cji o nazwach plików, w których zosta-
ły zapisane poszczególne certyfikaty,
możemy wcisnąć [ Enter ].
Teraz musimy dodać użytkownika,
który będzie mógł korzystać z Nessusa .
Nie opuszczając konta użytkownika root ,
wydajemy polecenie /usr/local/sbin/
nessus-adduser . Podajemy nazwę użyt-
kownika, a następnie wybieramy sposób
uwierzytelniania. Prostsze jest korzysta-
nie z hasła niż z certyfikatu, więc wybie-
ramy tę pierwszą metodę ( pass ). Oczywi-
ście, należy też podać nasze hasło. Pamię-
tajmy jednak, aby nie było to takie samo
hasło, jak do któregoś z naszych kont. Jeśli
wybraliśmy metodę uwierzytelniania za
pomocą certyfikatu, to będziemy musieli
odpowiedzieć na te same pytania, co przy
tworzeniu certyfikatu Nessusa (a oprócz
tego, na dwa dodatkowe – o nazwisko
i imię oraz o adres e-mail ).
Tworząc użytkownika możemy od
razu nałożyć na niego ograniczenia. Doty-
czą one adresów komputerów, które
może testować dany użytkownik. Jeśli
nie chcemy ustalać żadnych ograniczeń,
to po prostu możemy wcisnąć kombi-
nację klawiszy [ Ctrl ]+[ d ]. W innym przy-
padku możemy wpisać szereg reguł
(po jednej w każdej linii), np.:
Wpisywanie regułek kończymy znaną już
kombinacją [ Ctrl ]+[ d ]. Wprowadzone dane
potwierdzamy wpisując y .
Przed uruchomieniem serwera warto
sprawdzić, czy nie pojawiły się nowe
wtyczki. Wydajemy polecenie /usr/local/
sbin/nessus-update-plugins – jeśli zosta-
ną znalezione nowe wtyczki, program je
zainstaluje. Oczywiście, do wykonania
tego polecenia potrzebujemy połączenia
z Internetem.
Teraz możemy już uruchomić serwer
Nessusa poleceniem /usr/local/sbin/
nessusd -D . Pojawi się informacja o łado-
waniu wtyczek (ang. plugins ). Jeśli nie
zadbaliśmy o skompilowanie Nessusa
z obsługą OpenSSL , to może pojawić się
kilka ostrzeżeń. Jeśli zainstalowaliśmy
wcześniej wspomniany pakiet openssl-
devel , to powinniśmy zobaczyć napis All
plugins loaded . Klienta Nessusa urucha-
miamy już z konta zwykłego użytkownika
poleceniem /usr/local/bin/nessus .
Koniguracja Nessusa
Po uruchomieniu pokazuje się nam okno
programu z kilkoma zakładkami. Na
razie interesuje nas tylko pierwsza, gdyż
musimy połączyć się z serwerem Nessu-
sa . W polu Nessusd Host wpisujemy nazwę
komputera, na którym jest uruchomiony
serwer. Jeśli jest uruchomiony na kompu-
terze, z którego korzystamy, możemy po
prostu wpisać localhost . Pole Port pozo-
stawiamy bez zmian – Nessus standardo-
wo nasłuchuje na porcie 1241 . W polach
Login i Password wpisujemy nazwę i hasło
użytkownika Nessusa (te, które wpisywa-
liśmy po wydaniu polecenia nessus-addu-
ser ). Teraz wystarczy wcisnąć przycisk Log
in . Przy pierwszym uruchomieniu pojawi
się informacja o certyfikacie. Sprawdzamy,
czy jest on poprawny, tzn. wyświetlone
wartości zgadzają się z tym, co podawali-
śmy podczas jego tworzenia, a następnie
zatwierdzamy go wciskając Yes .
Po zalogowaniu się zostaniemy prze-
niesieni do drugiej zakładki ( Plugins ),
Ostrzeżenie
Skaner systemowy możemy stosować
tylko względem systemów komputero-
wych i sieci, które należą do nas lub co
do których uzyskaliśmy stosowną zgodę.
Niezastosowanie się do tej zasady może
grozić niezbyt przyjemnymi konsekwen-
cjami, z odpowiedzialnością karną włącz-
nie. O ile bowiem trudno podstawowe
skanowanie jednoznacznie uznać za
próbę ataku, o tyle niektórzy administra-
torzy są na tym punkcie mocno przewraż-
liwieni. Ponadto, niektóre testy mogą
doprowadzić do zawieszenia niektórych
usług, a to w przypadku systemów pro-
dukcyjnych nie może już być traktowane
w kategorii żartu.
accept 192.168.100.0/24
accept 192.168.5.1
default deny
Powyższe linie pozwalają użytkow-
nikowi na testowanie komputerów
w sieci 192.168.100.0/24 oraz kompute-
ra 192.168.5.1 . Żadnego innego kompu-
tera nie będzie mógł przetestować, gdyż
domyślna reguła odmawia mu dostępu
( default deny ). Oczywiście, reguły można
zbudować inaczej – zabronić dostępu do
określonych komputerów i pozwolić do
wszystkich pozostałych. Ciekawostką jest
możliwość użycia słowa client_ip zamiast
54
styczeń 2005
332779517.012.png 332779517.013.png 332779517.014.png 332779517.015.png 332779517.016.png
 
nessus
dla początkujących
nazwy użytkowników i hasła mają być
użyte przy logowaniu się do poszcze-
gólnych usług oraz możemy określić
liczbę testów wykonywanych w tym
samym czasie. Jest tu też dostępna
opcja Safe checks (domyślnie włączona).
Powoduje ona, że potencjalnie groźne
wtyczki wykonują "łagodniejsze" testy,
np. opierając się na rozpoznaniu wersji
oprogramowania, zamiast na własnych
testach. Należy pamiętać, że nie wszyst-
kie wtyczki uwzględniają tę opcję. Jej
użycie może też prowadzić do pojawie-
nia się większej liczby fałszywych alar-
mów (więcej informacji w ramce Fałszy-
we alarmy ). Jeśli nie wiemy, do czego
służy dana opcja, lepiej pozostawić ją
w domyślnym ustawieniu.
W zakładce Target selection może-
my wreszcie określić, który kompu-
ter chcemy skanować. Jego adres wpi-
sujemy w polu Target(s) . Oczywiście,
zamiast pojedynczego adresu (np.
127.0.0.1 ) możemy od razu wpisać cały
zakres (np. 192.168.0.1-192.168.2.50
lub 192.168.10.1/24 ). Możemy też
wymienić kilka pojedynczych kompu-
terów i kilka zakresów oddzielając je
przecinkami.
Te opcje powinny nam wystarczyć.
Teraz już możemy wcisnąć widoczny na
dole okna przycisk Start the scan . Otwo-
rzy się kolejne okno, w którym będziemy
mogli obserwować przebieg skanowania
poszczególnych komputerów. Gdy ska-
nowanie zakończy się, otwarte zostanie
okno z raportem.
Analiza wyników
Pora sprawdzić, co znalazł Nessus na
naszym systemie. Okno raportu podzie-
lone jest na pięć części. Po lewej stro-
nie widzimy adresy testowanych podsieci
( Subnet ). Przy ich adresach można zauwa-
żyć znaczek określający, czy Nessus wykrył
jakieś problemy. Ikona żarówki oznacza
informację, znak ostrzeżenia z wykrzyk-
nikiem oznacza ostrzeżenie dotyczące
bezpieczeństwa, a znak zakazu wjazdu
oznacza potencjalną lukę w bezpieczeń-
stwie. Po wybraniu konkretnej podsieci
w okienku poniżej ( Host ) pojawi się spis
przetestowanych komputerów należących
do tej podsieci. Również tutaj możemy na
Rysunek 4. Z pomocą obszernego
podręcznika możemy napisać własne
wtyczki do Nessusa
pierwszy rzut oka ocenić, który kompu-
ter jest najbardziej zagrożony. Po zazna-
czeniu adresu komputera w umiesz-
czonym na górze oknie Port , pojawi się
spis znalezionych portów (ponownie
z informacją o zagrożeniach). Wybranie
jednego z nich sprawia, że w umieszczo-
nym obok okienku Severity zobaczymy
listę zagrożeń uporządkowaną względem
powagi. Dopiero, gdy wskażemy jedno
z nich, w głównej części okna zobaczy-
my szczegółowy opis luki. Metody sorto-
wania w poszczególnych oknach możemy
R E K L A M A
www.lpmagazine.org
55
332779517.017.png 332779517.018.png 332779517.019.png 332779517.020.png 332779517.021.png 332779517.022.png 332779517.023.png 332779517.024.png 332779517.025.png 332779517.026.png 332779517.027.png 332779517.028.png
 
dla początkujących
dowolnie zmieniać, dzięki czemu znaj-
dywać luki w inny sposób. Przykłado-
wo, warto zamienić miejscami pola Port
i Severity , ale również inne kombina-
cje mogą dać ciekawe efekty – wszystko
zależy od tego, jakie informacje bardziej
nas interesują.
Istotne jest, abyśmy zapoznali się
ze wszystkimi informacjami zawartymi
w głównym oknie. W przypadku ostrzeżeń
i powiadomień o lukach w bezpieczeń-
stwie otrzymujemy opis zagrożenia. Przy-
kładowo, w sytuacji wykrycia przez Nes-
susa serwera WWW Apache w wersji star-
szej niż 2.0.51 , jesteśmy powiadamiani o
jego wrażliwości na zdalny atak odmowy
usługi ( DoS Denial of Service ). Wersje
te są również podatne na atak z wyko-
rzystaniem przepełnienia bufora. Oprócz
takiego opisu, możemy też zobaczyć
kilka dodatkowych rubryk. Adres podany
w See also pozwala nam zapoznać się
z szerszym opisem błędu. Najważniej-
sza dla nas jest zawartość rubryki Solu-
tion , gdyż opisuje ona możliwe rozwiąza-
nie problemu. W przypadku wspomnia-
nego błędu rozwiązaniem jest uaktualnie-
nie serwera Apache do wersji 2.0.51 lub
nowszej. Dalej możemy dowiedzieć się,
jak duże ryzyko ( Risk factor ) jest związane
z danym błędem. W tym przypadku
ryzyko jest wysokie ( High ). Najlepiej jak
najszybciej uaktualnić oprogramowanie.
W przypadku innych ostrzeżeń, ryzyko
może być średnie ( Medium ) lub niskie
( Low ), a w przypadku informacji o bez-
pieczeństwie – nawet zerowe ( None ). Nie-
mniej, powinniśmy zapoznać się ze wszy-
stkimi informacjami, gdyż każda z nich
może być istotna. Przykładowo, może
okazać się, że jedna z usług, pomimo
naszych starań, nadal jest dostępna z Inter-
netu, a nie tylko z sieci lokalnej. Nie należy
od razu podejmować czynności opisanych
w Solution bez zapoznania się z całym
opisem problemu. Może bowiem okazać
się, że w ten sposób zablokujemy sobie
usługę, na której nam zależało, a co do
której tylko dostaliśmy pewne pouczenie
(jak ma to miejsce w przypadku zainstalo-
wanego oidentd , potrzebnego do łączenia
z niektórymi serwerami IRC ).
Jeśli chcemy uzyskać jeszcze więcej
informacji na temat błędu, możemy sko-
rzystać z wartości podanych w rubrykach
CVE i BID . Pierwsza z nich podaje sym-
bole, według których możemy wyszuki-
wać informacje na stronie Common Vul-
nerabilities and Exposures (pod adre-
sem http://www.cve.mitre.org/cve/index
.html wpisujemy symbol w polu CVE
Name ). Druga podaje identyfikator błędu
na liście BugTraq (możemy go wpisać
w polu Bugtraq ID na stronie http://
www.securityfocus.com/bid/bugtraqid/ ).
Raport ze skanu możemy zapisać na
dysku korzystając z przycisku Save report .
Do wyboru mamy kilka różnych forma-
tów zapisu danych. Jeśli zdecydujemy się
zapisać raport w formacie NBE , to później
będziemy mogli go ponownie otworzyć
w kliencie Nessusa . Jeśli natomiast chcemy
później obejrzeć raport wraz z różnymi
wykresami i zestawieniami w przeglądar-
ce internetowej, to powinniśmy wybrać
format HTML with Pies and Graphs .
Wyniki skanowania zależą od tego,
jakie opcje dobierzemy. Warto zapoznać
się z obszerną dokumentacją dostępną
na stronie domowej Nessusa , aby lepiej
poznać jego możliwości i zastosowa-
nie poszczególnych opcji konfiguracyj-
nych. Z pewnością sprawi to, że będzie-
my mogli lepiej dobierać ustawienia do
naszych potrzeb, co w rezultacie pozwo-
li skuteczniej zwiększyć bezpieczeństwo
systemu i sieci.
Rysunek 5. W serwisie SecurityFocus
możemy wyszukiwać informacje o lukach
na podstawie różnych kryteriów
Dodatkowe
oprogramowanie
Nessus , oprócz własnych wewnętrz-
nych testów, może wykorzystywać kilka
innych programów. Przykładowo, pro-
gram Nmap może być użyty do skano-
wania portów i wielu bardziej zaawan-
sowanych operacji, takich jak rozpozna-
wanie systemu operacyjnego. Jeśli zależy
nam na przeprowadzeniu testów odpor-
ności haseł na złamanie, możemy zain-
stalować program Hydra . Pozwoli on na
wykonanie prób brutalnego złamania
haseł ( bruteforce attack ) w takich usłu-
gach, jak Telnet , WWW , POP3 , IMAP
i inne. Oprócz tego, można wykorzy-
stać program Nikto – zapewnia on obsłu-
gę specyficznych ataków i testów doty-
czących serwerów WWW i usług skryp-
tów CGI .
O ile program Nmap możemy zna-
leźć w większości dystrybucji Linuksa,
o tyle pozostałe programy raczej
musimy zainstalować osobno. Nie są
one niezbędne do działania Nessusa ,
ale zwiększają jego funkcjonalność.
Adresy ich stron domowych znajdują się
w ramce W Internecie .
Fałszywe alarmy
Należy pamiętać, że Nessus przepro-
wadza analizę na podstawie dostępnych
informacji. Może się okazać, że będą
one niewystarczające lub doprowadzą do
błędnych wniosków. Z tego powodu część
ostrzeżeń, a nawet powiadomień o lukach
w zabezpieczeniach, może okazać się fał-
szywa.
Może się tak przykładowo zdarzyć
w sytuacji, gdy Nessus jest w stanie roz-
poznać oprogramowanie nasłuchujące
na określonym porcie, ale nie umie usta-
lić jego wersji. W tym przypadku może
ostrzec o błędach, które dotyczą wcze-
śniejszych wersji tego programu niż zain-
stalowana w naszym systemie.
Inna sytuacja, gdy ostrzeżenie może
być fałszywe, to przypadek, gdy błąd
sam w sobie jest groźny, ale ze wzglę-
du na podjęte przez nas inne czynności
(np. odpowiedni podział dysku na party-
cje), w naszym systemie okazuje się być
nieszkodliwy.
Nie da się wyliczyć wszystkich sytu-
acji, gdy Nessus może zwrócić fałszy-
we alarmy. Dobrze jest uważnie czytać
opisy zgłoszeń i starannie je analizować.
Nessus zwraca stosunkowo mało fałszy-
wych alarmów, ale nie należy mu ufać
bezgranicznie.
Przykładowe testy
W rozdziale Analiza wyników mogliśmy
zapoznać się ze sposobem odczytywania
wyników testów. Spróbujmy teraz zoba-
czyć kilka wyników z prawdziwego ska-
nowania i zastanowić się, jak je trakto-
wać. Analizie został poddany kompu-
ter z dosyć dawno instalowanym sys-
temem, tylko w razie potrzeby uzupeł-
nianym nowymi pakietami, więc zgło-
szeń błędów było dosyć dużo (7 luk, 18
ostrzeżeń i 39 informacji). Raport został
zapisany w formacie HTML with Pies and
Graphs .
Na pierwszej stronie raportu został
przedstawiony w formie graficznej pro-
56
styczeń 2005
332779517.029.png 332779517.030.png 332779517.031.png 332779517.032.png 332779517.033.png 332779517.034.png 332779517.035.png 332779517.036.png
 
Zgłoś jeśli naruszono regulamin