veritabanı sızma testleri - keşif

28
Veritabanı Sızma Testleri BGM 553 - Sızma Testleri ve G¨ uvenlik Denetlemeleri-I Bilgi G¨ uvenli˘ gi M¨ uhendisli˘ gi uksek Lisans Programı Dr. Ferhat ¨ Ozg¨ ur C ¸ atak [email protected] ˙ Istanbul S ¸ ehir ¨ Universitesi 2016 - G¨ uz Dr. Ferhat ¨ Ozg¨ ur C ¸ atak [email protected] Veritabanı Sızma Testleri ˙ Istanbul S ¸ ehir ¨ Universitesi 2016 - G¨ uz 1 / 28

Upload: ferhat-ozgur-catak-phd

Post on 13-Jan-2017

93 views

Category:

Software


5 download

TRANSCRIPT

Page 1: Veritabanı Sızma Testleri - Keşif

Veritabanı Sızma TestleriBGM 553 - Sızma Testleri ve Guvenlik Denetlemeleri-IBilgi Guvenligi MuhendisligiYuksek Lisans Programı

Dr. Ferhat Ozgur [email protected]

Istanbul Sehir Universitesi2016 - Guz

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 1 / 28

Page 2: Veritabanı Sızma Testleri - Keşif

Icindekiler

1 KesifGirisKesif Aracları2 NmapNmap ScriptleriMs-sql-info.nseoracle-sid-brute.nse3 Kesif Icin NessusGirisKurulumNessusNessus Eklentileri - Veritabanı

Nessus Eklentileri - ServiceDetection & Windows4 MetasploitGirisAuxiliary Scan ModulleriAuxiliary Scanner & AdminModullerimssql pingpostgres version5 Kesif Icin DosyalarGiristnsnames.oraWeb.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 2 / 28

Page 3: Veritabanı Sızma Testleri - Keşif

Veritabanı Sızma TestleriVeritabanı Sızma Testleri

I KesifI Veritabanlarını tespit edilmesiI Sistemler hakkında bilgi elde edilmesi

I IP adresleriI port bilgileriI yetkili kullanıcılar

I ExploitationI Kesif asamasında elde edilen bilgiler kullanılarak veritabanı sistemlerine erisimsaglamaI Bulunan acıklıklardanI veritabanlarındaki varsayılan kullanıcı adı ve parola bilgilerinden,I ic ag testlerinde elde edilen baglantı bilgilerinden,I yonetici bilgisayarlarındaki veritabanı istemci uygulamalarında kayıtlı tutulan kimlikbilgilerinden faydalanılır.

I Post-ExploitationI sızıldıktan sonra yapılan tum islemlerin genel adıI kritik bilgilerin ele gecirilmesiI kullanıcı adı ve sifre ozetleriI kurum icin kritik sayılabilecek bilgiler

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 3 / 28

Page 4: Veritabanı Sızma Testleri - Keşif

Icindekiler

1 KesifGirisKesif Aracları2 NmapNmap ScriptleriMs-sql-info.nseoracle-sid-brute.nse3 Kesif Icin NessusGirisKurulumNessusNessus Eklentileri - Veritabanı

Nessus Eklentileri - ServiceDetection & Windows4 MetasploitGirisAuxiliary Scan ModulleriAuxiliary Scanner & AdminModullerimssql pingpostgres version5 Kesif Icin DosyalarGiristnsnames.oraWeb.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 4 / 28

Page 5: Veritabanı Sızma Testleri - Keşif

Kesif

KesifI Kurum icerisinde bulunan veritabanı sistemlerinin tespitiI Veritabanı versiyon bilgisiI Oracle veritabanlarındaki SID degeriI Veritabanı sistemlerinin uzerinde calıstıgı sunucu adıI MsSQL Server veritabanlarındaki instance adıI Veritabanı sistemlerinin calıstıgı port bilgisiI Veritabanı sistemlerinde gelen istekleri karsılayan listener servisiI Kurulumla gelen ve degistirilmeyen kullanıcı adı ve parola bilgileri

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 5 / 28

Page 6: Veritabanı Sızma Testleri - Keşif

Kesif AraclarıNmap

