eylogger merupakan
sebuah perangkat baik perangkat keras atau perangkat lunak yang
digunakan untuk memantau penekanan tombolkeyboard. Sebuah keylogger biasanya akan menyimpan hasil pemantauan penekanan tombol keyboard tersebut ke dalam sebuah berkas log/catatan/rekaman. Beberapa keylogger tertentu bahkan dapat mengirimkan hasil rekamannya ke e-mail tertentu secara periodik.
Keylogger dapat
digunakan untuk kepentingan yang baik atau bahkan bisa digunakan untuk
kepentingan yang jahat. Kepentingan yang baik antara lain untuk memantau
produktivitas karyawan, untuk penegakan hukum dan pencarian bukti
kejahatan. Kepentingan yang buruk antara lain pencurian data dan password.
Keylogger yang berupa hardware besarnya seukuran baterai ukuran AA
. Keylogger jenis ini dipasangkan pada ujung keyboard, sehingga mencegat data yang dialirkan dari keyboard ke CPU. Sementara itu, keylogger dalam
bentuk perangkat lunak terpasang di dalam komputerdan bekerja secara
tersembunyi. Cara sederhana untuk menghindari dampak adanya keylogger pada sistem operasi Microsoft Windowsadalah dengan menggunakan fitur on-screen keyboard (osk.exe
).
Perangkat lunak keyloggers
Merupakan
program perangkat lunak yang dirancang untuk bekerja pada sistem
operasi komputer target. Dari perspektif teknis ada lima kategori
perangkat lunak keylogger:
- Berbasis hypervisor:
Keylogger ini secara teoritis dapat berada
dalam malware hypervisor yang berjalan di bawah sistem operasi, yang
tetap tak tersentuh. Keylogger ini secara efektif menjadi sebuah mesin
virtual. Blue Pill adalah contohnya.
- Berbasis Kernel:
Metode ini sulit baik untuk ditulis maupun untuk dilawan. Keylogger
seperti ini berada di tingkat kernel dan dengan demikian sulit untuk
dideteksi, terutama untuk aplikasi mode-pengguna. Keylogger ini sering
diimplementasikan sebagai rootkit yang menumbangkan kernel sistem
operasi dan mendapatkan akses tidak sah ke perangkat keras, membuatnya
menjadi sangat kuat. Keylogger yang menggunakan metode ini dapat
bertindak sebagai device driver keyboard misalnya, dan dengan demikian
bisa mendapatkan akses ke setiap informasi yang diketik pada keyboard
selama berada dalam sistem operasi.
- Berbasis API:
Keyloggers ini "mengait" API keyboard; kemudian sistem operasi
memberitahukan keylogger setiap kali tombol ditekan dan otomatis
keylogger akan mencatatnya. API pada Windows, seperti
GetAsyncKeyState()
, GetForegroundWindow()
,
dll digunakan untuk menyelidiki keadaan keyboard atau untuk memantau
kegiatan keyboard. Keylogger jenis ini adalah yang paling mudah untuk
menulis, tetapi pada keylogger ini penyelidikan secara konstan pada
setiap kunci diperlukan, hal ini dapat menyebabkan peningkatan
penggunaan CPU yang cukup terlihat, dan juga dapat melewatkan beberapa
kunci. Contoh keylogger saat ini dapat menyelidiki BIOS untuk pra-boot
otentikasi PIN yang belum dibersihkan dari memori.
- Berbasis menangkap formulir:
Keylogger yang menangkap formulir mencatat pengiriman formulir
web dengan merekam fungsi pengiriman web browsing. Catatan ini membentuk
data sebelum melalui Internet dan melewati enkripsi HTTPS.
- Packet analyzers:
keylogger ini melibatkan penangkapan lalu lintas jaringan yang terkait
dengan kegiatan HTTP POST untuk mengambil password yang tidak
terenkripsi.
Perangkat lunak keylogger dengan akses remote
Ini
adalah keylogger software lokal dengan fitur tambahan yang memungkinkan
akses ke data lokal direkam dari lokasi lain. Komunikasi jarak jauh
dapat dicapai dengan menggunakan salah satu metode ini:
- Data diupload ke database, website atau server FTP.
- Data secara berkala di-email ke email yang telah ditentukan.
- Data ditransmisikan secara nirkabel melalui suatu sistem perangkat keras yang talah terpasang.
- Perangkat
lunak ini memungkinkan login jarak jauh ke mesin lokal dari Internet
atau jaringan lokal, untuk mengakses catatan data yang disimpan pada
mesin target.
Fitur terkait
Perangkat
lunak keylogger memungkin untuk ditambah dengan fitur yang menangkap
informasi pengguna tanpa bergantung pada penekanan tombol keyboard
sebagai input tunggal. Beberapa fitur ini meliputi:
- Clipboard logging. Apa pun yang telah disalin ke clipboard dapat ditangkap oleh program.
- Layar
logging. Screenshot diambil untuk menangkap informasi berbasis grafis.
Aplikasi dengan kemampuan screen logging dapat mengambil screenshot dari
seluruh layar, hanya satu aplikasi atau bahkan hanya sekitar kursor
mouse. Perangkat ini dapat mengambil screenshot secara berkala atau
dalam menanggapi perilaku pengguna (misalnya, bila pengguna telah
mengklik mouse). Sebuah aplikasi praktis digunakan oleh beberapa
keylogger dengan kemampuan screen logging untuk mengambil screenshot
kecil di sekitar di mana mouse baru saja diklik; perangkat ini bisa
mengalahkan keyboard berbasis web (misalnya, keyboard layar berbasis web
yang sering digunakan oleh bank) dan keyboard layar berbasis web apapun
tanpa pelindung screenshot.
- Secara terprogram menangkap teks dalam kontrol. API Microsoft Windows memungkinkan
program untuk meminta 'nilai' teks dalam beberapa kontrol. Hal ini
berarti bahwa beberapa password dapat ditangkap, bahkan jika mereka
tersembunyi di balik topeng sandi (biasanya tanda bintang).
- Perekaman
dari setiap jendela/program/folder yang terbuka termasuk screenshot
dari masing-masing dan juga setiap website yang dikunjungi.
- Perekaman
permintaan mesin pencari, percakapan pengirim pesan instan, download
FTP dan kegiatan berbasis Internet lainnya (termasuk bandwidth yang
digunakan).
Keylogger berbasis hardware
Keylogger
berbasis hardware tidak bergantung pada perangkat lunak yang diinstal
karena mereka ada pada tingkat perangkat keras dalam sistem komputer.
- Berbasis
firmware: Firmware tingkat BIOS yang menangani kegiatan keyboard dapat
dimodifikasi untuk merekam kegiatan ini ketika diproses. Akses tingkat
root dan/atau fisik diperlukan oleh mesin, dan perangkat lunak yang
dimuat ke dalam BIOS perlu dibuat untuk hardware tertentu di mana
perangkat lunak tersebut akan dijalankan.
- Perangakat
keras keyboard: keyloggers hardware digunakan untuk mencatat tombol
yang ditekan melalui suatu rangkaian perangkat keras yang terpasang di
suatu tempat di antara keyboard komputer dan komputer, biasanya di
tempat di mana konektor kabel keyboard terpasang. Implementasi yang
lebih tersembunyi dapat diinstal atau dibangun ke keyboard standar,
sehingga tidak ada perangkat yang terlihat pada kabel eksternal.
Keduanya sama-sama mencatat semua aktivitas keyboard untuk memori
internal mereka, yang kemudian dapat diakses, misalnya, dengan
mengetikkan urutan kunci rahasia. Sebuah perangkat keras keylogger
memiliki keuntungan lebih dari perangkat lunak: tidak tergantung pada
yang diinstal pada sistem operasi komputer target sehingga tidak akan
mengganggu program apapun yang berjalan pada mesin target atau
terdeteksi oleh perangkat lunak. Namun kehadiran fisik yang dapat
dideteksi jika, misalnya, ia terinstal di luar casing sebagai perangkat
antara komputer dan keyboard. Beberapa implementasi memiliki kemampuan
untuk dikontrol dan dimonitor dari jarak jauh dengan menggunakan standar
komunikasi nirkabel.
Sumber: http://id.wikipedia.org