• Bu site çerezler kullanır. Bu siteyi kullanmaya devam ederek çerez kullanımımızı kabul etmiş olursunuz. Daha fazla bilgi edin.

Delphi ile Dinamik Api Çağırma Yöntemi ve Inline Assembler Kullanımı

Konuyu Okuyan Kişiler (0)

ap0calypse

webmaster.tc
Katılım
6 Ağu 2012
Mesajlar
33
Beğeniler
0
Konum
Istanbul
#1
Merhaba,
Delphi icerisinden kütüphanelerdeki apileri kolaylikla dinamik olarak cagirmaniza yarar.

Bir cok malware yazilimi delphi dili ile yazildigi icin bircok antivirus uygulaması uygulamaniz zararli kod icermese bile derlemis oldugunuz exe dosyasini istenmeyen yazilim olarak goruyor.
Bu durumdan kurtulmak icin dinamik api cagirma yontemini kullanabilirsiniz...

PHP:
Function ForceLoadLibrary(sLibrary : String;sApi : String) : Pointer;
VAR
  LibHandle : Cardinal;
Begin
  LibHandle := GetModuleHandleA(PAnsiChar(sLibrary));
  IF LibHandle=0 THEN
  BEGIN
      LibHandle := LoadLibraryA(PAnsiChar(sLibrary));
  END;
  Result := GetProcAddress(LibHandle,PAnsiChar(sApi));
End;
Örnek Kullanım:

PHP:
var
  NewMessageBoxA :Function (hWnd: HWND; lpText, lpCaption: PAnsiChar; uType: UINT): Integer; stdcall;
begin
  @NewMessageBoxA := ForceLoadLibrary('user32.dll','MessageBoxA');
  NewMessageBoxA(0,PAnsiChar('Program Tamama Bastiktan Sonra Kapanacak!'),PAnsiChar('Bilgi'),MB_OK OR MB_ICONINFORMATION);
  ASM
    PUSH 0
    CALL EXITPROCESS
  END;
Saygilar.