I Nmap scriptleri kullanılırI hedef veritabanı sistemleriile ilgili IP adresiI port bilgisiI versiyon numarasıI instance adı ve SID

Nessus (Acıklık tarayıcısı)I Bazı zafiyetlerMetasploit,Canvas gibi araclarlasomurulebilmektedir.I Bu aracların hedefsistemlerdeki zafiyetlerikullanmasıyla veritabanısistemlerine erisimsaglanabilir.

MetasploitI Sızma islemlerigerceklestirmek icinkullanılırI auxiliary modullerisayesinde kesif asamasındabilgi elde etmek icin dekullanılabilir.

Ic ag test sonuclarıI “tnsnames.ora” gibiyapılandırma dosyalarıI icerisindeki bilgiler ileOracle veritabanısistemlerinin IP adresleri,port bilgileri ve SID bilgisi

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 6 / 28

Page 7: Veritabanı Sızma Testleri - Keşif

Icindekiler

1 KesifGirisKesif Aracları2 NmapNmap ScriptleriMs-sql-info.nseoracle-sid-brute.nse3 Kesif Icin NessusGirisKurulumNessusNessus Eklentileri - Veritabanı

Nessus Eklentileri - ServiceDetection & Windows4 MetasploitGirisAuxiliary Scan ModulleriAuxiliary Scanner & AdminModullerimssql pingpostgres version5 Kesif Icin DosyalarGiristnsnames.oraWeb.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 7 / 28

Page 8: Veritabanı Sızma Testleri - Keşif

Nmap

Nmap ScriptleriI MsSQL Server

I ms-sql-info.nsenmap -p [Port] –script ms-sql-info [host]I Oracle

I oracle-enum-users.nsenmap –script oracle-enum-users –script-args oracle-enum-users.sid=[SID],userdb=orausers.txt -p 1521-1560 [host]I oracle-brute.nsenmap –script oracle-brute -p [Port] –script-args oracle-brute.sid=[SID] [host]I oracle-sid-brute.nsenmap –script=oracle-sid-brute –script-args =oraclesids=/path/to/sidfile -p 1521-1560[host]

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 8 / 28

Page 9: Veritabanı Sızma Testleri - Keşif

Ms-sql-info.nseI Kullanıcı adı ve parolaya ihtiyac duymadan MsSQL Server hakkında

I hangi urunun kuruluI veritabanının versiyon numarasıI hangi SP (Servis Pack)’lerin kurulu olduguI veritabanına ait instance ismi

Sekil: ms-sql-info.nse

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 9 / 28

Page 10: Veritabanı Sızma Testleri - Keşif

oracle-sid-brute.nseI Oracle veritabanlarına erismek icin kullanılan parametrelerden biri olan SIDdegeri bulunabilir.I Script icerisinde SID degerleri bulunan dısarıdan bir dosya alarak bu dosyaicerisindeki degerleri veritabanı uzerinde denerI Nmap –script=oracle-sid-brute –script-args=oraclesids=<oracle-sid-files> -p<port> <host>

I <oracle-sid-files>: Veritabanında deneme yapılacak SID degerlerinin dosya yoluI <port>: Oracle veritabanının calıstıgı port bilgisiI <host>: Oracle veritabanına ait IP adres

Sekil: ms-sql-info.nse

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 10 / 28

Page 11: Veritabanı Sızma Testleri - Keşif

Icindekiler

1 KesifGirisKesif Aracları2 NmapNmap ScriptleriMs-sql-info.nseoracle-sid-brute.nse3 Kesif Icin NessusGirisKurulumNessusNessus Eklentileri - Veritabanı

Nessus Eklentileri - ServiceDetection & Windows4 MetasploitGirisAuxiliary Scan ModulleriAuxiliary Scanner & AdminModullerimssql pingpostgres version5 Kesif Icin DosyalarGiristnsnames.oraWeb.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 11 / 28

Page 12: Veritabanı Sızma Testleri - Keşif

Nessus

YeteneklerI Ajan kurmadan yama eksikligi testiI Zayıf yapılandırma tespitiI Port taramasıI Servis tespitiI Kullanıcı denemesiI Exploit uygulanabilirligiI Yetkili (credential) tarama yetenegiI 55000+ pluginI Raporlama ozellikleri

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 12 / 28

