Ghi chép phím hay 'trình theo dõi thao tác bàn phím' theo cách dịch ra tiếng Việt là một chương trình máy tính ban đầu được viết nhằm mục đích theo dõi và ghi lại mọi thao tác thực hiện trên bàn phím vào một tập tin nhật ký (log) để cho người cài đặt nó sử dụng. Vì chức năng mang tính vi phạm vào riêng tư của người khác này nên các trình ghi chép phím được xếp vào nhóm các phần mềm gián điệp.
Sau này, khi ghi chép phím phát triển cao hơn nó không những ghi lại thao tác bàn phím mà còn ghi lại cả các hình ảnh hiển thị trên màn hình (screen) bằng cách chụp (screen-shot) hoặc quay phim (screen-capture) thậm chí còn ghi nhận cách con trỏ chuột trên máy tính di chuyển.
Phân loại ghi chép phím
Ghi chép phím bao gồm hai loại, một loại ghi chép phím phần cứng và một loại là phần mềm. Bài viết này nói đến loại phần mềm.
Theo những người lập trình, ghi chép phím được viết ra với mục đích duy nhất là giúp người giám sát con cái, người thân xem họ làm gì trên PC, Internet, khi trò chuyện với người lạ. Tuy nhiên, các cách sử dụng và chức năng của ghi chép phím hiện nay trên thế giới đã khiến người ta thường phân loại chúng dựa trên mức độ nguy hiểm bằng các câu hỏi:
- Nhiễm vào máy mà không cần cài đặt hoặc cài đặt rất nhanh (quick install)?
- Có thuộc tính ẩn/giấu trên trình quản lý tiến trình và trình cài đặt và gỡ bỏ chương trình (Add or Remove Program)?
- Có theo dõi mà không thông báo/PC bị nhiễm khó phát hiện?
- Có chức năng chụp màn hình hoặc ghi lại thao tác chuột?
- Khó tháo gỡ?
- Có khả năng lây nhiễm, khó bị tắt (kill process)?
Mỗi câu trả lời 'có' sẽ được tính là một điểm. Điểm càng cao, ghi chép phím càng vượt ra ngoài mục đích giám sát để đạt đến mục đích do thám và mức độ nguy hiểm càng cao. Ghi chép phím có thể được phân loại dựa trên số điểm:
Loại số 1
- Không điểm: hoạt động công khai, có thông báo cho người bị theo dõi, phù hợp với mục đích giám sát.
Loại số 2
- Một đến hai điểm: ghi chép phím nguy hiểm; hoạt động ngầm, nhằm vào mục đích do thám nhiều hơn là giám sát (tiềm ẩn nguy cơ đối với các thông tin cá nhân như tài khoản, mật khẩu, thẻ tín dụng do người dùng không nhận biết).
Loại số 3
- Ba đến năm điểm: ghi chép phím loại rất nguy hiểm; hoàn toàn ẩn giấu và theo dõi trên một phạm vi rộng, mục đích do thám rõ ràng.
Loại số 4
- Sáu điểm: ghi chép phím nguy hiểm nghiêm trọng, thường được mang theo bởi các trojan-virus cực kỳ khó tháo gỡ, là loại ghi chép phím nguy hiểm nhất. Chính vì vậy (và cũng do đồng thời là 'đồng bọn' của trojan-virus) nó thường bị các chương trình chống virus phát hiện và tiêu diệt.
Cách hoạt động của ghi chép phím
Thành phần của Ghi chép phím
Thông thường, một chương trình ghi chép phím sẽ gồm ba phần chính:
- Chương trình điều khiển (Control Program): dùng để điều khiển hoạt động, điều chỉnh các thiết lập, xem các tập tin nhật ký cho ghi chép phím. Phần này là phần được giấu kỹ nhất của ghi chép phím, thông thường chỉ có thể gọi ra bằng một tổ hợp phím tắt đặc biệt.
- Tập tin hook, hoặc là một chương trình monitor dùng để ghi nhận lại các thao tác bàn phím, capture screen (đây là phần quan trọng nhất)
- Tập tin nhật ký (log), nơi chứa đựng/ghi lại toàn bộ những gì hook ghi nhận được.

