Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Madness v.01 - Simple file fuzzer

[es] :: Security Coding :: Madness v.01 - Simple file fuzzer

[ Pregleda: 7486 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Bouncer

Član broj: 112643
Poruke: 18
*.dsl.iskon.hr.



Profil

icon Madness v.01 - Simple file fuzzer30.09.2006. u 23:16 - pre 212 meseci
Code:


# Madness v.01 - Simple file fuzzer     
#                   Coded by Sytwer


import md5
import os
import random
from mmap import mmap

file = ('some_file') # Change this to name of the file you want to fuzz. You can place raw_input here.
file_mod = open(file, 'r+b')
hash = md5.new()
file_hash = file_mod.read()
length = os.path.getsize(file)
random_fuzz = random.randint(0, 100000) # Picks random number to for maping loop. You can disable it if you wish to run fuzzer just once.Therefore only one change will be made inside of file.
byte_random_one = random.randint(0, length)
byte_random_two = random.randint(0, length)

def file_maping():
    maping = mmap(file_mod.fileno(),0)
    maping[byte_random_one], maping[byte_random_two] = maping[byte_random_two], maping[byte_random_one]
    maping.close()        
x = file_maping()

for x in range(1, random_fuzz):
    print 'Fuzzing file -', file
    hash.update(file_hash) # Informs us about changes inside of file.
    print 'File hash is -', hash.hexdigest() # Without this fuzzer won't be elite enough :)
    print '\n'
    file_maping()
    
file_mod.close()    
print 'Fuzzing done.'
print '\n'


Madness v.01 - Simple file fuzzer.

Dakle moy prvi program opcenito i prvi fuzzer naravno.
Napisa san ga da bi testira jedan program.
Ovo bi se mozda dalo i izminit po potrebama, napisat drukcije il bolje te mozda nadogradit opcijama i funkcijama al ima vrimena i za to.
Naravno planiran dodat jos brdo toga al s vrimenom.
Uzmimo u obzir da sam tek pocea.

Fuzzer random odabere 2 byte-a unutar file-a i zamjeni im mista takodjer random odabranima byte-ovima unutar istog file-a.

Buduce verzije ovog fuzzera moc ce kreirat nove file-ove i zapisat promjene u njih te pokrenit iste.
Planiran dodat i opcie koje ce po extenziji modificirat fajlove svaki na drugi nacin ovisno o file formatu te dodavat neke random odabrane karaktere u file.
Samim tim potencijal za otkrivanje bugova bit ce veci.

Komentirajte po volji.

[Ovu poruku je menjao Bouncer dana 01.10.2006. u 02:24 GMT+1]

[Ovu poruku je menjao Bouncer dana 01.10.2006. u 02:24 GMT+1]
 
Odgovor na temu

EArthquake

Član broj: 20684
Poruke: 884
194.106.187.*



+67 Profil

icon Re: Madness v.01 - Simple file fuzzer01.10.2006. u 18:36 - pre 212 meseci
svi dosadasnji file fuzzeri koje sam ja vidjao su imali foru da im ti zadas offset od pocetka fajla odakle i dokle on treba da menja sam fajl

to je zgodno , kad znas koje su velicine hederi nekog fajla , pa njih menjas , i gledas kako se program ponasa , takodje, nemoj random stvarima da menjas ,

menjaj sa necim specificnim , recimo neke integer overflowove mozes da detektujes ako postavis vrednost na veliki broj pa te bajtove zamenis sa fffffff i sl

poz
Aca
 
Odgovor na temu

Bouncer

Član broj: 112643
Poruke: 18
*.rev-addr.vox-mundi.net.



Profil

icon Re: Madness v.01 - Simple file fuzzer02.10.2006. u 07:08 - pre 212 meseci
Znan nasta mislis....

Sve ja to planiran doradit i sredit.Vec san doda neke bitne stvari samo sta to kod mene ide pomalo...

Uglavnom u svemu tome najbitnija je edukacija... :)

 
Odgovor na temu

glupi

Član broj: 836
Poruke: 199
*.dsl.iskon.hr.



Profil