Page 13: Veritabanı Sızma Testleri - Keşif

Kurulum

Sekil: Nessus kurulum

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 13 / 28

Page 14: Veritabanı Sızma Testleri - Keşif

Kurulum

Sekil: Nessus servis

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 14 / 28

Page 15: Veritabanı Sızma Testleri - Keşif

Kurulum

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 15 / 28

Page 16: Veritabanı Sızma Testleri - Keşif

Kesif Icin Nessus

Veritabanları ile ilgili Nessus eklentileri (plugins)I DatabasesI WindowsI Service DetectionNessus eklentilerinin bulguları

I Kurumda bulunan veritabanı sistemlerinin tespitiI Veritabanı sistemlerinde tespit edilen acıklıklar ve bu acıklıklar icin varsaacıklıgı somurebilen araclarI Veritabanı sistemlerinde kurulumla gelen ve degistirilmemis kullanıcıhesapları ve parolalarI Veritabanı sistemlerinin versiyon bilgileriI Listener servisleri ve versiyon bilgileri

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 16 / 28

Page 17: Veritabanı Sızma Testleri - Keşif

Nessus Eklentileri - VeritabanıCesitli veritabanları (MsSQL Server, MySQL, Oracle, Sybase, DB2) ile ilgili modullermevcuttur.

I Ms SQL veritabanı :I Microsoft SQL Server Authentication Function Remote Overflow: MsSQLServer veritabanlarında bulunan bu acıklık sayesinde SYSTEM haklarıyla veritabanıuzerinde komut calıstırılabilmektedir. Metasploit, CANVAS ve Core IMPACTaraclarında exploit modulu bulunmaktadır.I Microsoft SQL Server Detection (credentialed check): MsSQL veritabanısunucusundaki dosya sistemi ve kayıt defterini inceleyerek veritabanının versiyonbilgisine ulasmaya calısır.I Microsoft SQL Server UDP Query Remote Version Disclosure: MsSQLveritabanının calıstıgı portun UDP protokolunu kullanarak veritabanının surumbilgisini sorgular.

I Oracle veritabanı :I Oracle Database tnslsnr Service Remote Version Disclosure: Listener servisinincalıstıgı port ile iletisime gecerek veritabanı versiyonunu ogrenir.I Oracle Default SID: Oracle veritabanı uzerinde kurulan ornekler arasında SIDdegeri varsayılan olarak verilen veritabanlarını tespit eder.

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 17 / 28

Page 18: Veritabanı Sızma Testleri - Keşif

Nessus Eklentileri - Service Detection & Windows

Windows eklentisi altında genellikle MsSQL Server veritabanlarında bulunanacıklıklarla ilgili moduller bulunmaktadır.I MS08-040: Microsoft SQL Server Multiple Privilege Escalation (941203)(uncredentialed check): Bellek bozulması acıklıgından faydalanılarakveritabanı sunusuna yetkili haklarla erisim saglar.I MS09-004: Vulnerability in Microsoft SQL Server Could Allow RemoteCode Execution (959420): ”sp replwritetovarbin” saklı prosedurunde bulunanacıklıktan faydalanılarak veritabanı sunucusuna yetkili haklarla erisim saglar.I MS12-070: Vulnerability in SQL Server Could Allow Elevation of Privilege(2754849) (uncredentialed check): MsSQL Server veritabanının calıstırdıgıSQL Server Reporting Service’de bulunan XSS zafiyetinden yararlanarak hakyukseltme gerceklestirilebilir.

Service Detection eklentisi altında bulunanMicrosoft SQL Server TCP/IPListener Detectionmodulu ise, MsSQL Server veritabanında calısan listenerservisi ile iletisime gecerek veritabanı versiyon bilgisine erismeye calısır.

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 18 / 28

Page 19: Veritabanı Sızma Testleri - Keşif

Icindekiler

1 KesifGirisKesif Aracları2 NmapNmap ScriptleriMs-sql-info.nseoracle-sid-brute.nse3 Kesif Icin NessusGirisKurulumNessusNessus Eklentileri - Veritabanı

Nessus Eklentileri - ServiceDetection & Windows4 MetasploitGirisAuxiliary Scan ModulleriAuxiliary Scanner & AdminModullerimssql pingpostgres version5 Kesif Icin DosyalarGiristnsnames.oraWeb.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 19 / 28