Ngoài ra, tùy theo loại có thể có thêm phần chương trình bảo vệ (guard, protect), chương trình thông báo (report)…
Cách thức cài đặt vào máy tính
Các loại ghi chép phím từ 1 - 3 thông thường khi cài đặt vào máy tính cũng giống như mọi chương trình máy tính khác, đều phải qua bước cài đặt. Đầu tiên nó sẽ cài đặt các tập tin dùng để hoạt động vào một thư mục đặc biệt (rất phức tạp), sau đó đăng ký cách thức hoạt động rồi đợi người dùng thiết lập thêm các ứng dụng. Sau đó nó bắt đầu hoạt động.
Loại ghi chép phím số 4 có thể tự động vào máy tính của người dùng mà không cần qua bước cài đặt, sử dụng tính năng tự động chạy (autorun) để hoạt động cùng hệ thống. Một số loại tự thả (drop) mình vào các chương trình khác, để khi người dùng sử dụng các chương trình này ghi chép phím sẽ tự động chạy theo.
Cách thức hoạt động
Trong một hệ thống (Windows, Linux, Mac…), khi nhấn một phím trên bàn phím, bàn phím sẽ chuyển nó thành tín hiệu đưa vào CPU. CPU sẽ chuyển nó tới hệ điều hành để hệ điều hành dịch thành chữ hoặc số cho chính nó hoặc các chương trình khác sử dụng.
Tuy nhiên, khi có keylogger trong hệ thống, không chỉ hệ điều hành theo dõi mà cả tập tin hook/monitor program của keylogger sẽ ghi nhận và dịch lại các tín hiệu ghi vào tập tin nhật ký. Đồng thời, nó còn có khả năng theo dõi cả màn hình và các thao tác chuột.
Cách phòng, tránh và chống lại keylogger
Phòng chống
Keylogger thường xâm nhập máy tính qua hai phương thức chính: được cài đặt hoặc tự cài đặt.
Biện pháp phòng ngừa 'được cài đặt'
Phương pháp này chỉ có tác dụng đối với chủ máy (người có quyền root/administrator). Điều quan trọng nhất là không nên chia sẻ máy tính. Để bảo mật, hãy sử dụng các chương trình bảo vệ hoặc thiết lập mật khẩu khi di chuyển. Nếu phải chia sẻ máy, hãy thiết lập quyền người dùng chia sẻ đó thật thấp (guest trong Windows XP, user trong Linux) để kiểm soát cài đặt chương trình của họ.
Biện pháp phòng ngừa 'bị cài đặt'
Bị cài đặt là khi keylogger xâm nhập vào máy tính một cách không rõ nguồn gốc thông qua trojan, virus, spyware mà nạn nhân không biết. Các biện pháp phòng ngừa:
- Không mở tùy tiện các tập tin không rõ nguồn gốc. Tốt nhất là nên xóa đi hoặc kiểm tra bằng một chương trình antivirus và antispyware, vì nhiều antivirus chỉ phát hiện virus mà không nhận diện spyware.
- Không truy cập vào các trang web lạ, đặc biệt là những trang có nội dung đáng ngờ vì có thể chứa các loại mã độc như worm, virus, hoặc malware có thể tự cài đặt một cách âm thầm.
- Không bấm vào các liên kết không rõ nguồn gốc mà người khác gửi cho bạn.
- Không cài đặt các phần mềm không rõ nguồn gốc vì chúng có thể chứa virus hoặc trojan.
- Không tải phần mềm từ các nguồn không đáng tin cậy. Nếu có thể, hãy kiểm tra chữ ký số để đảm bảo phần mềm không bị sửa đổi.
- Hạn chế tải và sử dụng các phần mềm crack.
- Luôn sử dụng các phần mềm chống virus, chống spyware (antivirus, antispyware) và thiết lập tường lửa (firewall) khi kết nối Internet.
- Thường xuyên cập nhật các bản vá bảo mật cho hệ điều hành.
- Hoặc có thể sử dụng phần mềm chống keylogger để bảo vệ máy tính.
Phòng tránh keylogger
Khi có nghi ngờ về sự tồn tại của keylogger mà không có điều kiện để kiểm tra.
Loại bỏ tập tin hook và các chương trình theo dõi
Sử dụng chương trình quản lý tác vụ (task manager), có thể gọi ra bằng tổ hợp phím Ctrl+Alt+Del trên Windows, để xem các chương trình đang chạy. Nếu phát hiện các process lạ (đặc biệt đối với Windows XP, các tập tin chạy dưới tên người dùng không phải là System), người dùng nên kết thúc (end, kill) chúng. Lưu ý, cách này có thể gây treo hệ thống nếu tập tin đó là quan trọng; vì vậy, người dùng cần có kinh nghiệm trong việc xử lý này.
Bảo vệ khỏi keylogger
Keylogger hoạt động bằng cách theo dõi bàn phím và ít khi có khả năng theo dõi chuột (và nếu có, thường không chính xác) và có thể bắt clipboard. Vì vậy, để vượt qua keylogger (trừ khi là keylogger có chức năng ghi lại màn hình), có thể áp dụng những cách sau:
- Sử dụng Bàn phím trên màn hình (On-Screen Keyboard) (trong Windows, gọi ra bằng Start/Run/osk) để nhập các thông tin nhạy cảm như mật khẩu, thẻ tín dụng bằng cách click chuột. Đây là cách nhập liệu không thông qua bàn phím nên keylogger không thể ghi nhận được. Tuy nhiên, cách này có thể bị người khác quan sát (gọi là đá pass) và từ đó có thể mất mật khẩu.
- Sử dụng Sao chép và dán (Copy’n’Paste): tìm một đoạn văn bản có các từ giống với thông tin cần giấu (ví dụ: mật khẩu là password, bạn có thể tìm đoạn văn có các chữ p, a, s, w, o, r, d như toi day Is a hot day, peter feel bad he want a cool drink or a ice-cream) copy từng chữ một và dán thành mật khẩu trước khi gửi đi. Cách này dễ sử dụng nhưng thường bị keylogger theo dõi clipboard.
- Sử dụng Bấm và nhấn chuột (Type’n’Click): vì keylogger thường không thể theo dõi các lần nhấn chuột. Ví dụ, muốn nhập mật khẩu, bạn có thể nhập một số từ như psr, sau đó sử dụng chuột (không sử dụng bàn phím) chèn các ký tự vào giữa, ví dụ nhấn chuột chèn a giữa p và s, rồi chèn swo sau s và r là chữ d. Kết quả đoạn thông tin nhập vào mật khẩu, nhưng keylogger vẫn ghi lại psraswod vào tập tin log. Cách này khá hữu ích nhưng không phù hợp với các thông tin dài vì dễ gây nhầm lẫn.
Phòng chống keylogger
Giải pháp đơn giản
Phương pháp nhanh và hiệu quả nhất để loại bỏ hoàn toàn các chương trình theo dõi bàn phím là sử dụng các công cụ như Keylogger Killer để quét và tắt các ứng dụng này. Tuy nhiên, cách này có thể vô tình tắt những chương trình hữu ích như Unikey, Vietkey.
Nâng cao hiệu quả
Sử dụng các chương trình chống spyware chuyên dụng để tự động quét và phát hiện các keylogger đang hoạt động trên hệ thống của bạn. Một số chương trình này còn cung cấp chế độ bảo vệ thời gian thực để ngăn chặn spyware cài đặt vào máy tính.
Tuy nhiên, điểm khó khăn của phương pháp này là hầu hết các chương trình chất lượng đều yêu cầu phải trả phí, như Spyware Doctor của Pctools, McAfee Antispyware của McAfee, Bitdefender.
Ngoài ra, vẫn có một số chương trình miễn phí tốt như Ad-Aware SE, Spybot S&D, Spyblaster, mặc dù đôi khi chúng có thể bỏ sót một số phần mềm đặc biệt. Tuy nhiên, nếu bạn kết hợp sử dụng cùng lúc hai hoặc ba chương trình này, hiệu quả sẽ gần như hoàn toàn đảm bảo.
Trong một số trường hợp, người dùng chọn giải pháp 'sống chung với lũ' để chống lại keylogger. Ví dụ, Keyscrambler là một phần mềm bảo vệ máy tính sử dụng phương pháp mã hóa dữ liệu từ bàn phím ngay tại lõi hệ điều hành trước khi chúng được truyền đến các ứng dụng khác, bao gồm cả keylogger. Phương pháp này có thể ngăn chặn hiệu quả hầu hết các loại keylogger hiện nay mà không cần người dùng phải cập nhật thường xuyên các phần mềm chống keylogger. Tuy nhiên, nó cũng có những hạn chế riêng. Nếu keylogger được thiết kế để ghi lại các phím sau khi chúng được giải mã, ví dụ như là một tiện ích của trình duyệt, Keyscrambler có thể không còn hiệu quả. Ngoài ra, nó chỉ tương thích với một số phần mềm nhất định, và khi sử dụng cùng các phần mềm gõ tiếng Việt, người dùng cần phải tắt KeyScramble đi, điều này có thể gây phiền toái lớn mặc dù minh chứng cho khả năng bảo mật của phần mềm này.
