Sabtu, 23 November 2013

[Delphi] Mendeteksi Keylogger


Ini adalah contoh sebuah Engine AntiVirus sederhana yang "dikemas" dalam bentuk file library atau DLL (Dynamic Link Library), sehingga bisa digunakan oleh program lain. Fungsi yang terdapat pada library ini digunakan untuk mendeteksi apakah suatu program termasuk keylogger atau tidak.

Algoritma yang digunakan sederhana dan tentu tingkat ke-akuratannya bisa mencapai lebih dari 90% . Jika file program positif keylogger, maka akan menampilkan pesan seperti gambar diatas. Adapun cara pemakaiannya dalam Bahasa pemrograman Delphi adalah sebagai berikut:
function iskeylogger(filename :string): boolean; export; external 'engine.dll'

//lakukan scan pada file yang tertera di object edit1
procedure TForm1.Button1Click(Sender: TObject);
begin
  if iskeylogger(edit1.Text) = true then showmessage('file ini adalah keylogger');
 scandong(edit1.Text);
end;

Bagaimana cara kerjanya?
Dalam prosesnya, fungsi iskeylogger yang di terdapat dan di export pada file engine.dll tersebut melakukan pencarian terhadap string "_Z8KeyEventijl@12" pada file. Apakah string "_Z8KeyEventijl@12" ini? string ini terdapat pada program yang melakukan fungsi hook SetWindowsHook dengan ID hook "WH_KEYBOARD_LL" atau disebut juga lowlevel hook keyboard.

String tersebut selalu ter-export pada program yang melakukan hook keyboard secara lowlevel, untuk program biasa tentu tidak akan melakukannya, sehingga kemungkinan False Alarm sangat kecil. Biasanya, program lain saat melakukan pengecekkan apakah suatu key pada keyboard telah ditekan atau tidak biasanya menggunakan Windows API GetAsyncKeyState, meskipun cara ini juga dipakai oleh kebanyakan keylogger.

Anda bisa melihatnya pada file sample yang saya sertakan pada file arsip project ini dengan PEiD, string tersebut terlihat pada bagian Exports Viewer (lihat gambar)



Izin pengunaan
bebas, boleh digunakan untuk tujuan apapun selama tidak mengubah atau memodifikasi file library ini.

Link Download

dalam file arsip download tersebut berisi:
* testengine.exe (contoh program yang menggunakan file library)
* engine.dll  (file library)
* 1.exe (sample keylogger)


Semoga Bermanfaat

Artikel ini dibuat oleh Yudha Tri Putra sebagai penulis artikel, diperbolehkan menyalin artikel ini secara utuh tanpa mengubah atau menambah isi artikel.

0 komentar:

Posting Komentar

(C) 2018. Diberdayakan oleh Blogger.

Categories

Followers