Alati za pravljenje virusa

3

Alati za pravljenje virusa

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

@djdrift
U ovih par poruka si napisao toliko smesno-neistinitih stvari da bi covek pomislio da nikada u zivotu nisi prisao nekom kompu, a kamoli video virus.

Zamolio bih te da se nadalje suzdrzis od sirenja ovakvih dezinformacija.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Da se vratimo na temu ili barem ono što je ostalo od nje, ostavimo misteriozni Autorun virus po strani. Smile

Našao sam odgovor na moje pitanje. Ne koriste se baš klasični regularni izrazi već se traže pattern-i na nivou bajtova.
http://en.wikipedia.org/wiki/Virus_signature#Self-modification
Sad, javlja se problem koji je po meni očigledan, kako naći pattern koji je jedinstven. Tj. kako biti siguran da takav pattern nema i neki potpuno čist program?
Ne samo to... Ako AV ima milione definicija, to znači da treba za svaki fajl da proverava jedan po jedan pattern?



offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

stankovic ::Da se vratimo na temu ili barem ono što je ostalo od nje, ostavimo misteriozni Autorun virus po strani. Smile

Našao sam odgovor na moje pitanje. Ne koriste se baš klasični regularni izrazi već se traže pattern-i na nivou bajtova.
http://en.wikipedia.org/wiki/Virus_signature#Self-modification
Sad, javlja se problem koji je po meni očigledan, kako naći pattern koji je jedinstven. Tj. kako biti siguran da takav pattern nema i neki potpuno čist program?
Ne samo to... Ako AV ima milione definicija, to znači da treba za svaki fajl da proverava jedan po jedan pattern?


Kada se pravi patern nekog virusa (fajl-infektora), onda ga pustis na test-sistemu da se replicira (inficira legitimne programe), pa onda potrazis sta je zajednicko za sve replike.

Kada se radi patern za trojance i ostale tipove koji su samostalni fajlovi, onda uspesnost paterna zavisi od umeca tipa koji je uradio analizu.

Problem nastaje recimo kod virusa (fajl-infektora) koji se menjaju izmedju replika (morphing):
http://en.wikipedia.org/wiki/Metamorphic_code
http://en.wikipedia.org/wiki/Polymorphic_code
http://en.wikipedia.org/wiki/Self-modifying_code

Kod samog ugradjivanja u legitiman program, virus moze da se doda na pocetak programa (prepender) ili na kraj programa (appender), i oni su relativno laki za ciscenje.
Problem je sa virusima koji ispresecaju program na mali milion delova, pa sebe ugrade kroz ceo originalni program (imas medju onim linkovima sa wikipedije link ka ZMistu).
Mozes da zamislis da on treba da proskenira ceo kod originalnog programa, da preformulise sve skokove u programu i da na kraju ponovo linkuje program sa sve injektovanim malicioznim kodom.
Ne znam koliko se ko razume u programiranje, ali ovo je posao za koji je potreban genije.

Patern je prilicno grub nacin za detekciju, posto male promene u paternu (morphing) cine sam patern neupotrebljivim.
Isto tako, FP-ovi su lako moguci.

Zamislite definiciju (patern):
"Ako se na adresi $12345 nalazi podatak $03 i na sledecoj poziciji se nalazi $78, onda je to XYZ trojanac".
Prvo, trebalo bi definisati na koje tipove fajlova se definicija odnosi.
Recimo da je to trojanac, znaci da je u pitanju izvrsni fajl (EXE, DLL).
Ako to ne bi bilo definisano, onda bi TXT fajl koji slucajno sadrzi te podatke na tim pozicijama u fajlu izazvao FP (sto me podseti na Kaspersky iz njegovih ranih dana).

Drugi nacin za paterne su hashevi (MD5, CRC32 itd):
"Ako je CRC32 hash skeniranog fajla, za adrese $1000 do $2000 jednak 345AC123, onda je to XYZ trojanac"
I ova metoda ima iste mane kao i gornja, s razlikom da je manja mogucnost za FP jer se ispituje veci opseg podataka, ali je zato sporija.


