Cuộc chiến với Keylogger

Người ta tính toán rằng 70% cuộc tấn công trên Internet dựa trên Keylogger .
Bạn đã vá những lỗi của phần mềm hệ thống , vá những lỗi của phần mềm ứng dụng . Máy tính của bạn đã an toàn chưa ? Câu trả lời là chưa .

  

  1. Hình thức của Keylogger

Những kể tấn công tập trung tấn công vào bên sườn các máy trạm . Đơn giản nhất và thông thường nhất trong số chúng là ăn trộm mật khẩu . Phương pháp chung nhất để đánh cắp mật khẩu một cách bí mật đó là sử dụng Keylogger . Keylogger là chương trình phần mềm để theo dõi quá trình đánh bàn phím của người dùng . Chúng ăn cắp thông tin theo vài cách .

 

  • Gửi thông tin này kèm theo Email tới kẻ ăn trộm hoặc
  • Tải nó tới một vài máy chủ trên mạng Internet do kẻ ăn trộm điều khiển hoặc
  • Lưu trữ nó như là sổ nhật kí ( Log ) tại một nơi nào đó trong bản thân máy tính bị ăn trộm để lấy cắp thông tin trong một lần truy nhập tiếp theo .

 

Những Log này có thể được sử dụng để thu thập Email , tên truy cập ngân hàng Online , mật khẩu của những người dùng hoặc cũng có thể chụp bắt mã nguồn chương trình của một công ty phần mềm nào đó ...Keylogger có thể theo hai kiểu : phần cứng Keylogger , phần mềm Keylogger.

 

Keylogger tìm thấy trên mạng Internet có thể được gói cùng với phần mềm hợp pháp và có thể được gửi tới cho bất kì nạn nhân nào . Khi người dùng cài đặt phần mềm này thì Keylogger sẽ ngay lập tức được cài đặt vào hệ thống của máy tính nạn nhân . Bây giờ nó sẽ theo dõi tất cả mọi hoạt động phím bấm của người dùng và lưu trữ thành Log trên hệ thống đó hoặc gửi nó cho kẻ tấn công bằng Email hoặc sử dụng giao thức FTP . Dưới đây là một vài đặc điểm mà chúng ta có thể thấy Keylogger hiện nay :

 

  • Kiểu lén lút : Trong kiểu này không có biểu tượng trên thanh TaskBar . Cũng không có bất kì danh mục của nó trong Task Manager và Keylogger luôn ở chế độ ẩn .
  • Cài đặt từ xa : Keylogger này có đặc điểm gói nhờ vào một phần mềm khác và có thể gửi bằng Email để cài đặt máy tính từ xa kiểu lén lút . Nó sẽ gửi quá trình bấm bàn phím , chụp màn hình và những trang Web được ghé thăm cho kẻ tấn công bằng Email hoặc FTP .
  • Đổi tên thông minh : Đặc điểm này cho phép Keylogger ẩn dưới tên của những File thực hiện và trong những danh mực của Registry .

 

  1. Ngăn chặn việc bắt giữ bàn phím được ấn

 Ngăn chặn từ ngay trong chương trình ứng dụng

 

Những Keylogger , dùng cả bằng phần cứng hoặc phần mềm , thiết kế đều dựa trên nguyên lí cơ bản đó là bắt giữ những phím được nhấn khi người dùng gõ bàn phím . Trong những ứng dụng trên Web , một phương pháp tránh việc bắt giữ phím đó là dùng Bàn phím ảo để vào Username và Password . Bàn phím ảo tương tự với KeyPad đồ hoạ ở đó người dùng bấm Mouse vào những kí tự trên đó thay thế cho việc bấm kí tự trên bàn phím .

Đặc điểm này không an toàn với một vài chương trình Keylogger được thiết kế để bắt giữ màn hình khi Mouse được bấm . Như vậy Password của người dùng có thể tìm thấy bằng cách tìm kiếm trên màn hình bị chụp những kí tự tương ứng với bấm Mouse . Để tránh điều này Bàn phím ảo cũng có đặc điểm mà cho phép ngường dùng vào kí tự bằng cách giữ con trỏ chuột lên kí tự đó vài giây ( khoảng 2 giây ) . Như vậy người dùng có thể vào Password mà không cần bấm chuột

 

 

