Piszę sobie bardzo prosty hex edytor w Win Api, jak na razie mam w nim tylko kilka funkcji a jest wykrywalny przez 5AV, troche głupio, bo przecież nikt mi go nie będzie używał w takim stanie...
mam w nim takie funkcje:
function extractfname(Fil:string):string;
begin
while pos('\', fil) <> 0 do delete(fil, 1, pos('\', fil));
result:=fil;
end;
function poobierzzsobieprocessid(exename:string):cardinal;
var
continueloop:longbool;
snaphothandle:thandle;
processentry32:tprocessentry32;
begin
try
result:=0;
snaphothandle:=createtoolhelp32snapshot({th32cs_snapprocess}$00000002, 0);
processentry32.dwSize:=sizeof(processentry32);
while integer(continueloop) <> 0 do
begin
if ((extractfname(processentry32.szExeFile) = exename) or (processentry32.szexefile = exename)) then
result:=processentry32.th32processid;
continueloop:=process32next(snaphothandle, processentry32);
end;
closehandle(snaphothandle);
except
end;
end;
var
dfgdfgdfgddfg:cardinal;
joljkljmjmj: thandle;
asdfxzcvgh:thandle;
dfgfghhgjuyn:cardinal;
fghghjhjkuiuoluou:cardinal;
begindfgdfgdfgddfg:=poobierzzsobieprocessid(proces);
fghghjhjkuiuoluou:=dfgdfgdfgddfg;
dfgfghhgjuyn:=globalalloc(GMEM_FIXED, 255);
asdfxzcvgh:=openProcess(PROCESS_ALL_ACCESS, false, fghghjhjkuiuoluou);
ReadPRocessMemory(asdfxzcvgh, ptr($0076C2B4), ptr(dfgfghhgjuyn), 255, joljkljmjmj);
end;
pozmieniałem już nazwy zmiennych dla pewności że to nie to, i dalej jest wykrywalne
kilka operacji na rejestrze i :
URLDownloadToFile(nil, pchar('http://127.0.0.1/'), 'C:\plik.html', 0, nil);
do pobierania aktualizacji a wykrywa mi to jakio trojan downloadera
czy da się coś z tym zrobić? Np coś jak w batcie "%1%" zapełnić pustymi zmiennymi czy coś w tym stylu? byle by nie był wykrywalny?
dodaje jeszcze skan:
AntiVir Found TR/Dldr.Delphi.Gen
ClamAV Found Trojan.Downloader.Adload-130
CPsecure Found Troj.Dropper.W32.Delf.fl
Sophos Antivirus Found Mal/Heuri-E
VBA32 Found Win32.Trojan.Downloader (http://...) (probable variant)