Ni jedna od gornjih metoda nije otprona na morphing, pa ni na wrappere (packeri, protektori itd.)
E sada, kada smo spomenuli wrappere, neki antivirusi ce da naprave posebne definicije za malware spakovan X wrapperom, pa Y wrapperom itd, dok ce neki drugi pokusati da skinu wrapper, pa da proskeniraju malware u izvornom obliku (cime gorespomenuti paterni ne gube na vaznosti jer su ponovo upotrebljivi).

Problem je sto neki wrapperi, zbog svoje konstrukcije, kod raspakovanja svog tovara raspakuju samo izvrsne sekcije programa bez headera, pa time cine nevazecim paterne kod kojih su offseti uradjeni u odnosu na apsolutni pocetak programa (sto podrazumeva MZ i PE headere itd.)

Komplikovano...
Taman neki AV napravi finu bazu definicija (paterna), kada se neko seti da napravi neki pomak zbog kojeg cela ta baza postane neupotrebljiva.
Za neke AV progame postoje cak i programi koji umeju da analiziraju njihove definicije i da u njima nadju patern za odredjeni malware.
Tako losi momci nalaze kako neki AV nalazi njihov malware, pa u svom malwareu promene samo toj deo koji se nasao u paternu tog AV programa.

offline
  • Pridružio: 17 Dec 2008
  • Poruke: 68

Ma ni virusi nisu kao sto su nekada bili... Mislim nije vise u zabavi, sada je sve u novcu... Ma nisu problem ovi "programi"... Po meni je Storm Worm mnogo ozbiljnija pretnja nego ovi programcici... Postoji mnogo sada verzija Storm Worm-a, ali svi imaju slicu namenu... A to je da naprave Boot net... Mrezu zombi pc-a... E to tek onda nastaje problem...
Info:
en.wikipedia.org/wiki/Storm_Worm

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Storm je zvanicno mrtav jos od prosle jeseni (septembar - oktobar).

Posle njega je Waledac pravio haos po netu, pa je i on pao sredinom ove godine.
Trenutno nema ni jedne slicne napasti da je tako aktivna u pokusaju stvaranja velikih botnetova.

offline
  • Pridružio: 12 Jan 2011
  • Poruke: 4

E sad da vas pitam..U kojim programiam se prave virusi i sta treba da znam da bi ih napravio? hvala vam unpared na odgovoru Smile

offline
  • Pridružio: 02 Feb 2008
  • Poruke: 14018
  • Gde živiš: Nish

Pa moze u bilo kom ako znas programirati u tom programu. Zavisi kakav virus zelis da napravis. Sta trebas znati? Pa programiranje, poznavanje rada Widnows-a i imati dobre ideje.

offline
  • Pridružio: 12 Jan 2011
  • Poruke: 4

Pa znam da radim u visual basicu i to jako dobro isao sam na takmicenja XD
Ali koji kodovi trebaju da se kucaju i kakvi algoritmi trebaju? Very Happy

offline
  • Pridružio: 02 Feb 2008
  • Poruke: 14018
  • Gde živiš: Nish

Kratko i jasno: to ovde neces saznati.


Bolje pocni da koristis to sto znas, unapredjuj svoje znanje iz dana u dan i gledaj da napravis neki koristan program a ne malware.

offline
  • Pridružio: 12 Jan 2011
  • Poruke: 4

Napravio sam ih vec dosta i smorilo me pravio sam i igrice XD...A sad hocu da prosirim znanje u smeru virusa Very Happy

Ko je trenutno na forumu
 

Ukupno su 923 korisnika na forumu :: 45 registrovanih, 6 sakrivenih i 872 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., babaroga, Bane san, BlekMen, Brana01, bufanje, Denaya, Dimitrije Paunovic, FOX, Frunze, Georgius, ILGromovnik, ivan979, Ivica1102, Karla, kovinacc, kybonacci, laurusri, Leonov, ljuba, ljubacv, Lošmi, maiden6657, milenko crazy north, Milometer, milutin134, Mlav, Mravce, nenad81, opt1, pein, Rakenica, raptorsi, sasa87, solic, sombrero, Srky Boy, Srle993, Steeeefan, vathra, Vlad000, Vlajman1957, YU-UKI, YugoSlav, zillbg