\"\"

 

Hình 1 : Bàn phím ảo

 

Một phương pháp khác để yêu cầu người dùng vào kí tự trong Password một cách ngẫu nhiên .

 

Ví dụ : Trong phần mềm ứng dụng có thể hỏi người dùng để vào những kí tự thứ 1 , thứ 3 và thứ 5  ( chỗ lẻ ) của Password và sau đó tới những kí tự trong Password thuộc ví trí chẵn . Chuỗi này được thay đổi theo thời gian tuy nhiên Password này lại có thể bị bẻ khi những kẻ tấn công tìm theo những tổ hợp khác nhau .

 

Giải pháp tốt nhất là không dùng Password một mức theo truyền thống mà dùng theo hai mức .

Ví dụ của Password hai mức là sử dụng Entrust IdentityGuard thêm vào với Username và Password hiện thời . Những người sử dụng được cung cấp thêm một kiểu thứ hai là thẻ mà được cấp phát dựa trên Username và Password ban đầu theo sự sắp xếp những kí tự theo định dạng Hàng/Cột được in trên thẻ . Bất kì lúc nào khi người dùng vào Username và Password sau đó phải trả lời một cách ngẫu nhiên dựa trên thẻ mà anh ta sở hữu .

 

Trong thí dụ dưới đây khi người dùng gõ Username và Password thì xuất hiện thêm dòng IdentityGuard và tên A2 , C4 , F3 được đưa ra một cách ngẫu nhiên hoặc cũng có thể là B6 , A5 , J2 . Lúc này người sử dụng phải có thẻ Entrust IdentityGuard  trong tay và gõ đúng theo số tương ứng với vị trí được ghi trong thẻ đó ( trong thí dụ trên đó là số 9 , 2 , 6 tương ứng với A2 , C2 , F3 ).

 

\"\"

 

Như vậy thậm trí Keylogger có bắt giữ được hình ảnh thì cũng không thể đưa thêm vào nội dung trong IdentityGuard bởi vì đó là ngẫu nhiên .

 

Ngăn chặn Keylogger từ phía khách hàng

 

Bản chất của việc ngăn chặn Keylogger từ phía khách hàng đó là giáo dục người dùng sử dụng Bàn phím để vào những thông tin nhạy cảm và chỉ cài đặt những chương trình nào thực sự cần thiết và biết rõ ràng về nó . Những chương trình miễn phí trên Internet là mối hiểm hoạ lớn và không nên sử dụng . Bạn nên sử dụng chương trình chống Keylogger ( Anti – Keylogger ) . Có hai kiểu chương trình chống Keylogger hiện nay :

 

  • Chương trình chống Keylogger dựa trên dấu hiệu : Nó là một kiểu nhận dạng Keylogger dựa trên những File hoặc những “dll” được cài đặt và những danh mục trong Registry .Chương trình chống Keylogger loại này sẽ nhận dạng thành công những Keylogger có trong danh sách cơ sở dữ liệu của nó , nhưng nó sẽ không nhận dạng được những Keylogger không nằm trong cơ sở dữ liệu . Vì vậy phải thường xuyên cập nhật cơ sở dữ liệu này .
  • Chương trình chống Keylogger dựa trên bẫy : Quá trình bẫy trong Windows dùng hàm gọi là SetWindowsHookEx() . Nó được dùng để theo dõi hệ thống khi mỗi sự kiện bấm nào đó , ví dụ Gõ phím / Bấm chuột . Chương trình chống Keylogger sẽ chặn bẫy này từ một chương trình khác . Kết quả là phần mềm Keylogger chỉ tạo được Log trắng không chứa nội dung .

Mặc dù chống Keylogger bằng bẫy hiệu quả hơn chống Keylogger theo dấu vết , nhưng chúng không có khả năng dừng hoạt động những Keylogger dựa trên nhân ( Kernel ) của hệ điều hành .

 

\"\"\"\"