icon Re: Madness v.01 - Simple file fuzzer02.10.2006. u 16:29 - pre 212 meseci
;) nice, pozdrav svim ljudima koji nesto rade
 
Odgovor na temu

DownBload

Član broj: 1333
Poruke: 310
*.rev-addr.vox-mundi.net.



Profil

icon Re: Madness v.01 - Simple file fuzzer09.10.2006. u 13:01 - pre 212 meseci
U biti, nije lose... Nadji neki bugic i javi se... :-)))
Leon Juranic
 
Odgovor na temu

Bouncer

Član broj: 112643
Poruke: 18
92.37.119.*



Profil

icon Re: Madness v.01 - Simple file fuzzer04.04.2009. u 20:03 - pre 182 meseci
Evo nove verzije, hahaha...



Sprema promjene u nove file-ove i pokrece ih ako treba...

Code:

# Madness v.1.0 - Simple file fuzzer     

import os
import random
import hashlib
from mmap import mmap

file = 'fuzz'
dot = '.'
ext = 'docx'
hash = hashlib.md5()
file_mod = open(file+dot+ext, 'r+b')
file_hash = file_mod.read()
length = os.path.getsize(file+dot+ext)
fuzz = int(input("Files to generate ? ")) 
byte_random_one = random.randint(0, length)
byte_random_two = random.randint(0, length)

def file_maping():
    maping = mmap(file_mod.fileno(),0)
    maping[byte_random_one], maping[byte_random_two] = maping[byte_random_two], maping[byte_random_one]
    maping.close()  
    
for i in range(1, fuzz):
    os.system("copy "+file+dot+ext+" "+file+str(i)+dot+ext)    
    file_mod = open(file+str(i)+dot+ext, 'r+b')
    print ('File name - ' +file+str(i)+dot+ext)
    hash.update(file_hash)
    print ('File hash -', hash.hexdigest())
    print ('\n')
    file_maping()
    file_mod.close()
    #os.system(file+dot+ext)
print ('Fuzzing done.')
print ('\n')
 
Odgovor na temu

EArthquake

Član broj: 20684
Poruke: 884
*.eunet.rs.



+67 Profil

icon Re: Madness v.01 - Simple file fuzzer12.04.2009. u 08:28 - pre 182 meseci
uff , sto sa system() :)
no to i nije bitno

vidi da dodas neke debugging mogucnosti , da ti program detektuje kad se pokrenuti program srusi
pa da ti javi , ili loguje negde ili nesto , da ne moras da ga gledas non stop

nego automatizujes , pustis ga da radi preko noci i ujutru vidis sta si dobio ...

i kao sto rekoh , bilo bi dobro da mozes da mu kazes tacno koji deo fajla da fuzz-a

posto je malcice besmisleno menjati stvari u samim podacima vezanim za piksele u jpeg-u recimo
dobices samo drugaciju sliku ...
bolje da se skoncentrises na menjanje hedera , internih informacija u fajlu

svi malcice komplikovaniji formati imaju gomilu zasebnih informacija u sebi koje sluze za razlicite stvari
i dovode do izvrsenja razlicitih delova koda

a tebi je cilj da prodjes sto veci deo koda ..
 
Odgovor na temu

Bouncer

Član broj: 112643
Poruke: 18
*.dynamic.amis.hr.



Profil

icon Re: Madness v.01 - Simple file fuzzer16.04.2009. u 21:18 - pre 182 meseci
Ma mene to pukne na jedno popodne i eto...

Za pola godine bit ce nekih noviteta, haha...

Hvala na komentarima...
 
Odgovor na temu

Bouncer

Član broj: 112643
Poruke: 18
*.dsl.iskon.hr.



Profil

icon Re: Madness v.01 - Simple file fuzzer30.04.2009. u 12:57 - pre 181 meseci
Evo poslusa san te...

Sad se moze odredit header size i vise ne minja mista nego prepisuje... :D

Sad triba dgb dodat...
 
Odgovor na temu

[es] :: Security Coding :: Madness v.01 - Simple file fuzzer

[ Pregleda: 7486 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.