Page 20: Veritabanı Sızma Testleri - Keşif

Kesif Icin Metasploit

Kesif Icin MetasploitI Auxiliary moduller genel olarak hedef sistemler uzerinde bilgi elde etmek icinkullanılır.I Modullerden bazıları zafiyetlerden faydalanarak hedef sistemler uzerindekomut calıstırabilmektedir.

I MsSQL Server veritabanları uzerinde bulunan ve isletim sistemi uzerinde komutcalıstırmayı saglayan xp cmdshell saklı prosedurunu kullanan“auxiliary/admin/mssql/mssql exec”modulu hedef veritabanı uzerin isletimsistemi komutları calıstırabilir.

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 20 / 28

Page 21: Veritabanı Sızma Testleri - Keşif

Metasploit Auxiliary Modulleri

I Metasploit Auxiliary ScanModulleriI MsSQL veritabanı

I Auxiliary/scanner/mssql/mssql ping: Bu modul herhangi bir kullanıcı adı ve parolabilgisi olmadan veritabanı IP adresini kullanarak veritabanı ile ilgili port, version veinstance adı bilgilerini elde edebilir.I PostgreSQL veritabanı

I Auxiliary/scanner/postgres/postgres version: Herhangi bir kullanıcıya ait parola bilgisiolmadan sadece veritabanına ait IP adresi ve kullanıcı adı kullanılarak PostgreSQLveritabanının versiyon bilgisi elde edilebilir.I MySQL veritabanı

I Auxiliary/scanner/mysql/mysql version: Herhangi bir kullanıcı adı ve parola bilgisiolmadan sadece veritabanına ait IP adresi kullanılarak MySQL veritabanının versiyonbilgisi elde edilebilir.

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 21 / 28

Page 22: Veritabanı Sızma Testleri - Keşif

Auxiliary Scanner & Admin Modulleri

I AdminI Oracle

I Auxiliary/admin/oracle/sid brute – Auxiliary/scanner/oracle/sid brute: Kaba kuvvetyontemiyle hedef veritabanı sistemlerindeki SID degerlerini tespit etmeye calısır.I Auxiliary/admin/oracle/tnscmd: Cesitli TNS komutları gondererek veritabanı sistemlerihakkında bilgi almaya yarar.

I ScannerI Oracle

I Auxiliary/scanner/oracle/sid enum: Kaba kuvvet ya da tahmin yontemleriyle veritabanısistemlerindeki SID degerlerini bulmaya calısır.I Auxiliary/scanner/oracle/tnslsnr version: Oracle listener servisine cesitli sorgulargondererek bu servis hakkında bilgi elde etmeye calısır.

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 22 / 28

Page 23: Veritabanı Sızma Testleri - Keşif

mssql ping

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 23 / 28

Page 24: Veritabanı Sızma Testleri - Keşif

postgres version

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 24 / 28

Page 25: Veritabanı Sızma Testleri - Keşif

Icindekiler

1 KesifGirisKesif Aracları2 NmapNmap ScriptleriMs-sql-info.nseoracle-sid-brute.nse3 Kesif Icin NessusGirisKurulumNessusNessus Eklentileri - Veritabanı

Nessus Eklentileri - ServiceDetection & Windows4 MetasploitGirisAuxiliary Scan ModulleriAuxiliary Scanner & AdminModullerimssql pingpostgres version5 Kesif Icin DosyalarGiristnsnames.oraWeb.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 25 / 28

Page 26: Veritabanı Sızma Testleri - Keşif

kesif Icin Dosyalar

Ic Ag TestleriI Veritabanı IP adresleriI Instance isimleriI Port bilgileriI Kullanıcı adı ve parola bilgileriDosyalar

I Web.configI tnsnames.ora

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 26 / 28

Page 27: Veritabanı Sızma Testleri - Keşif

tnsnames.ora

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 27 / 28

Page 28: Veritabanı Sızma Testleri - Keşif

Web.config

Dr. Ferhat Ozgur Catak [email protected] Veritabanı Sızma Testleri Istanbul Sehir Universitesi 2016 - Guz 28 / 28