Darmowy fragment publikacji:
Tytuł oryginału: Metasploit: The Penetration Tester s Guide
Tłumaczenie: Lech Lachowski
ISBN: 978-83-246-5010-1
Original edition copyright © 2011 by David Kennedy, Jim O’Gorman, Devon Kearns, and Mati Aharoni.
All rights reserved.
Published by arrangement with No Starch Press, Inc.
Polish edition copyright 2013 by HELION SA.
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail: helion@helion.pl
WWW: http://helion.pl (księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/metasp
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
• Kup książkę
• Poleć książkę
• Oceń książkę
• Księgarnia internetowa
• Lubię to! » Nasza społeczność
Spis treĂci
PRZEDMOWA
SOWO WST}PNE
PODZI}KOWANIA
11
15
17
WPROWADZENIE
19
Dlaczego trzeba przeprowadzaÊ testy penetracyjne? ................................................................20
Dlaczego Metasploit? ..................................................................................................................20
Krótka historia Metasploit ...........................................................................................................20
Na temat tej ksiÈĝki ......................................................................................................................21
Jaka jest zawartoĂÊ tej ksiÈĝki? ....................................................................................................22
Uwagi na temat etyki ...................................................................................................................23
1
ABSOLUTNE PODSTAWY TESTÓW PENETRACYJNYCH
25
Fazy PTES ....................................................................................................................................26
CzynnoĂci wstÚpne .................................................................................................................26
Zbieranie informacji ...............................................................................................................26
Modelowanie zagroĝeñ ..........................................................................................................27
Analiza luk w zabezpieczeniach ............................................................................................27
Eksploatacja ............................................................................................................................27
Faza poeksploatacyjna ...........................................................................................................28
Przygotowanie raportu ...........................................................................................................28
Typy testów penetracyjnych ........................................................................................................29
Jawne testy penetracyjne .......................................................................................................29
Ukryte testy penetracyjne ......................................................................................................30
Skanery luk w zabezpieczeniach .................................................................................................30
Podsumowanie .............................................................................................................................31
2
PODSTAWY METASPLOIT
33
Terminologia ................................................................................................................................ 33
Exploit .................................................................................................................................... 34
adunek .................................................................................................................................. 34
Kod powïoki ........................................................................................................................... 34
Moduï ..................................................................................................................................... 34
Nasïuchiwacz ......................................................................................................................... 34
Interfejsy Metasploit ................................................................................................................... 35
Konsola MSFconsole ............................................................................................................. 35
Interfejs wiersza poleceñ MSFcli ......................................................................................... 36
Armitage ................................................................................................................................. 38
NarzÚdzia Metasploit .................................................................................................................. 38
MSFpayload ........................................................................................................................... 39
MSFencode ............................................................................................................................ 40
Nasm Shell ............................................................................................................................. 40
Metasploit Express oraz Metasploit Pro .................................................................................... 41
Podsumowanie ............................................................................................................................. 41
3
ZBIERANIE INFORMACJI
43
Pasywne zbieranie informacji ..................................................................................................... 44
Wyszukiwanie whois ............................................................................................................. 44
Netcraft .................................................................................................................................. 45
NSLookup .............................................................................................................................. 46
Aktywne zbieranie informacji ..................................................................................................... 47
Skanowanie portów za pomocÈ narzÚdzia Nmap ................................................................ 47
Praca z bazÈ danych w Metasploit ........................................................................................ 49
Skanowanie portów za pomocÈ Metasploit .......................................................................... 54
Skanowanie ukierunkowane ....................................................................................................... 56
Skanowanie bloku wiadomoĂci serwera ............................................................................... 56
Polowanie na niewïaĂciwie skonfigurowane serwery Microsoft SQL ................................ 57
Skanowanie serwera SSH ..................................................................................................... 58
Skanowanie FTP .................................................................................................................... 59
Zamiatanie SNMP ................................................................................................................. 60
Pisanie niestandardowych skanerów .......................................................................................... 61
WybiegajÈc naprzód .................................................................................................................... 64
4
S p i s t r e Ă c i
4
SKANOWANIE LUK W ZABEZPIECZENIACH
65
Podstawowe skanowanie luk w zabezpieczeniach .....................................................................66
Skanowanie za pomocÈ NeXpose ................................................................................................67
Konfiguracja ...........................................................................................................................68
Importowanie raportu do Metasploit Framework ...............................................................73
Uruchamianie NeXpose z poziomu MSFconsole ................................................................74
Skanowanie za pomocÈ aplikacji Nessus ....................................................................................76
Konfiguracja skanera Nessus .................................................................................................76
Tworzenie polityki skanowania Nessusa ...............................................................................77
Uruchamianie skanowania za pomocÈ Nessusa ....................................................................79
Raporty skanera Nessus .........................................................................................................80
Importowanie wyników do Metasploit Framework .............................................................80
Skanowanie za pomocÈ Nessusa z poziomu Metasploit ......................................................81
Wyspecjalizowane skanery luk w zabezpieczeniach .................................................................84
Potwierdzanie logowania SMB .............................................................................................84
Skanowanie w poszukiwaniu otwartego uwierzytelniania VNC .........................................86
Skanowanie w poszukiwaniu otwartych serwerów X11 ......................................................88
Wykorzystywanie wyników skanowania do autopwningu .........................................................89
5
PRZYJEMNO¥m EKSPLOATACJI
91
Podstawowa eksploatacja .............................................................................................................92
Polecenie msf show exploits ...............................................................................................92
Polecenie msf show auxiliary .............................................................................................92
Polecenie msf show options ...............................................................................................92
Polecenie msf show payloads .............................................................................................94
Polecenie msf show targets ................................................................................................96
Polecenie info .........................................................................................................................97
Polecenia set i unset ...............................................................................................................97
Polecenia setg i unsetg ...........................................................................................................98
Polecenie save ........................................................................................................................98
Twoja pierwsza eksploatacja .......................................................................................................99
Eksploatacja maszyny Ubuntu ..................................................................................................104
adunki sprawdzajÈce wszystkie porty ....................................................................................106
Pliki zasobów ..............................................................................................................................108
Podsumowanie ...........................................................................................................................110
S p i s t r e Ă c i
5
6
METERPRETER
111
Przejmowanie maszyny wirtualnej Windows XP .................................................................... 112
Skanowanie portów za pomocÈ narzÚdzia Nmap .............................................................. 112
Atak na MS SQL .................................................................................................................. 113
Siïowy atak na MS SQL Server .......................................................................................... 114
Rozszerzona procedura xp_cmdshell ................................................................................. 115
Podstawowe polecenia Meterpretera ................................................................................. 117
Przechwytywanie uderzeñ klawiatury ................................................................................ 118
Wykonywanie zrzutów nazw uĝytkownika i haseï .................................................................. 120
WyodrÚbnianie skrótów haseï ............................................................................................. 120
Zrzuty skrótów haseï ........................................................................................................... 121
Technika pass-the-hash ............................................................................................................. 122
ZwiÚkszanie uprawnieñ ............................................................................................................ 123
Zastosowanie tokenów personifikacji ....................................................................................... 125
Zastosowanie polecenia ps ........................................................................................................ 125
Pivoting innych systemów ........................................................................................................ 127
Stosowanie skryptów Meterpretera ......................................................................................... 131
Migracja procesu ................................................................................................................. 132
Unieruchamianie oprogramowania antywirusowego ........................................................ 132
Uzyskiwanie skrótów haseï do systemu ............................................................................. 132
¥ledzenie caïego ruchu na maszynie docelowej ................................................................ 133
Scrapowanie systemu .......................................................................................................... 133
Zastosowanie skryptu persystencji ..................................................................................... 133
Wykorzystywanie moduïów fazy poeksploatacyjnej ............................................................... 135
Uaktualnianie powïoki poleceñ do Meterpretera .................................................................... 135
Operowanie interfejsami API systemu Windows za pomocÈ dodatku Railgun .................... 137
Podsumowanie ........................................................................................................................... 138
7
UNIKANIE WYKRYCIA
139
Tworzenie samodzielnych plików binarnych za pomocÈ MSFpayload ................................. 140
Unikanie wykrycia przez program antywirusowy ................................................................... 142
Kodowanie za pomocÈ narzÚdzia MSFencode .................................................................. 142
Wielokrotne kodowanie ...................................................................................................... 144
Niestandardowe szablony plików wykonywalnych ................................................................. 146
Potajemne uruchamianie ïadunku ............................................................................................ 147
Programy kompresujÈce ............................................................................................................ 149
Koñcowe uwagi dotyczÈce unikania wykrycia przez oprogramowanie antywirusowe ......... 150
6
S p i s t r e Ă c i
8
WYKORZYSTANIE ATAKÓW TYPU CLIENT-SIDE
151
Exploity przeglÈdarek ................................................................................................................152
Jak dziaïajÈ exploity przeglÈdarek .......................................................................................153
Rzut oka na instrukcje NOP ................................................................................................154
Wykorzystanie programu Immunity Debugger do odczytywania kodu powïoki NOP .........155
Aurora — exploit przeglÈdarki Internet Explorer ...................................................................158
PodatnoĂÊ formatu pliku ............................................................................................................163
Przesyïanie ïadunku ...................................................................................................................164
Podsumowanie ...........................................................................................................................165
9
MODUY POMOCNICZE METASPLOIT
167
Moduïy pomocnicze w dziaïaniu ..............................................................................................170
Budowa moduïu pomocniczego ................................................................................................173
WybiegajÈc naprzód ...................................................................................................................178
10
PAKIET NARZ}DZI SOCJOTECHNICZNYCH — SOCIAL-ENGINEER TOOLKIT 179
Konfiguracja pakietu Social-Engineer Toolkit .........................................................................180
Wektor ataku spear-phishing ....................................................................................................181
Wektory ataków WWW .............................................................................................................187
Aplet Javy ..............................................................................................................................187
Exploity WWW typu client-side .........................................................................................192
Zbieranie nazw uĝytkowników i haseï ................................................................................194
Tabnabbing ...........................................................................................................................196
Atak typu man-left-in-the-middle .......................................................................................196
Metoda Web Jacking ............................................................................................................197
Atak wieloaspektowy ............................................................................................................199
Zainfekowane noĂniki danych ...................................................................................................204
Wektor ataku Teensy USB HID ...............................................................................................204
Dodatkowe funkcje pakietu SET ..............................................................................................207
WybiegajÈc naprzód ...................................................................................................................208
11
FAST-TRACK
209
WstrzykniÚcie Microsoft SQL ...................................................................................................210
NarzÚdzie SQL Injector — atak z wykorzystaniem ïañcucha zapytania ..........................211
NarzÚdzie SQL Injector — atak z wykorzystaniem parametru POST .............................212
RÚczne wstrzykiwanie ..........................................................................................................213
NarzÚdzie MSSQL Bruter ...................................................................................................215
NarzÚdzie SQLPwnage ........................................................................................................219
S p i s t r e Ă c i
7
Generator zmiany formatu z binarnego na heksadecymalny .................................................. 222
Zmasowany atak typu client-side ............................................................................................. 222
Kilka sïów na temat automatyzacji ........................................................................................... 225
12
KARMETASPLOIT
227
Konfiguracja ............................................................................................................................... 228
Uruchamianie ataku .................................................................................................................. 230
Zbieranie poĂwiadczeñ .............................................................................................................. 232
Uzyskiwanie dostÚpu do powïoki ............................................................................................. 233
Podsumowanie ........................................................................................................................... 236
13
TWORZENIE WASNYCH MODUÓW
237
Wykonywanie poleceñ na Microsoft SQL ............................................................................... 238
Analiza gotowego moduïu Metasploit ...................................................................................... 240
Tworzenie nowego moduïu ...................................................................................................... 241
PowerShell ........................................................................................................................... 242
Uruchamianie exploita powïoki .......................................................................................... 243
Definiowanie funkcji powershell_upload_exec ................................................................. 245
Konwersja z formatu heksadecymalnego na format binarny ............................................ 246
Liczniki ................................................................................................................................. 247
Uruchamianie exploita ........................................................................................................ 249
KorzyĂci pïynÈce z wykorzystywania istniejÈcego kodu ......................................................... 250
14
251
TWORZENIE WASNYCH EXPLOITÓW
Sztuka fuzzingu .......................................................................................................................... 252
Kontrolowanie SEH .................................................................................................................. 256
Omijanie ograniczeñ SEH ........................................................................................................ 258
Uzyskiwanie adresu zwrotnego ................................................................................................ 261
Zïe znaki i zdalne wykonywanie kodu ...................................................................................... 266
Podsumowanie ........................................................................................................................... 269
15
IMPORTOWANIE EXPLOITÓW DO METASPLOIT FRAMEWORK
271
Podstawy jÚzyka asemblera ....................................................................................................... 272
Rejestry EIP i ESP .............................................................................................................. 272
Zestaw instrukcji JMP ......................................................................................................... 272
Instrukcje NOP i NOP slide’y ............................................................................................ 272
8
S p i s t r e Ă c i
Importowanie exploita przepeïnienia bufora ...........................................................................273
Rozkïadanie na czÚĂci gotowego exploita ...........................................................................274
Konfigurowanie definicji exploita .......................................................................................276
Testowanie podstawowego exploita ....................................................................................276
Implementowanie funkcji Metasploit Framework ............................................................278
Dodawanie randomizacji .....................................................................................................279
Usuwanie NOP slide ............................................................................................................280
Usuwanie fikcyjnego kodu powïoki ....................................................................................280
Kompletny moduï ................................................................................................................281
Exploit nadpisania rekordu SEH ..............................................................................................283
Podsumowanie ...........................................................................................................................291
16
J}ZYK SKRYPTOWY METERPRETERA
293
Podstawy jÚzyka skryptowego Meterpretera ...........................................................................293
Interfejs API Meterpretera .......................................................................................................300
WyĂwietlanie komunikatów .................................................................................................300
Podstawowe wywoïania API ................................................................................................301
Domieszki Meterpretera .....................................................................................................302
Zasady pisania skryptów Meterpretera .....................................................................................304
Tworzenie wïasnego skryptu Meterpretera .............................................................................304
Podsumowanie ...........................................................................................................................311
17
SYMULOWANY TEST PENETRACYJNY
313
CzynnoĂci wstÚpne ....................................................................................................................314
Zbieranie informacji ...................................................................................................................314
Modelowanie zagroĝeñ ..............................................................................................................315
Eksploatacja ................................................................................................................................317
Dostosowywanie MSFconsole ..................................................................................................318
Faza poeksploatacyjna ...............................................................................................................319
Skanowanie systemu Metasploitable ..................................................................................321
Identyfikacja usïug podatnych na ataki ...............................................................................322
Atak na serwer Apache Tomcat .................................................................................................323
Atakowanie nietypowych usïug .................................................................................................326
Zacieranie Ăladów .......................................................................................................................327
Podsumowanie ...........................................................................................................................330
S p i s t r e Ă c i
9
A
KONFIGURACJA MASZYN TESTOWYCH
331
Instalacja i konfiguracja systemów ........................................................................................... 331
Uruchamianie maszyn wirtualnych z systemem Linux ........................................................... 332
Przygotowywanie instalacji Windows XP podatnej na ataki .................................................. 333
Konfiguracja serwera WWW na systemie Windows XP ................................................... 333
Instalacja i konfiguracja serwera SQL ................................................................................ 334
Tworzenie podatnej na ataki aplikacji WWW ................................................................... 336
Aktualizacja systemu Back|Track ....................................................................................... 339
B
¥CIkGAWKA
341
Polecenia MSFconsole .............................................................................................................. 341
Polecenia Meterpretera ............................................................................................................ 343
Polecenia MSFpayload ............................................................................................................. 346
Polecenia MSFencode .............................................................................................................. 346
Polecenia MSFcli ...................................................................................................................... 347
MSF, Ninja, Fu ......................................................................................................................... 347
MSFvenom ................................................................................................................................ 348
Polecenia Meterpretera dla fazy poeksploatacyjnej ................................................................ 348
SKOROWIDZ
351
10
S p i s t r e Ă c i
4
Skanowanie luk
w zabezpieczeniach
Skaner luk w zabezpieczeniach (ang. vulnerability scanner) jest zautomatyzo-
wanym programem przeznaczonym do wyszukiwania sïabych punktów kom-
puterów, systemów komputerowych, sieci oraz aplikacji. Program ten sonduje
system, wysyïajÈc do niego poprzez sieÊ porcjÚ danych i analizujÈc otrzymane
odpowiedzi. Ma to na celu enumeracjÚ wszelkich luk w zabezpieczeniach celu
poprzez wykorzystanie jako punktu odniesienia wïasnej bazy danych luk w za-
bezpieczeniach.
Róĝne systemy operacyjne zazwyczaj odmiennie reagujÈ na wysyïane próbki
sieciowe z uwagi na wykorzystywanie róĝnych implementacji sieciowych. Te
unikatowe odpowiedzi sïuĝÈ jako odcisk palca (ang. fingerprint), który jest wy-
korzystywany przez skaner luk w zabezpieczeniach do okreĂlenia wersji systemu
operacyjnego, a nawet poziomu zainstalowanych poprawek. Skaner luk w za-
bezpieczeniach moĝe równieĝ wykorzystywaÊ zestawy poĂwiadczeñ uĝytkowni-
ka w celu zalogowania siÚ do zdalnego systemu i dokonania enumeracji opro-
gramowania i usïug, co pozwala okreĂliÊ, czy system jest zaïatany. Na podstawie
uzyskanych wyników przedstawia raport wyliczajÈcy wszystkie luki w zabezpie-
czeniach wykryte w danym systemie. Taki raport moĝe byÊ uĝyteczny zarówno
dla administratorów sieci, jak i dla pentesterów.
Skanery luk w zabezpieczeniach zasadniczo generujÈ duĝy ruch w sieci i dla-
tego nie sÈ zazwyczaj wykorzystywane w testach penetracyjnych, kiedy jednym
z zaïoĝeñ jest pozostanie niewykrytym. JeĂli jednak przeprowadzasz test pene-
tracyjny, w przypadku którego wykrycie nie stanowi problemu, to taki skaner
moĝe zaoszczÚdziÊ Ci rÚcznego sondowania systemów w celu okreĂlenia luk w za-
bezpieczeniach oraz poziomów zainstalowanych poprawek.
Bez wzglÚdu na to, czy korzystasz ze zautomatyzowanych skanerów, czy wy-
konujesz te dziaïania rÚcznie, skanowanie jest zawsze jednym z najbardziej istot-
nych elementów w procesie przeprowadzania testów penetracyjnych. JeĂli zo-
stanie ono wykonane dokïadnie, bÚdzie stanowiïo najwiÚkszÈ wartoĂÊ dla Twojego
klienta. W tym rozdziale omówimy szereg skanerów luk w zabezpieczeniach
oraz sposoby ich integracji z Metasploit. Wskaĝemy równieĝ kilka moduïów
pomocniczych w Metasploit Framework, które mogÈ lokalizowaÊ okreĂlone luki
w zabezpieczeniach systemów zdalnych.
Podstawowe skanowanie luk
w zabezpieczeniach
Przyjrzyjmy siÚ, jak dziaïa skanowanie na najbardziej podstawowym poziomie.
W zamieszczonym poniĝej listingu zastosujemy netcat do przechwycenia baneru
z celu o adresie IP 192.168.1.203. Przychwytywanie banerów (ang. banner grabbing)
polega na poïÈczeniu siÚ z usïugÈ zdalnej sieci i odczytaniu zwracanego identy-
fikatora (baneru) tej usïugi. Wiele usïug sieciowych, takich jak WWW, transfer
plików oraz serwery pocztowe, zwraca swoje banery natychmiast po nawiÈzaniu
z nimi poïÈczenia lub w odpowiedzi na okreĂlone polecenie. PoïÈczymy siÚ te-
raz z serwerem WWW na porcie TCP 80 i wyĂlemy ĝÈdanie GET HTTP, które
umoĝliwi nam przyjrzenie siÚ nagïówkowi informacji zwracanej przez ten zdal-
ny serwer w odpowiedzi na nasze ĝÈdanie.
root@bt:/opt/framework3/msf3# nc 192.168.1.203 80
GET HTTP 1/1
HTTP/1.1 400 Bad Request
Server: Microsoft-IIS/5.1
Informacja zwrócona w punkcie informuje nas, ĝe system dziaïajÈcy na
porcie 80 jest serwerem WWW opartym na Microsoft IIS 5.1. Uzbrojeni w tÚ
informacjÚ moglibyĂmy wykorzystaÊ skaner luk w zabezpieczeniach, tak jak po-
kazuje to rysunek 4.1, do okreĂlenia, czy ta wersja IIS posiada jakieĂ luki w za-
bezpieczeniach i czy ten konkretny serwer ma zainstalowane poprawki.
66
R o z d z i a ï 4
Rysunek 4.1. Wyniki skanowania luk w zabezpieczeniach docelowego serwera WWW
OczywiĂcie w praktyce nie jest to takie proste. Skanery luk w zabezpiecze-
niach czÚsto generujÈ wiele wyników faïszywie pozytywnych (ang. false positives,
np. raportowanie luki w zabezpieczeniach tam, gdzie jej nie ma) oraz faïszywie
negatywnych (ang. false negatives, np. niewykrycie luki w zabezpieczeniach
tam, gdzie ona istnieje). Ma to zwiÈzek z subtelnymi róĝnicami w konfiguracji
systemów i aplikacji. Ponadto twórcy skanerów luk w zabezpieczeniach majÈ
motywacjÚ, by skanery zgïaszaïy jak najwiÚcej pozytywnych wyników, poniewaĝ
im wiÚcej „trafieñ”, tym lepiej wyglÈda to dla potencjalnego nabywcy. Skanery luk
w zabezpieczeniach sÈ na tyle dobre, na ile dobre sÈ ich bazy danych. Moĝna je
równieĝ ïatwo oszukaÊ za pomocÈ faïszywych banerów lub niespójnych konfiguracji.
Przyjrzyjmy siÚ kilku najbardziej uĝytecznym skanerom luk w zabezpiecze-
niach, takim jak NeXpose, Nessus oraz inne wyspecjalizowane skanery.
Skanowanie za pomocÈ NeXpose
NeXpose to dostarczony przez Rapid7 skaner luk w zabezpieczeniach, który ska-
nuje sieci w celu identyfikacji dziaïajÈcych w nich urzÈdzeñ oraz przeprowadza
kontrolÚ, ĝeby okreĂliÊ sïabe punkty bezpieczeñstwa systemów operacyjnych
i aplikacji. NastÚpnie dane uzyskane podczas skanowania sÈ analizowane i prze-
twarzane do zaïÈczenia w róĝnych raportach.
Rapid7 oferuje wiele wersji skanera NeXpose, jednak my skorzystamy z edycji
Community, poniewaĝ jest ona darmowa. JeĂli zamierzasz wykorzystywaÊ NeXpose
w celach komercyjnych, sprawdě informacje na temat róĝnych wersji tej aplikacji,
ich funkcji oraz cen na stronie Rapid7 (http://www.rapid7.com/vulnerability-scanner.jsp).
Celem naszego skanowania bÚdzie domyĂlna instalacja Windows XP SP2, skon-
figurowana wedïug wskazówek z zaïÈcznika A. Najpierw wykonamy podstawowe
skanowanie jawne naszego celu i zaimportujemy wyniki do Metasploit. TÚ sek-
cjÚ zakoñczymy omówieniem sposobu przeprowadzania skanowania NeXpose
bezpoĂrednio z poziomu msfconsole zamiast korzystania z interfejsu WWW, co
eliminuje koniecznoĂÊ importowania wyników skanowania.
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
67
Konfiguracja
Po zainstalowaniu NeXpose Community otwórz przeglÈdarkÚ i wpisz w pasku
adresowym https:// twój_adres_ip :3780. Zaakceptuj certyfikat z podpisem wïa-
snym NeXpose i zaloguj siÚ, uĝywajÈc poĂwiadczeñ, które podaïeĂ podczas instalacji.
Powinien siÚ teraz uruchomiÊ interfejs podobny do pokazanego na rysunku 4.2.
(Dokïadne instrukcje instalacji NeXpose znajdziesz na stronie Rapid7).
Rysunek 4.2. Zakïadka Home startowego interfejsu NeXpose
Na górnym pasku na gïównej stronie NeXpose dostÚpnych jest kilka zakïadek:
Q Zakïadka Assets (zasoby) w punkcie wyĂwietla szczegóïy
przeskanowanych komputerów i innych urzÈdzeñ w Twojej sieci.
Q Zakïadka Reports (raporty) w punkcie zawiera listÚ wygenerowanych
raportów ze skanowania luk w zabezpieczeniach.
Q Zakïadka Vulnerabilities (luki w zabezpieczeniach) w punkcie zawiera
szczegóïy dotyczÈce wszelkich luk w zabezpieczeniach, wykrytych
podczas przeprowadzonych skanowañ.
Q Zakïadka Administration (administrowanie) w punkcie umoĝliwia
konfiguracjÚ róĝnych opcji.
Przyciski znajdujÈce siÚ w gïównym obszarze interfejsu umoĝliwiajÈ wyko-
nywanie typowych zadañ, takich jak tworzenie nowego Ărodowiska lub definio-
wanie nowego skanowania luk w zabezpieczeniach.
Kreator nowego Ărodowiska
Zanim rozpoczniesz skanowanie luk w zabezpieczeniach za pomocÈ NeXpose,
musisz skonfigurowaÊ Ărodowisko (ang. site) — logiczne zestawienie elementów,
takich jak okreĂlona podsieÊ, grupa serwerów, a nawet pojedyncze stacje robocze.
Takie Ărodowiska bÚdÈ nastÚpnie skanowane przez NeXpose, a dla kaĝdego kon-
kretnego Ărodowiska moĝna zdefiniowaÊ róĝne rodzaje skanowania.
68
R o z d z i a ï 4
1. Aby utworzyÊ nowe Ărodowisko, kliknij przycisk New Site w zakïadce
Home skanera NeXpose, wprowadě nazwÚ strony (pole Name) oraz krótki
opis (pole Description), a nastÚpnie kliknij przycisk Next.
2. Na kolejnym etapie, przedstawionym na rysunku 4.3, moĝesz szczegóïowo
zdefiniowaÊ swoje cele. Moĝesz dodaÊ pojedynczy adres IP, zakres
adresów IP, nazwy hostów itd. Moĝesz równieĝ wyïÈczyÊ ze skanowania
urzÈdzenia, takie jak drukarki. (Drukarki zazwyczaj niezbyt dobrze
reagujÈ na skanowanie. MieliĂmy do czynienia z przypadkami, kiedy
proste skanowanie luk w zabezpieczeniach powodowaïo uruchomienie
w drukarce kolejki drukowania ponad miliona czarnych stron!).
Po zakoñczeniu dodawania (pole Included Devices) i wyïÈczania
(pole Excluded Devices) urzÈdzeñ ze skanowania kliknij przycisk Next.
Rysunek 4.3. Dodawanie urzÈdzeñ do nowego Ărodowiska NeXpose
3. Teraz masz do wyboru kilka róĝnych szablonów skanowania
(Scan Template), takich jak Discovery Scan (skanowanie ujawniajÈce)
lub Penetration test (test penetracyjny). Moĝesz równieĝ wybraÊ silnik
skanowania (Scan Engine) oraz zdefiniowaÊ harmonogram automatycznego
skanowania (Scan Schedule). Dla celów niniejszego omówienia procedury
pozostaw wartoĂci domyĂlne i kliknij przycisk Next.
4. JeĂli posiadasz poĂwiadczenia (ang. credentials) dla Ărodowiska, które
chcesz skanowaÊ, to moĝesz je dodaÊ na tym etapie. PoĂwiadczenia mogÈ
pomóc w wygenerowaniu bardziej dokïadnych i kompletnych wyników
dziÚki dogïÚbnej enumeracji zainstalowanego oprogramowania i polityki
systemu danego celu.
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
69
5. W zakïadce Credentials kliknij przycisk New Login, podaj nazwÚ
uĝytkownika i hasïo dla adresu IP, który chcesz skanowaÊ, a nastÚpnie
kliknij Test Login, ĝeby je zweryfikowaÊ. Zapisz poĂwiadczenia.
6. Na koniec kliknij przycisk Save, aby zakoñczyÊ dziaïanie kreatora nowego
Ărodowiska i powróciÊ do zakïadki Home. W tej zakïadce powinno byÊ teraz
widoczne nowe Ărodowisko, które wïaĂnie dodaïeĂ. Pokazuje to rysunek 4.4.
Rysunek 4.4. Zakïadka Home, na której widaÊ informacjÚ o nowo utworzonym
Ărodowisku
Kreator nowego skanowania rÚcznego
JeĂli skonfigurowaïeĂ juĝ nowe Ărodowisko, moĝesz przygotowaÊ pierwsze
skanowanie:
1. Kliknij przycisk New Manual Scan (nowe skanowanie rÚczne), widoczny
na rysunku 4.4. Powinno zostaÊ wyĂwietlone okno dialogowe Start New
Scan (rozpocznij nowe skanowanie), tak jak na rysunku 4.5. W tym oknie
definiujesz elementy, które chcesz skanowaÊ (Included assets), oraz te,
które chcesz ze skanowania wyïÈczyÊ (Excluded assets). W tym przykïadzie
bÚdziemy skanowaÊ nasz domyĂlny system Windows XP.
2. Sprawdě dobrze docelowy adres IP, aby upewniÊ siÚ, ĝe nie przeskanujesz
przypadkowo niewïaĂciwego urzÈdzenia lub sieci. Kliknij przycisk Start Now,
ĝeby rozpoczÈÊ.
3. NeXpose powinien automatycznie odĂwieĝaÊ bieĝÈcÈ stronÚ w miarÚ
postÚpów skanowania. Poczekaj, aĝ status dla Scan Progress (postÚp
skanowania) oraz Discovered Assets (odkryte zasoby) bÚdzie wskazywaï
Completed (zakoñczone), tak jak widaÊ to na rysunku 4.6. W sekcji
Scan Progress moĝesz zobaczyÊ, ĝe skanowanie naszego pojedynczego
urzÈdzenia doprowadziïo do wykrycia 268 luk w zabezpieczeniach.
Z kolei sekcja Discovered Assets zawiera wiÚcej informacji na temat celu,
takich jak nazwa urzÈdzenia oraz jego system operacyjny. Przejdě teraz
do zakïadki Reports.
70
R o z d z i a ï 4
Rysunek 4.5. Okno dialogowe konfiguracji skanowania w NeXpose
Rysunek 4.6. Ukoñczone skanowanie w NeXpose
Kreator nowego raportu
JeĂli uruchomiïeĂ NeXpose po raz pierwszy i ukoñczyïeĂ tylko jedno skanowanie,
to zakïadka Reports powinna pokazywaÊ, ĝe nie masz wygenerowanego ĝadnego
raportu.
1. Aby uruchomiÊ kreatora nowego raportu, kliknij przycisk New Report,
tak jak pokazuje to rysunek 4.7.
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
71
Rysunek 4.7. Zakïadka Reports skanera NeXpose
2. W polu Report name wprowadě nazwÚ, jakÈ wybraïeĂ dla danego raportu.
W polu Report format wybierz opcjÚ NeXpose Simple XML Report, co umoĝliwi
Ci zaimportowanie wyników skanowania do Metasploit. Moĝesz równieĝ
wybraÊ szablon raportu w polu Report template oraz skonfigurowaÊ odpowiedniÈ
strefÚ czasowÈ w polu Report time zone, jeĂli na przykïad przeprowadzasz
swój test penetracyjny w podróĝy. Wspomniane opcje przedstawione
zostaïy na rysunku 4.8. Kliknij przycisk Next, jeĂli chcesz kontynuowaÊ.
Rysunek 4.8. Wybór nazwy i formatu raportu
3. W kolejnym oknie dodaj urzÈdzenia, które majÈ byÊ wïÈczone do raportu,
klikajÈc Select Sites (wybierz Ărodowiska) i dodajÈc zakres przeskanowanego
celu, tak jak pokazuje to rysunek 4.9. NastÚpnie kliknij Save (zapisz).
Rysunek 4.9. Wybór Ărodowiska, które ma byÊ zaïÈczone w raporcie
72
R o z d z i a ï 4
4. W oknie dialogowym Select Devices wybierz elementy docelowe, które
majÈ byÊ zaïÈczone w Twoim raporcie. NastÚpnie kliknij Save.
5. BÚdÈc na powrót w oknie Report Configuration (konfiguracja raportu),
kliknij Save, aby zaakceptowaÊ pozostaïe wartoĂci domyĂlne dla danego
raportu. Na liĂcie w zakïadce Reports powinien teraz pojawiÊ siÚ nowo
utworzony raport, tak jak przedstawia to rysunek 4.10. (PamiÚtaj, ĝeby
zapisaÊ plik raportu, aby móc uĝyÊ go w Metasploit Framework).
Rysunek 4.10. Zakïadka Reports wyĂwietlajÈca listÚ raportów
Importowanie raportu do Metasploit Framework
Po przeprowadzeniu peïnego skanowania luk w zabezpieczeniach za pomocÈ
aplikacji NeXpose musisz zaimportowaÊ wyniki do Metasploit. Zanim jednak to
zrobisz, powinieneĂ utworzyÊ nowÈ bazÚ danych, stosujÈc polecenie db_connect
z poziomu msfconsole. Po utworzeniu bazy danych moĝesz zaimportowaÊ plik
XML z NeXpose za pomocÈ polecenia db_import. Metasploit automatycznie wy-
kryje, ĝe dany plik pochodzi z aplikacji NeXpose, i zaimportuje przeskanowanego
hosta. Teraz moĝesz zweryfikowaÊ poprawnoĂÊ przeprowadzonego importu, wpi-
sujÈc polecenie db_hosts. (Wymienione czynnoĂci przedstawia poniĝszy listing).
Jak moĝesz zauwaĝyÊ w punkcie , Metasploit posiada teraz informacje o 268
lukach w zabezpieczeniach, wykrytych podczas przeprowadzonego przez Ciebie
skanowania.
msf db_connect postgres:toor@127.0.0.1/msf3
msf db_import /tmp/host_195.xml
[*] Importing NeXpose Simple XML data
[*] Importing host 192.168.1.195
[*] Successfully imported /tmp/host_195.xml
msf db_hosts -c address,svcs,vulns
Hosts
=====
address Svcs Vulns Workspace
------- ---- ----- ---------
192.168.1.195 8 268 default
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
73
Aby wyĂwietliÊ wszystkie szczegóïy luk w zabezpieczeniach zaimportowanych
do Metasploit, w tym liczbÚ typowych luk w zabezpieczeniach i ekspozycji (ang.
Common Vulnerabilities and Exposures — CVE), zastosuj poniĝsze polecenie:
msf db_vulns
Jak widzisz, przeprowadzenie jawnego skanowania luk w zabezpieczeniach
z peïnymi poĂwiadczeniami moĝe dostarczyÊ niesamowitej iloĂci informacji — w tym
przypadku odnaleziono 268 luk w zabezpieczeniach. Jednak z oczywistych wzglÚ-
dów byïo to skanowanie charakteryzujÈce siÚ wysokim poziomem szumów, które
prawdopodobnie przyciÈgnÚïy duĝo uwagi. Tego rodzaju skanowania najlepiej
sprawdzajÈ siÚ w testach penetracyjnych niewymagajÈcych potajemnych dziaïañ.
Uruchamianie NeXpose z poziomu MSFconsole
Uruchamianie aplikacji NeXpose z poziomu interfejsu graficznego WWW do-
skonale sprawdza siÚ w przypadku precyzyjnego skanowania luk w zabezpiecze-
niach oraz generowania raportów. JeĂli jednak wolisz pozostaÊ przy msfconsole,
takĝe moĝesz przeprowadziÊ peïne skanowanie luk w zabezpieczeniach — dziÚki
wtyczce NeXpose doïÈczonej do Metasploit.
Aby zademonstrowaÊ róĝnicÚ w wynikach pomiÚdzy poĂwiadczonym i nie-
poĂwiadczonym skanowaniem, uruchomimy teraz skanowanie z Metasploit bez
okreĂlania nazwy uĝytkownika i hasïa dla docelowego systemu. Zanim rozpocz-
niesz, usuñ wszystkie istniejÈce bazy danych za pomocÈ polecenia db_destroy,
utwórz nowÈ bazÚ danych w Metasploit za pomocÈ polecenia db_connect, a na-
stÚpnie zaïaduj wtyczkÚ NeXpose, stosujÈc polecenie load nexpose. Ilustruje to
poniĝszy listing.
msf db_destroy postgres:toor@127.0.0.1/msf3
[*] Warning: You will need to enter the password at the prompts below
Password:
msf db_connect postgres:toor@127.0.0.1/msf3
msf load nexpose
[*] NeXpose integration has been activated
[*] Successfully loaded plugin: nexpose
Przy zaïadowanej wtyczce NeXpose przyjrzyj siÚ poleceniom zaïadowanym
konkretnie dla tego skanera luk w zabezpieczeniach. W tym celu wprowadě
komendÚ help. Na górze listy powinieneĂ teraz zobaczyÊ szereg nowych pole-
ceñ przeznaczonych specjalnie do uruchamiania NeXpose.
msf help
74
R o z d z i a ï 4
Zanim uruchomisz swoje pierwsze skanowanie z poziomu msfconsole, mu-
sisz poïÈczyÊ siÚ z instalacjÈ NeXpose. Wpisz polecenie nexpose_connect -h, aby
wyĂwietliÊ informacje o sposobie nawiÈzywania poïÈczenia. Dodaj swojÈ nazwÚ
uĝytkownika oraz hasïo i adres hosta. Zaakceptuj równieĝ ostrzeĝenie o certyfi-
kacie SSL, dodajÈc argument ok na koñcu wiersza:
msf nexpose_connect -h
[*] Usage:
[*] nexpose_connect username:password@host[:port] ssl-confirm
[*] -OR-
[*] nexpose_connect username password host port ssl-confirm
msf nexpose_connect dookie:s3cr3t@192.168.1.206 ok
[*] Connecting to NeXpose instance at 192.168.1.206:3780 with username
´dookie...
Teraz, aby zainicjowaÊ skanowanie, wprowadě polecenie nexpose_scan i po-
daj docelowy adres IP, tak jak zostaïo to pokazane poniĝej. W tym przykïadzie
skanujemy pojedynczy adres IP, ale moĝesz równie dobrze podaÊ jako argument
zakres hostów (192.168.1.1-254) lub podsieÊ w notacji CIDR (192.168.1.0/24).
msf nexpose_scan 192.168.1.195
[*] Scanning 1 addresses with template pentest-audit in sets of 32
[*] Completed the scan of 1 addresses
msf
Kiedy skanowanie NeXpose zostanie zakoñczone, jego wyniki powinny zo-
staÊ zapisane w bazie danych, którÈ utworzyïeĂ wczeĂniej. Aby przejrzeÊ te wy-
niki, zastosuj polecenie db_hosts, tak jak pokazuje to kolejny listing. (W tym
przykïadzie listing zostaï skrócony poprzez zastosowanie filtrowania po kolum-
nie adresu [ang. address]).
msf db_hosts -c address
Hosts
=====
address Svcs Vulns Workspace
------- ---- ----- ---------
192.168.1.195 8 7 default
msf
Jak moĝesz zauwaĝyÊ, NeXpose wykryï 7 luk w zabezpieczeniach. Wpro-
wadě polecenie db_vulns, aby wyĂwietliÊ znalezione luki:
msf db_vulns
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
75
Chociaĝ to skanowanie wykryïo znacznie mniej luk w zabezpieczeniach w sto-
sunku do 268 znalezionych w poprzednim skanowaniu wykonanym poprzez in-
terfejs WWW z podaniem poĂwiadczeñ, to i tak te informacje powinny byÊ wy-
starczajÈce do rozpoczÚcia eksploatacji danego systemu.
Skanowanie za pomocÈ aplikacji Nessus
Skaner luk w zabezpieczeniach Nessus, dostarczony przez Tenable Security
(http://www.tenable.com/), jest jednym z najpopularniejszych. Wtyczka Nessus
do Metasploit umoĝliwia Ci przeprowadzanie skanowania i pobieranie informacji
ze skanów Nessusa za pomocÈ konsoli. Jednak w poniĝszych przykïadach bÚdziemy
importowaÊ wyniki skanowania Nessusa niezaleĝnie. KorzystajÈc z Nessusa 4.4.1
na licencji Home Feed1, uruchomimy skanowanie z poĂwiadczeniami tego samego
celu, który wykorzystywaliĂmy w poprzednich przykïadach w tym rozdziale. Im
wiÚcej narzÚdzi wykorzystasz do sprecyzowania przyszïych ataków na wstÚp-
nych etapach testu penetracyjnego, tym lepiej.
Konfiguracja skanera Nessus
Po pobraniu i zainstalowaniu skanera Nessus otwórz przeglÈdarkÚ internetowÈ
i wpisz w pasku adresowym https:// twój_adres_ip :8834. Zaakceptuj certyfikat
i zaloguj siÚ, uĝywajÈc poĂwiadczeñ, które utworzyïeĂ w trakcie instalacji. Powinno
wyĂwietliÊ siÚ gïówne okno aplikacji Nessus, pokazane na rysunku 4.11.
Rysunek 4.11. Gïówne okno skanera Nessus
1 Darmowa licencja dla uĝytkowników domowych — przyp. tïum.
76
R o z d z i a ï 4
Po zalogowaniu wyĂwietlana jest sekcja Reports (raporty), w której powinna
znajdowaÊ siÚ lista wszystkich poprzednio przeprowadzonych skanowañ luk
w zabezpieczeniach. Na znajdujÈcym siÚ na samej górze gïównym pasku narzÚdzi
dostÚpne sÈ jeszcze zakïadki: Scans (skanowania — sïuĝy do tworzenia i prze-
glÈdania zadañ zwiÈzanych ze skanowaniem), Policies (polityki — konfigurowa-
nie róĝnych wtyczek stosowanych podczas skanowania) oraz Users (uĝytkownicy
— dodawanie kont uĝytkowników do serwera Nessus).
Tworzenie polityki skanowania Nessusa
Zanim rozpoczniesz skanowanie, musisz najpierw stworzyÊ politykÚ skanowania
(ang. scan policy) Nessusa. W zakïadce Policies kliknij zielony przycisk Add, aby
otworzyÊ okno konfiguracji polityki, pokazane na rysunku 4.12.
Rysunek 4.12. Okno konfiguracji polityki skanowania Nessusa
W tym oknie moĝesz zobaczyÊ wiele dostÚpnych opcji. Wszystkie one zo-
staïy opisane w dokumentacji Nessusa.
1. Wpisz nazwÚ skanowania, tak jak pokazuje to rysunek 4.13. Uĝyta w naszym
przykïadzie nazwa The_Works bÚdzie okreĂlaïa politykÚ wykorzystywania
przez skaner Nessus wszystkich pïaszczyzn kontroli. Kliknij Next.
2. Podobnie jak w przeprowadzanym poprzednio skanowaniu za pomocÈ
aplikacji NeXpose, skonfigurujemy wykorzystanie poĂwiadczeñ (ang.
credentials) logowania systemu Windows. Zapewni to bardziej kompletny
obraz luk w zabezpieczeniach, obecnych w docelowym systemie.
Wpisz poĂwiadczenia logowania systemu docelowego i kliknij Next.
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
77
Rysunek 4.13. Zakïadka General — ogólna konfiguracja polityki
3. W zakïadce Plugins (wtyczki) masz do wyboru szereg róĝnych wtyczek
skanera Nessus dla systemów Windows, Linux, BSD i innych. JeĂli
przykïadowo wiesz, ĝe bÚdziesz przeprowadzaï skanowanie jedynie
systemów Windows, to moĝesz dla pierwszego przebiegu skanowania
usunÈÊ z listy wiele niepotrzebnych wtyczek. Dla celów naszego skanowania
wybierzemy wszystkie wtyczki, klikajÈc Enable All (na rysunku 4.14
w lewym dolnym rogu). Teraz kliknij Next.
Rysunek 4.14. Zakïadka Plugins — wybór wtyczek Nessusa wykorzystywanych
podczas skanowania
78
R o z d z i a ï 4
4. Koñcowym etapem definiowania nowej polityki jest zakïadka Preferences
(preferencje). Moĝesz tutaj skonfigurowaÊ pomijanie skanowania urzÈdzeñ
wraĝliwych, takich jak drukarki sieciowe, skonfigurowaÊ zapisywanie
wyników do zewnÚtrznej bazy danych, podaÊ poĂwiadczenia logowania
i wiele innych rzeczy. Kiedy zakoñczysz konfigurowanie tej zakïadki,
kliknij Submit, aby zapisaÊ nowo utworzonÈ politykÚ. Polityka ta powinna
pojawiÊ siÚ na liĂcie w zakïadce Policies, tak jak pokazuje to rysunek 4.15.
Rysunek 4.15. Nowo dodana polityka skanera Nessus
Uruchamianie skanowania za pomocÈ Nessusa
JeĂli utworzyïeĂ juĝ politykÚ skanowania, moĝesz rozpoczÈÊ konfiguracjÚ kon-
kretnego skanowania. Wybierz zakïadkÚ Scans i kliknij przycisk Add, aby
otworzyÊ okno konfiguracji. WiÚksza czÚĂÊ konfiguracji Nessusa zawarta jest
w politykach skanowania, wiÚc kiedy definiujesz skanowanie, to wprowadzasz
jego nazwÚ, wybierasz odpowiedniÈ politykÚ oraz okreĂlasz cele. Pokazuje to
rysunek 4.16.
Rysunek 4.16. Konfigurowanie skanowania Nessusa
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
79
W naszym przykïadzie skanujemy tylko jednego hosta, ale moĝesz równie
dobrze wprowadziÊ zakres adresów IP w notacji CIDR lub teĝ zaïadowaÊ plik
zawierajÈcy adresy IP celów, które chcesz przeskanowaÊ. Kiedy zakoñczysz
konfiguracjÚ, kliknij Launch Scan (uruchom skanowanie).
Raporty skanera Nessus
Po zakoñczeniu skanowania nie bÚdzie ono juĝ widoczne w zakïadce Scans, za
to w zakïadce Reports pojawi siÚ nowy wpis zawierajÈcy nazwÚ skanowania, jego
status oraz ostatniÈ aktualizacjÚ. Zaznacz wybrany raport i kliknij Browse, aby
otworzyÊ podsumowanie skanowania pokazujÈce poziomy dotkliwoĂci znalezio-
nych luk w zabezpieczeniach. Przedstawia to rysunek 4.17.
Rysunek 4.17. Podsumowanie raportu z naszego skanowania za pomocÈ Nessusa
UWAGA
PamiÚtaj, ĝe to skanowanie byïo przeprowadzone z podaniem poĂwiadczeñ sys-
temu Windows, wiÚc Nessus znalazï duĝo wiÚcej luk w zabezpieczeniach, niĝ
miaïoby to miejsce w przypadku anonimowego skanowania.
Importowanie wyników do Metasploit Framework
Zaimportujmy teraz wyniki naszego skanowania do Metasploit Framework.
1. Kliknij przycisk Download Report w zakïadce Reports, aby zapisaÊ wyniki
na dysk twardy. DomyĂlny format raportów skanera Nessus, czyli .nessus,
moĝe byÊ przetwarzany przez Metasploit. JeĂli wiÚc zostaniesz poproszony
o wybór domyĂlnego formatu, kliknij Submit, aby zatwierdziÊ.
2. Zaïaduj msfconsole, utwórz nowÈ bazÚ danych za pomocÈ polecenia
db_connect i zaimportuj plik wyników Nessusa, wpisujÈc polecenie
db_import z podaniem nazwy pliku raportu.
80
R o z d z i a ï 4
msf db_connect postgres:toor@127.0.0.1/msf3
msf db_import /tmp/nessus_report_Host_195.nessus
[*] Importing Nessus XML (v2) data
[*] Importing host 192.168.1.195
3. Aby zweryfikowaÊ, czy przeskanowany host oraz dane dotyczÈce luk
w zabezpieczeniach zostaïy zaimportowane poprawnie, zastosuj polecenie
db_hosts, tak jak pokazuje to kolejny listing. Listing ten powinien zawieraÊ
zwiÚzïe informacje na temat adresu IP celu (kolumna address), liczby
wykrytych usïug (kolumna svcs) oraz liczby wykrytych przez skaner
Nessus luk w zabezpieczeniach (kolumna vulns).
msf db_hosts -c address,svcs,vulns
Hosts
=====
address svcs vulns
------- ---- -----
192.168.1.195 18 345
4. JeĂli chcesz uzyskaÊ peïnÈ listÚ zawierajÈcÈ dane dotyczÈce luk
w zabezpieczeniach, zaimportowane do Metasploit, zastosuj polecenie
db_vulns bez podawania ĝadnych argumentów. Przedstawia to poniĝszy
listing.
msf db_vulns
[*] Time: Wed Mar 09 03:40:10 UTC 2011 Vuln: host=192.168.1.195
name=NSS-10916 refs=OSVDB-755
[*] Time: Wed Mar 09 03:40:10 UTC 2011 Vuln: host=192.168.1.195
name=NSS-10915 refs=OSVDB-754
[*] Time: Wed Mar 09 03:40:11 UTC 2011 Vuln: host=192.168.1.195
name=NSS-10913 refs=OSVDB-752
[*] Time: Wed Mar 09 03:40:12 UTC 2011 Vuln: host=192.168.1.195
name=NSS-10114 refs=CVE-1999-0524,OSVDB-94,CWE-200
[*] Time: Wed Mar 09 03:40:13 UTC 2011 Vuln: host=192.168.1.195
name=NSS-11197 refs=CVE-2003-0001,BID-6535
Posiadanie dostÚpu do tych referencji na koñcowym etapie testu penetra-
cyjnego moĝe byÊ bardzo pomocne w przygotowywaniu raportu dla klienta.
Skanowanie za pomocÈ Nessusa z poziomu Metasploit
JeĂli nie masz ochoty porzucaÊ wygody korzystania z wiersza poleceñ na rzecz
interfejsu graficznego, to moĝesz skorzystaÊ w Metasploit z wtyczki Nessus
Bridge (http://blog.zate.org/nessus-plugin-dev/) dostarczonej przez Zate. Wtyczka
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
81
Nessus Bridge umoĝliwia caïkowitÈ kontrolÚ Nessusa z poziomu Metasploit,
uruchamianie skanowania, interpretacjÚ wyników oraz uruchamianie ataków na
podstawie luk w zabezpieczeniach wykrytych przez Nessusa.
1. Podobnie jak w poprzednich przykïadach, usuñ najpierw istniejÈcÈ bazÚ
danych za pomocÈ polecenia db_destroy i utwórz nowÈ bazÚ, stosujÈc
polecenie db_connect.
2. Zaïaduj wtyczkÚ Nessus, wpisujÈc polecenie load nessus, tak jak zostaïo
to pokazane poniĝej.
msf db_destroy postgres:toor@127.0.0.1/msf3
[*] Warning: You will need to enter the password at the prompts below
Password:
msf db_connect postgres:toor@127.0.0.1/msf3
msf load nessus
[*] Nessus Bridge for Metasploit 1.1
[+] Type nessus_help for a command listing
[+] Exploit Index - (/root/.msf3/nessus_index) - is valid.
[*] Successfully loaded plugin: Nessus
3. WpisujÈc polecenie nessus_help, uzyskasz listÚ wszystkich komend
obsïugiwanych przez tÚ wtyczkÚ. Nessus Bridge jest stale rozwijany
i aktualizowany, warto wiÚc od czasu do czasu sprawdziÊ, czy zostaïy
dodane jakieĂ nowe funkcje.
4. Zanim rozpoczniesz skanowanie za pomocÈ wtyczki Nessus Bridge,
musisz najpierw uwierzytelniÊ siÚ na serwerze Nessusa za pomocÈ
polecenia nessus_connect. Przedstawia to poniĝszy listing.
msf nessus_connect dookie:s3cr3t@192.168.1.101:8834 ok
[*] Connecting to https://192.168.1.101:8834/ as dookie
[*] Authenticated
5. Podobnie jak w przypadku graficznego interfejsu Nessusa, skanowanie
naleĝy zainicjowaÊ z wykorzystaniem zdefiniowanej polityki okreĂlonej
numerem ID. Aby wyĂwietliÊ listÚ dostÚpnych na serwerze polityk
skanowania, zastosuj polecenie nessus_policy_list:
msf nessus_policy_list
[+] Nessus Policy List
ID Name Comments
-- ---- --------
-4 Internal Network Scan
82
R o z d z i a ï 4
-3 Web App Tests
-2 Prepare for PCI DSS audits
-1 External Network Scan
2 The_Works
6. Wybierz ID polityki, którÈ chcesz zastosowaÊ do skanowania, i uruchom
nowe skanowanie za pomocÈ polecenia nessus_scan_new, podajÈc numer
polityki, nazwÚ skanowania oraz docelowy adres IP. Przedstawia to
poniĝszy listing.
msf nessus_scan_new
[*] Usage:
[*] nessus_scan_new policy id scan name targets
[*] use nessus_policy_list to list all available policies
msf nessus_scan_new 2 bridge_scan 192.168.1.195
[*] Creating scan from policy number 2, called bridge_scan and scanning
´192.168.1.195
[*] Scan started. uid is d2f1fc02-3b50-4e4e-ab8f-
´38b0813dd96abaeab61f312aa81e
7. Podczas wykonywania skanowania moĝesz sprawdziÊ jego status
za pomocÈ polecenia nessus_scan_status. JeĂli polecenie zwróci status
No Scans Running (nie jest wykonywane ĝadne skanowanie), tak jak
pokazuje to kolejny przykïad, to skanowanie zostaïo zakoñczone.
msf nessus_scan_status
[*] No Scans Running.
8. Po zakoñczeniu skanowania moĝesz wyĂwietliÊ listÚ dostÚpnych raportów
za pomocÈ polecenia nessus_report_list. Znajdě ID raportu, który chcesz
zaimportowaÊ, a nastÚpnie uĝyj polecenia nessus_report_get, aby pobraÊ
i automatycznie zaimportowaÊ wybrany raport do bazy danych Metasploit.
msf nessus_report_list
[+] Nessus Report List
ID Name Status Date
-- ---- ------ ----
074dc984-05f1-57b1-f0c9-2bb80ada82fd3758887a05631c1d Host_195 completed 19:43
´Mar 08 2011
d2f1fc02-3b50-4e4e-ab8f-38b0813dd96abaeab61f312aa81e bridge_scan completed 09:37
´Mar 09 2011
S k a n o w a n i e l u k w z a b e z pi e c z e n i a c h
83
[*] You can:
[*] Get a list of hosts from the report: nessus_report_hosts report id
msf nessus_report_get d2f1fc02-3b50-4e4e-ab8f-38b0813dd96abaeab61f312aa81e
[*] importing d2f1fc02-3b50-4e4e-ab8f-38b0813dd96abaeab61f312aa81e
[*] 192.168.1.195 Microsoft Windows XP Professional (English) Done!
[+] Done
9. Na koniec, podobnie jak w przypadku pozostaïych funkcji importowania
opisanych w tym rozdziale, moĝesz zastosowaÊ polecenie db_hosts, ĝeby
zweryfikowaÊ, czy dane dotyczÈce skanowania zostaïy poprawnie
zaimportowane:
msf db_hosts -c address,svcs,vulns
Hosts
=====
address svcs vulns
------- ---- -----
192.168.1.195 18 345
Teraz, kiedy zapoznaïeĂ siÚ juĝ ze zmiennoĂciÈ wyników skanowania dwóch
róĝnych produktów, powinieneĂ lepiej zrozumieÊ sens stosowania wiÚcej niĝ
jednego narzÚdzia dla potrzeb skanowania luk w zabezpieczeniach. WciÈĝ jednak
to od pentestera zaleĝy interpretacja wyników generowanych przez te zauto-
matyzowane narzÚdzia i przeksztaïcenie tych wyników w dane decyzyjne.
Wyspecjalizowane skanery luk
w zabezpieczeniach
Chociaĝ na rynku dostÚpnych jest wiele komercyjnych skanerów luk w zabez-
pieczeniach, nie musisz siÚ do nich ograniczaÊ. JeĂli chcesz wykonaÊ skanowa-
nie poprzez sieÊ w poszukiwaniu konkretnych luk w zabezpieczeniach, to mo-
ĝesz skorzystaÊ z licznych moduïów pomocniczych Metasploit.
Przedstawione poniĝej moduïy Metasploit stanowiÈ tylko kilka przykïadów
spoĂród wielu uĝytecznych pomocniczych moduïów skanowania zaïÈczonych
w tym frameworku. Wykorzystaj swoje laboratorium testowe do wypróbowania
i zbadania tak wielu z nich, jak to moĝliwe.
Potwierdzanie logowania SMB
Aby sprawdziÊ poprawnoĂÊ kombinacji nazwy uĝytkownika i hasïa, skorzystaj ze
skanera SMB Login Check Scanner do poïÈczenia siÚ z wieloma hostami. Jak
pewnie siÚ spodziewasz, takie skanowanie jest gïoĂne i zauwaĝalne, a kaĝda próba
logowania zostanie zapisana w dzienniku zdarzeñ kaĝdej maszyny z systemem
Windows, która zostanie napotkana.
84
R o z d z i a ï 4
Po wybraniu moduïu smb_login za pomocÈ polecenia use moĝesz zastosowaÊ
polecenie show_options, aby sprawdziÊ ustawienia, które znajdujÈ siÚ w kolumnie
Required. Metasploit pozwala zdefiniowaÊ kombinacjÚ nazwy uĝytkownika i hasïa,
podaÊ listÚ nazw uĝytkownika i haseï lub teĝ zastosowaÊ obie te opcje jednoczeĂnie.
W kolejnym przykïadzie zdefiniowano niewielki zakres adresów IP dla opcji
RHOSTS oraz skonfigurowano sprawdzanie okreĂlonej nazwy uĝytkownika i hasïa
dla wszystkich adresów.
msf use auxiliary/scanner/smb/s
Pobierz darmowy fragment (pdf)