1. Ayyıldız Tim forumu Hariç Hiç Bir şekilde Rütbeli Oldugunu İddaa edenlere inanmayınız..⠀ Ayyıldız Tim Adına Sizden Bilgi Belge TC Kimlik Vb Evrak İsteyenlere Asla Bilgilerinizi Vermeyiniz.

Sqlmap Kaynak Kod Çalışması

'Python' forumunda note tarafından 24 Haziran 2018 tarihinde açılan konu

  1. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,803

    Özel Mesaj
    Bu arada, en başta yazdığım konuya destek olmak için açmıştım bu konuyu, ama konu gittikçe Python'a kaydı :D Neyse önemli değil. Bilgi bilgidir. Burayı ne kadar bilgiyle doldursak o kadar iyi :)
     
    Alparslan5545 bunu beğendi.
  2. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,803

    Özel Mesaj
    Bu konuyu okuyanlar veya takip edenler varsa kusura bakmasın, çok yavaş ilerliyoruz. Yaz programım o kadar yoğun ki, tatil yaptığımı ve dinlendiğimi düşünmüyorum :) Aynı anda hem donanım derslerimi tekrar ediyorum, hem de yazılım derslerimi tekrar ediyorum, hem de diğer alanlarda çalışıyorum. Zaten bilenler var, artık foruma da uğramaz oldum.

    Gezinirken sqlmap kaynak kodunu kivy ile birleştirmiş birilerini buldum. İsteyen,ilgisini çeken buna da bir göz atabilir. Yalnız iş görsün yeter mantığıyla yazılmış olduğu için kaynak kodu biraz düzensiz geldi bana :) Link:

    https://github.com/muodov/sqlmapchik
     
    Alparslan5545 bunu beğendi.
  3. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,803

    Özel Mesaj
    Koddan kesitler vermeye devam edeyim. En azından bazı kütüphaneleri de görüyoruz. Sqlmap lib/controller/controller.py içerisinde start() fonksiyonunda parseTargetUrl() fonksiyonuna gönderilmiş. Orda mantık basit, urlparse kütüphanesi kullanılmış. Kullanımı şöyle

    Kod:
    import urlparse
    
    parse = urlparse.urlsplit("http://www.example.com:80")
    
    print(parse.scheme)
    print(parse.hostname)
    print(parse.port)
    
    Gerekli ayarlar yapıldıktan sonra, setupTargetEnv() fonksiyonuna gönderilmiş.

    Kod:
    def setupTargetEnv():
        _createTargetDirs()
        _setRequestParams()
        _setHashDB()
        _resumeHashDBValues()
        _setResultsFile()
        _setAuthCred()
    
    ilk fonksiyonun ne yaptığını tahmin edebiliyoruz. Her hedef için, output klasöründe hedef ait bir klasör oluşturur. Loglar, çıktılar hepsi burda yer alır.

    setRequestParams(), --data parametresi için gerekli ayarlamaları yapan fonksiyon. Yani kısaca henüz daha taramaya geçilmemiş, gerekli ayarlamalar yapılıyor(bağlantıya dair).

    _setHashDB() sorgu sonuçları için sqlite veritabanını ayarlıyor.

    Gerekli ayarlar yapıldıktan sonra, eğer WAF kontrolü yapılacaksa checkWaf() fonksiyonu çalıştırılıyor. Onu da bir sonraki postta anlatmaya çalışalım. Bugünlük bu kadar :)
     
    dragov ve Alparslan5545 bunu beğendi.
    • Guest
    Katılım:
    14 Kasım 2018
    Mesaj:
    766
    Alınan Beğeniler:
    1,047

    Özel Mesaj

    Pekala...

    O zaman bende bir örnekleme yapıyorum

    Ama öncesinde sn note devrem

    Havij'den söz etmişsiniz
    Sitedeki sql açığı varsa bulan program olduğunu biliyorum

    Sql injektion'a gelirsek bildiğim kadarıyla
    Sitelerde en çok bulunan açıktır

    İstisnalar olabilir tabii ki

    Bir sql açık örneğinde ben vereyim

    Önce bir dork bulalım
    Buldum....

    İnurl/index.php?id=

    Bu dorkumuz olsun
    Google'da aratıyorum
    Ve bir site çıktı... Evet site tasarımı 2005leri hatırlatıyor sanki :)

    Örnek site adı
    Www.site.com/index.php?id=

    Sonuna tırnak işareti bırakıyorum
    Çokta güzel durdu :)

    Evet sql hatası verdi
    Baya baya açık var yani!

    Ben aslında teker teker
    Tabloları url den bulabilirim ama

    Ama...

    Havij kullanacağım :)
    Havuç logolu dostumuz

    Linki bırakıp target dedim ve işlem bitti
    Mesajı yazalı 1 saat oldu ve daha paylaşmadım

    Evet admin kısmına girdik
    Ve md5 şifreyi bulduk

    Gerisine karışmayacağım

    Bazı sitelerde şifre ve kullanıcı adı yerine

    'OR'
    '='

    Bırakırsanız sql bunu şifre sanacak :)
    Ve sizi admin panelinden atacaktır

    Daha,dahada örnekleme olacaktır


    Sql injektion bu tür açıklardır bildiğim kadarıyla

    Eğer doğruya demekki Bir şeyler öğrenmişim

    Eğer yanlışsa

    Google'de arama yapmaya hazırım

    Ve eğer yarı doğruysa

    O zaman doğrusu nedir

    Konuda epey güzelmiş

    Dediğim gibi

    Yararlı olması dileğiyle

    Sn dragon devrem
    Sn note devrem
    Sn alparslan devrem

    Ve diğer bütün konuyla ilgili devrelerim

    Hepinize ...

    İyi forumlar dilerim
    Kolay gelsin
     
    AydoganGotu bunu beğendi.
  4. dragov Guest

    • Guest
    Katılım:
    10 Ocak 2017
    Mesaj:
    568
    Alınan Beğeniler:
    1,353

    Özel Mesaj
    Yanlış demeyelim de eksik var. Şöyle ki; konunun asıl amacı SQL injection saldırısını göstermek değil. O amaçla kullanılan bir programın kaynak kodlarını anlamak. O yüzden biraz alakasız olmuş. Forumda bununla ilgili çok fazla konu var.

    İkinci nokta ise, SQL açığı sadece o şekilde bulunmaz. Blind SQL türü de vardır. Yani bize bir sonuç dönmez. Ama aslında komut çalıştırır. Time based denenebilir (5 sn sonra sayfa yenilenir fakat bize sonuç dönmezse anlayabiliriz bunu).
     
    AydoganGotu bunu beğendi.
    • Guest
    Katılım:
    14 Kasım 2018
    Mesaj:
    766
    Alınan Beğeniler:
    1,047

    Özel Mesaj

    Tamam şimdi anladım
     
    AydoganGotu bunu beğendi.

Bu Sayfayı Paylaş