Tải bản đầy đủ (.docx) (47 trang)

NGHIÊN CỨU VÀ PHÁT TRIỂN THỬ NGHIỆM KEYLOGGER

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.57 MB, 47 trang )

1

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN

---------------------------

ĐỒ ÁN MÔN HỌC
ĐỀ TÀI: NGHIÊN CỨU VÀ PHÁT TRIỂN THỬ NGHIỆM KEYLOGGER

Giảng viên hướng dẫn :ThS. Trần Đắc Tốt
Sinh viên thực hiện

:Nguyễn Đức Hùng – 2033181026
Hồng Hữu Ngọc Điệp - 2033180108

Lớp

:09DHBM1

TP,Hồ Chí Minh, năm 2021


2

LỜI CAM ĐOAN
Em xin cam đoan đồ án trên là cơng trình nghiên cứu của riêng bản thân chúng em
dưới sự hướng dẫn của ThS.Trần Đắc Tốt… Những nhận định được nêu ra trong đồ
án cũng là kết quả từ sự nghiên cứu trực tiếp, nghiêm túc, độc lập của bản thân tác
giả dựa và các cơ sở tìm kiếm, hiểu biết và nghiên cứu tài liệu khoa học hay bản


dịch khác đã được công bố. Đồ án vẫn sẽ giúp đảm bảo được tính khách quan, trung
thực và khoa học

Tp. Hồ Chí Minh, ngày 6 tháng 6 năm 2021
Sinh viên thực hiện

Nguyễn Đức Hùng

Sinh viên thực hiện

Hoàng Hữu Ngọc Điệp


3

LỜI CẢM ƠN
Trên thực tế khơng có sự thành cơng nào mà không gắn liền với sự hỗ trợ, giúp đỡ
dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác. Trong suốt thời gian từ
khi bắt đầu làm đồ án môn học, chúng em đã nhận rất nhiều sự quan tâm, giúp đỡ
của q Thầy/Cơ, gia đình và bạn bè. Với lòng biết ơn sâu sắc nhất, chúng em xin
cảm ơn đến quý Thầy/Cô đã dành hết tâm huyết cùng với tri thức của mình đề
truyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian làm đồ án mô
học. Và đặc biệt em xin chân thành càm ơn thầy Trần Đắc Tốt đã tận tâm hướng dẫn
chúng em qua các buổi nói chuyện, thảo luận, khảo sát về đề tài. Nếu khơng có lời
hướng dẫn, dạy bảo của thầy thì chúng em nghĩ bài báo cáo của chúng em rất khó
có thể hồn thiện được. Một lần nữa, em xin chân thành cảm ơn thầy.
Do bài báo cáo được thực hiện trong khoảng thời gian gần 8 tuần. Lần đầu tiên
bước vào một đề tài. Khơng tránh khỏi những thiếu sót là điều chắc chắn, em rất
mong nhận được những ý kiến đóng góp q báu của q Thầy/Cơ để kiến thức của
em trong lĩnh vực này được hồn thiện hơn.


Tp. Hồ Chí Minh, ngày 6 tháng 6 năm 2021
Sinh viên thực hiện

Nguyễn Đức Hùng

Sinh viên thực hiện

Hoàng Hữu Ngọc Điệp


4

TÓM TẮT
Theo định nghĩa cơ bản nhất, keylogger là một chức năng records hoặc keystrokes
trên máy tính. Ở cấp độ cơ bản này, keylogger dường như vô hại. Nhưng khi nó
nằm trong tay của một hacker hoặc một tội phạm mạng, keylogger trở thành một
cơng cụ mạnh nhằm mục đích lấy cắp thơng tin của bạn.
Việc tìm hiểu chương trình này sẽ giúp chúng ta có một kiến thức cơ bản về
Keylogger, phần mềm này được chia làm bao nhiêu loại. Cách hoạt động và bản
chất của Keylogger như thế nào. Cách chúng ta phát hiện và phòng chống
Keylogger ra sao. Việc tìm hiểu những kiến thức cơ bản này là rất cần thiết cho
chúng ta có thể xây dựng chương trình Keylogger. Và cũng chính là yếu tố sẽ giúp
chúng ta phát triển chương trình Anti-Keylogger say này.


5

MỤC LỤC



6

Danh mục các từ viết tắt
Danh mục các bảng
Danh mục các biểu đồ, đồ thị, sơ đồ, hình ảnh
Tồn bộ nội dung Đồ án
Chương 1: Tìm hiểu Keylogger và cách phòng chống Keylogger
Chương 2: Các kỹ thuật qua mặt Anti-Virus
Chương 3: Chương trình Keylogger
Chương 4: Demo chương trình Keylogger
Tài liệu tham khảo:
Website:
[1]. D.Shankle (2020) LMG SECURITY BLOG [online], viewed 5 June 2021,
from: Common Antivirus Bypass Techniques | LMG Security
[2]. Kaspersky (2020) [online], viewed 5 June2021, from: How Hackers Combat
and Bypass Antivirus Systems | Kaspersky
[3]. Security List(2007) [online],viewed 5 June 2021, form: Keyloggers: How they
work and how to detect them (Part 1) | Securelist
Ebook:
[1]. Matthew Munns, TROJAN, Kindle Edition, 2017.
[2].Hassan Salmani, Trusted Digital Circuits. Hardware Trojan Vulnerabilities, Prevention and
Detection-Springer (2018).
[3]. Shamim Miah, Muslims, Schooling and Security_ Trojan Horse, Prevent and Racial PoliticsPalgrave Macmillan (2017).


7

LỜI MỞ ĐẦU
Keylogger là một trong những phần mềm gián điệp. Vì vậy trong đề tài này sẽ giúp

chúng ta có một cái nhìn tổng quan về Keylogger để biết được ưu nhược điểm của
phần mềm này, cách thức hoạt động, từ đó biết được cách phịng chống, phát hiện
và tránh Keylogger. Qua những hiểu biết cơ bản đó sẽ giúp chúng ta xây dựng, thử
nghiệm và phát triển Keylogger. Để hiểu rõ hơn chúng ta cùng đi vào chi tiết từng
phần sau đây.


8

CHƯƠNG I: TÌM HIỂU KEYLLOGER VÀ CÁCH PHỊNG
CHỐNG KEYLOGGER
1.1. Lịch sử của Keylogger

Lịch sử của việc sử dụng keylogger cho mục đích giám sát bắt nguồn từ những ngày
đầu của máy tính. Wikipedia nêu chi tiết việc sử dụng keylogger lặt vặt trong những
năm 1970 và đầu những năm 1980 cho nhiều mục đích khác nhau, bao gồm cả các
hoạt động bí mật của chính phủ.
Trong khi các hình thức keylogging khác nhau đã xuất hiện trong một thời gian khá
dài, sự bùng nổ trong việc tạo và sử dụng keylogger thương mại đã tăng lên mức
đáng kể vào giữa đến cuối những năm 1990 với đủ loại sản phẩm nhanh chóng được
tung ra thị trường trong thời gian đó. Kể từ đó, số lượng keylogger thương mại có
sẵn để mua đã bùng nổ lên hàng nghìn sản phẩm khác nhau với nhiều đối tượng
mục tiêu khác nhau và bằng nhiều ngôn ngữ.


9

Và mặc dù các keylogger trong lịch sử đã nhắm mục tiêu đến người dùng gia đình
để lừa đảo, nhưng keylogging được nhà nước bảo trợ trong ngành và hiện đại là một
vấn đề nghiêm trọng, trong đó một cuộc thám hiểm lừa đảo làm tổn hại đến một

nhân viên cấp thấp hoặc nhân viên chức năng, và sau đó tìm cách tự vươn lên trong
tổ chức .

1.2. Khái niệm về Keylogger

Bạn có biết rằng bàn phím của bạn có thể cho phép tội phạm mạng nghe trộm?
Hoặc chúng có thể theo dõi bạn trên camera hệ thống ? Hay nghe qua micrô của
điện thoại thông minh? Keylogger hay “ Trình ghi chép, theo dõi thao tác bàn
phím ” được dịch và hiểu ra tiếng Việt là một chương trình máy tính được viết ra
dùng để theo dõi, ghi lại mọi dữ liệu của bàn phím khi được thao tác và lưu vào một
tập tin (log) để cho người cài đặt sử dụng. Do chức năng của nó mang tính vi phạm
vào sự riêng tư của người khác nên các chương trình Keylogger được xếp vào nhóm
các phần mềm gián điệp.
Mặc dù đối với suy nghĩ của người dùng, keylogger hoạt động trong bối cảnh phần
mềm độc hại, chúng không phải lúc nào cũng bất hợp pháp để cài đặt và sử dụng.


10

Keylogger là một công cụ phổ biến cho các tập đồn, mà các bộ phận cơng nghệ
thơng tin sử dụng để khắc phục sự cố kỹ thuật trên hệ thống và mạng của họ —
hoặc để theo dõi nhân viên một cách lén lút. Điều tương tự cũng xảy ra đối với các
bậc cha mẹ, những người muốn giám sát các hoạt động của con mình. Vợ / chồng
đáng ngờ là một thị trường khác cho keylogger.
Trong tất cả các trường hợp như vậy, nếu tổ chức hoặc cá nhân tải xuống và cài đặt
keylogger thực sự sở hữu thiết bị thì điều đó hồn tồn hợp pháp. Và có hàng ngàn
keylogger thương mại trên Internet, chúng tự quảng cáo cho mục đích sử dụng như
vậy.
Sau này, Keylogger nó được phát triển cao hơn, không những ghi lại mọi thao tác
trên bàn phím, mà nó cịn ghi lại tất cả các hình ảnh hiện thị trên màn hình. Bằng

cách chụp (screen-shot), quay video (screen-capture), ngồi ra cũng có thể ghi lại
q trình con trỏ chuột trên máy tính di chuyển.
Tuy nhiên, mối quan tâm về keylogger là khi các tác nhân độc hại đứng đằng sau
chúng. Và họ chắc chắn không sở hữu thiết bị mà họ lây nhiễm. Bạn khơng biết họ
đã xâm phạm máy tính của bạn; và tùy thuộc vào loại keylogger, nó có thể lấy cắp
bất kỳ mật khẩu nào bạn đã nhập, chụp ảnh màn hình định kỳ, ghi lại các trang web
bạn xem, truy cập vào các email đã gửi của bạn và bất kỳ phiên nhắn tin tức thời
nào, cũng như thông tin tài chính nhạy cảm (chẳng hạn như số thẻ tín dụng, mã PIN
và tài khoản ngân hàng), rồi gửi tất cả dữ liệu đó qua mạng tới máy tính từ xa hoặc
máy chủ web. Ở đó, người vận hành chương trình ghi nhật ký có thể lấy tất cả,
khơng nghi ngờ gì khi gửi cho bên thứ ba vì mục đích tội phạm

1.3 Phân loại các Keylogger
Tùy thuộc vào phần nào của máy tính mà chúng được nhúng vào, tất cả các
keylogger có thể được phân loại là dựa trên phần mềm hoặc dựa trên phần cứng.
Năm loại keylogger phổ biến nhất bao gồm:
1.3.1 Keylogger dựa trên API


11

Keylogger dựa trên API cho đến nay là phổ biến nhất. Các phần mềm keylogging
này sử dụng API bàn phím (viết tắt của giao diện lập trình ứng dụng) để ghi lại các
lần gõ phím của bạn. Mỗi lần bạn nhấn một phím, một thơng báo sẽ được gửi đến
ứng dụng bạn đang nhập để ký tự đã nhập sẽ xuất hiện trên màn hình. Các
keylogger dựa trên API chặn các thông báo này và nắm bắt mỗi thông báo dưới
dạng một sự kiện riêng biệt. Các bản ghi sau đó được lưu trong một tập tin trên ổ
cứng hệ thống để hacker dễ dàng truy xuất.
1.3.2. Keylogger dựa trên việc thu thập biểu mẫu
Thay vì ghi nhật ký từng lần gõ phím riêng biệt, các keylogger dựa trên biểu mẫu

ghi lại dữ liệu từ các biểu mẫu web của bạn khi gửi. Tương tự như các keylogger
dựa trên API, chúng chặn thông báo gửi để ghi lại tất cả thông tin bạn đã nhập vào
biểu mẫu. Thông tin này có thể bao gồm tên đầy đủ, địa chỉ, số điện thoại email,
thông tin đăng nhập hoặc thông tin thẻ tín dụng của bạn. Tồn bộ q trình diễn ra
ngay sau khi bạn nhấn nút “Gửi” hoặc “Nhập” và được hoàn tất trước khi dữ liệu
biểu mẫu của bạn được gửi đến trang web.
1.3.3. Keylogger dựa trên nhân
Như tên cho thấy, keylogger dựa trên hạt nhân ức chế lõi của hệ điều hành máy tính
của bạn (cịn được gọi là hạt nhân), khiến chúng rất khó phát hiện và xóa. Chúng ẩn
bên trong hệ điều hành của bạn và ghi lại các lần gõ phím của bạn khi chúng đi qua
hạt nhân. Bởi vì chúng khó viết hơn, các keylogger này hiếm hơn các loại dựa trên
phần mềm khác. Chúng được phân phối qua rootkit, gói phần mềm độc hại có thể
vượt qua nhân máy tính của bạn và nhắm mục tiêu vào phần cứng.
1.3.4. Keylogger phần cứng
Keylogger phần cứng là thiết bị sử dụng mạch điện bên trong bàn phím để ghi lại
các lần gõ phím. Chúng thường được tích hợp sẵn trong bàn phím, mặc dù chúng
cũng có sẵn dưới dạng đầu nối USB (đối với máy tính cá nhân) hoặc thẻ Mini-PCI
(đối với máy tính xách tay). Thay vì dựa vào phần mềm để lưu trữ các tổ hợp phím
đã ghi, tất cả các bản ghi được lưu trong bộ nhớ trong của thiết bị. Tuy nhiên, điều


12

này cũng có nghĩa là tin tặc phải có quyền truy cập vật lý vào bàn phím để lấy thơng
tin này.
1.3.5. Acoustic Keylogger
Các phím bấm acoustic rất phức tạp và do đó hiếm khi được sử dụng. Họ sử dụng
các nguyên tắc của phân tích mật mã âm thanh để ghi lại các lần gõ phím của bạn ở
cấp độ phần cứng. Bất kể bạn đang sử dụng bàn phím nào, mỗi phím trên bàn phím
đều có một chữ ký âm thanh duy nhất. Sự khác biệt là rất nhỏ, nhưng các chữ ký

riêng lẻ có thể được xác định bằng cách phân tích một mẫu thơng qua nhiều phương
pháp thống kê. Tuy nhiên, điều này không chỉ tốn thời gian mà kết quả có thể khơng
chính xác như các loại keylogger khác.

1.4 Cách hoạt động của Keylogger
1.4.1 Thành phần của Keylogger
Thơng thường, đối với một chương trình keylogger gồm có ba phần chính:
Chương trình điều khiển: dùng để điều phối hoạt động, điều chỉnh các thiết lập,
xem các tập nhật kí cho Keylogger; đối với phần này vì thường được giấu rất kỹ,
nên chỉ có thể gọi ra bằng tổ hợp phím tắt đặc biệt.
Tập tin hook, hoặc một chương trình dùng để ghi nhận lại các thao tác bàn phím,
capture screen.
Tập tin nhật ký (log), là nơi chứa đựng và ghi lại tồn bộ những gì hook gi nhận
được.
Tùy theo loại keylogger cũng có thể thêm các phần chương trình bảo vệ (Guard &
Protect), chương trình thơng báo (Report)…
1.4.2 Cách thức cài đặt vào máy:
Thông thường, Keylogger thuộc loại từ 1 => 3 khi cài vào máy cũng giống như các
chương trình bình thường khác, phải qua từng bước cài đặt. Nó sẽ cài đặt các tập tin
quan trọng dùng để hoạt động vào một thư mục đặc biệt (khá phức tạp), tiếp theo nó


13

đăng ký cách thức hoạt động rồi đợi người dùng thiết lập thêm những ứng dụng cá
nhân. Sau khi cài xong nó sẽ hoạt động.
Đối với loại số 4: có thể trực tiếp vào thẳng máy của người dùng không thơng qua
các bước cài đặt, sử dụng tính năng Autorun để khởi động cùng hệ thống. Ngồi ra,
có một số loại bám 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 thì Keylogger sẽ hoạt động.

1.4.3 Cách hoạt động
Trong hệ thống của hệ điều hành (Windows, Linux, MacOS,…), khi bấm 1 phím
bất kì, bàn phím sẽ chuyển nó thành tín hiệu vào CPU. Sau đó, CPU sẽ chuyển nó
tới 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
đang sử dụng.
Nếu trong hệ thống có Keylogger, khơng chỉ có hệ điều hành theo dõi mà cịn có cả
hook file, monior program của Keylogger cũng theo dõi. Nó sẽ ghi nhận và dịch lại
các tín hiệu này rồi ghi vào tập nhật kí. Ngồi ra nó cịn có thể ghi lại hình ảnh trên
màn hình và thao tác chuột.

1.5 Tại sao keylogger là mối đe dọa
Không giống như các loại chương trình độc hại khác, keylogger khơng có mối đe
dọa nào đối với bản thân hệ thống. Tuy nhiên, chúng có thể gây ra mối đe dọa
nghiêm trọng cho người dùng, vì chúng có thể được sử dụng để chặn mật khẩu và
thơng tin bí mật khác được nhập qua bàn phím. Do đó, tội phạm mạng có thể lấy mã
PIN và số tài khoản của hệ thống thanh toán điện tử, mật khẩu của tài khoản chơi
game trực tuyến, địa chỉ email, tên người dùng, mật khẩu email, v.v.
Sau khi tội phạm mạng nắm được dữ liệu bí mật của người dùng, chúng có thể dễ
dàng chuyển tiền từ tài khoản của người dùng hoặc truy cập vào tài khoản trị chơi
trực tuyến của người dùng. Thật khơng may, việc truy cập vào dữ liệu bí mật đơi khi
có thể gây ra hậu quả nghiêm trọng hơn nhiều so với việc cá nhân mất vài đơ la.
Keylogger có thể được sử dụng làm công cụ trong cả hoạt động gián điệp cơng
nghiệp và chính trị, truy cập dữ liệu có thể bao gồm thơng tin thương mại độc quyền


14

và tài liệu chính phủ đã phân loại có thể làm tổn hại đến an ninh của các tổ chức
thương mại và nhà nước (ví dụ: bằng cách đánh cắp khóa mã hóa cá nhân).
Keylogger, lừa đảo và kỹ thuật xã hội (xem ‘Máy tính, mạng và trộm cắp’) hiện là

những phương pháp chính đang được sử dụng trong gian lận mạng. Người dùng
nhận thức được các vấn đề bảo mật có thể dễ dàng tự bảo vệ mình trước lừa đảo
bằng cách bỏ qua các email lừa đảo và không nhập bất kỳ thông tin cá nhân nào trên
các trang web đáng ngờ. Tuy nhiên, việc chống lại keylogger là khó hơn đối với
người dùng; phương pháp khả thi duy nhất là sử dụng một giải pháp bảo mật thích
hợp, vì người dùng thường khơng thể biết rằng keylogger đã được cài đặt trên máy
của họ.
Theo Cristine Hoepers, người quản lý Nhóm Ứng cứu Khẩn cấp Máy tính của
Brazil, hoạt động dưới sự bảo trợ của Ủy ban Chỉ đạo Internet của quốc gia,
keylogger đã đẩy lừa đảo khỏi vị trí đầu tiên như một phương pháp được sử dụng
nhiều nhất trong việc đánh cắp thơng tin bí mật. Hơn nữa, keylogger ngày càng trở
nên tinh vi hơn - chúng theo dõi các trang web mà người dùng truy cập và chỉ ghi
lại các lần nhấn phím được nhập trên các trang web mà tội phạm mạng quan tâm
đặc biệt.
Trong những năm gần đây, chúng tôi đã thấy sự gia tăng đáng kể về số lượng các
loại chương trình độc hại khác nhau có chức năng keylogging. Khơng người dùng
Internet nào miễn nhiễm với tội phạm mạng, bất kể anh ta / anh ta sống ở đâu trên
thế giới và bất kể anh ta / anh ta làm việc cho tổ chức nào.

1.6 Cách tội phạm mạng sử dụng và lợi dụng keylogger
Một trong những sự cố keylog được công bố rộng rãi gần đây là vụ trộm hơn 1 triệu
đô la từ tài khoản khách hàng tại ngân hàng Nordea lớn của vùng Scandinavia. Vào
tháng 8 năm 2006, các khách hàng của Nordea bắt đầu nhận được email, được cho
là từ ngân hàng, gợi ý rằng họ cài đặt một sản phẩm chống thư rác, được cho là đính
kèm với tin nhắn. Khi người dùng mở tệp và tải xuống máy tính của mình, máy sẽ
bị nhiễm một loại Trojan nổi tiếng có tên là Haxdoor. Điều này sẽ được kích hoạt


15


khi nạn nhân đăng ký tại dịch vụ trực tuyến của Nordea và Trojan sẽ hiển thị thông
báo lỗi kèm theo yêu cầu nhập lại thông tin đăng ký. Keylogger được tích hợp trong
Trojan sẽ ghi lại dữ liệu do khách hàng của ngân hàng nhập và sau đó gửi dữ liệu
này đến máy chủ của bọn tội phạm mạng. Đây là cách bọn tội phạm mạng có thể
truy cập vào tài khoản của khách hàng và chuyển tiền từ họ. Theo tác giả của
Haxdoor, Trojan cũng đã được sử dụng trong các cuộc tấn công chống lại các ngân
hàng Úc và nhiều ngân hàng khác.

Vào ngày 24 tháng 1 năm 2004, loài sâu Mydoom khét tiếng đã gây ra một trận
dịch lớn. MyDoom đã phá vỡ kỷ lục do Sobig thiết lập trước đó, gây ra dịch bệnh
lớn nhất trong lịch sử Internet cho đến nay. Sâu này đã sử dụng các phương pháp kỹ
thuật xã hội và tổ chức một cuộc tấn công DoS vào www.sco.com; Hậu quả là trang
web không thể truy cập được hoặc không ổn định trong vài tháng. Sâu này đã để lại
một Trojan trên các máy tính bị nhiễm, sau đó được sử dụng để lây nhiễm cho các
máy nạn nhân bằng các sửa đổi mới của sâu. Việc MyDoom có chức năng
keylogging để thu thập số thẻ tín dụng đã khơng được công bố rộng rãi trên các
phương tiện truyền thông (*).
Đầu năm 2005, cảnh sát London đã ngăn chặn một nỗ lực nghiêm trọng nhằm đánh
cắp dữ liệu ngân hàng. Sau khi tấn công hệ thống ngân hàng, bọn tội phạm mạng đã
lên kế hoạch đánh cắp 423 triệu đô la từ các văn phịng của Sumitomo Mitsui có trụ
sở tại London. Thành phần chính của Trojan được sử dụng, được tạo ra bởi Yeron
Bolondi, 32 tuổi, là một keylogger cho phép bọn tội phạm theo dõi tất cả các lần gõ
phím đã nhập khi nạn nhân sử dụng giao diện khách hàng của ngân hàng (*).
Vào tháng 5 năm 2005, một cặp vợ chồng đã bị bắt tại London, người bị buộc tội
phát triển các chương trình độc hại được một số công ty Israel sử dụng trong hoạt
động gián điệp công nghiệp. Quy mô của vụ gián điệp đã gây sốc: các cơng ty bị
chính quyền Israel nêu tên trong các báo cáo điều tra bao gồm các nhà cung cấp
dịch vụ di động như Cellcom và Pelephone, và nhà cung cấp truyền hình vệ tinh
CĨ. Theo các báo cáo, Trojan đã được sử dụng để truy cập thông tin liên quan đến



16

cơ quan PR Rani Rahav, có khách hàng bao gồm Partner Communications (nhà
cung cấp dịch vụ di động hàng đầu thứ hai của Israel) và tập đồn truyền hình cáp
HOT. Công ty Mayer, công ty nhập khẩu ô tô Volvo và Honda cho Israel, bị nghi
ngờ có hành vi gián điệp công nghiệp chống lại Champion Motors, công ty nhập
khẩu ô tô Audi và Volkswagen cho nước này. Ruth Brier-Haephrati, kẻ đã bán
Trojan keylogging mà chồng cô ấy là Michael Haephrati tạo ra, đã bị kết án 4 năm
tù và Michael nhận bản án 2 năm (*).
Vào tháng 2 năm 2006, cảnh sát Brazil đã bắt giữ 55 người liên quan đến việc phát
tán các chương trình độc hại được sử dụng để đánh cắp thông tin người dùng và mật
khẩu vào hệ thống ngân hàng. Keylogger được kích hoạt khi người dùng truy cập
trang web ngân hàng của họ, bí mật theo dõi và sau đó gửi tất cả dữ liệu được nhập
trên các trang này cho bọn tội phạm mạng. Tổng số tiền bị đánh cắp từ 200 tài
khoản khách hàng tại sáu trong số các ngân hàng của quốc gia này lên tới 4,7 triệu
đô la.
Cùng lúc đó, một nhóm tội phạm tương tự gồm những người Nga và Ukraine trẻ
(20-30 tuổi) đã bị bắt giữ. Cuối năm 2004, nhóm này bắt đầu gửi cho các khách
hàng ngân hàng ở Pháp và một số quốc gia khác những email có chứa chương trình
độc hại - cụ thể là keylogger. Hơn nữa, các chương trình gián điệp này được đặt trên
các trang web được tạo ra đặc biệt; người dùng đã bị thu hút vào các trang web này
bằng các phương pháp kỹ thuật xã hội cổ điển. Tương tự như trong các trường hợp
được mô tả ở trên, chương trình được kích hoạt khi người dùng truy cập trang web
ngân hàng của họ và keylogger thu thập tất cả thông tin mà người dùng nhập và gửi
cho bọn tội phạm mạng. Trong mười một tháng, hơn một triệu đơ la đã bị đánh cắp.
Có nhiều ví dụ khác về tội phạm mạng sử dụng keylogger - hầu hết tội phạm mạng
tài chính cam kết sử dụng keylogger, vì các chương trình này là cơng cụ tồn diện
và đáng tin cậy nhất để theo dõi thông tin điện tử (*).



17

1.7 Cách thức lan truyền của Keylogger
Keylogger lây lan theo cùng một cách mà các chương trình độc hại khác phát tán.
Loại trừ các trường hợp keylogger được mua và cài đặt bởi một người phối ngẫu
hoặc đối tác ghen tuông và việc sử dụng keylogger bởi các dịch vụ bảo mật,
keylogger chủ yếu được phát tán bằng các phương pháp sau:
• Một keylogger có thể được cài đặt khi người dùng mở một tệp đính kèm
trong email;
• Một keylogger có thể được cài đặt khi một tệp được khởi chạy từ một thư
mục truy cập mở trên mạng P2P;
• Keylogger có thể được cài đặt thơng qua tập lệnh trang web khai thác lỗ
hổng trình duyệt. Chương trình sẽ tự động được khởi chạy khi người dùng
truy cập vào một trang bị nhiễm;
• Keylogger có thể được cài đặt bởi một chương trình độc hại khác đã có trên
máy nạn nhân, nếu chương trình đó có khả năng tải xuống và cài đặt phần
mềm độc hại khác vào hệ thống.

1.8 Cách phòng tránh và phát hiện Keylogger
Keylogger thường được cài vào máy tính qua 2 con đường: được cài đặt và bị cài
đặt
1.8.1 Phòng ngừa theo “được cài đặt”
Phương pháp này chỉ có tác dụng với người sở hữu máy tính (root hoặc
administrator). Cách tốt nhất là khơng nên cho ai mượn máy, xài chung máy. Bảo
mật máy bằng cách dùng cách chương trình bảo vệ, đặt mật khẩu. Thiết lập quyền
người dùng chung thấp nhất (guest cho Windows và user cho Linux) để kiểm sốt
các chương trình họ sử dụng và cài đặt.
1.8.2 Phòng ngừa theo “bị cài đặt”
Bị cài đặt là trường hợp khơng có người nào cài trực tiếp Keylogger vào máy tính,

mà do các phần mềm Malware (trojan, virus,…) cài đặt vào máy nạn nhân mà
khơng hề hay biết. Các biện pháp phịng ngừa:


18

• Khơng mở các tập tin khơng rõ nguồn gốc, các tập tin lạ (chú ý các tập tin có
đi *.exe, *.com, *.bat, *.gif …). Nên kiểm tra (scan) bằng cả hai chương
trình anti-virus và anti-spyware khi tải tập tin về, vì nhiều chương trình antivirus chỉ tìm thấy virus, khơng thể nhận biết spyware.
• Khơng vào các web lạ, web người lớn, vì có thể các trang web này ẩn chứa





các loại virus, worm hoặc các mã độc khác có thể âm thầm cài vào máy.
Khơng click vào đường link lạ từ một ai đó gửi đến.
Hạn chế sử dụng các phần mềm, chương trình crack.
Thường xuyên cật nhật các vá bảo mật của hệ điều hành.
Không download các nguồn không tin cậy. Nên kiểm tra chữ ký điện tử, để
đảm bảo chương trình khơng bị sửa đổi.

1.8.3 Che mắt keylogger
Keylogger hoạt động với nguyên tắc theo dõi bàn phím (monitor keyboard), rất ít
khả năng theo dõi thao tác chuột (dù có theo dõi thì cũng khơng biết chính xác). Vì
vậy dù trong hệ thống có keylogger (trừ các keylogger có khả năng quay phim) thì
có thể vượt qua bằng những cách này:
• Sử dụng On-Screen Keyboard (bàn phím trên màn hình; vào Start/Run/osk
để bật) dùng để nhập các dữ liệu nhạy cảm (mật khẩu, tài khoản ngân hàng)
bằng cách click chuột. Đây là phương pháp nhập dữ liệu nằm ngồi vùng

theo dõi của các tập tin hook (vì khơng qua bàn phím) nên Keylogger sẽ
khơng thể ghi nhận được những thông tin.
Tuy cách này dễ dùng nhưng người khác có thể thấy được thơng tin nhập vào
(tiếng lóng hay được dùng là đá pass), chỉ sử dụng khi ở một mình.
• Sử dụng Copy & Paste (chép và dán). Tìm một văn bản hoặc một từ nào đó
có các từ nằm trong đoạn thơng tin cần giấu.
Ví dụ: mật khẩu là password, thì chúng ta hãy tìm một đoạn văn hoặc từ đơn
có các từ p,a,s,s,w,o,r,d (như là:remote desktop windows) copy từng chữ rồi
dán ghép nó thành chữ password và gửi đi.


19

Cách này tuy dễ dùng nhưng khá rắc rối, mất thời gian và kém hiệu quả đối
với Keylogger có chức năng theo dõi clipboard.
• Sử dụng Type & Click (bấm và nhấn), bản thân Keylogger thông thường
không thể theo dõi các nhịp bấm chuột.
Ví dụ: nếu đánh một đoạn thơng tin là password, đầu tiên đánh một số từ có
trong nó như: pod rồi dùng chuột (lưu ý khơng dùng bàn phím), chèn ngang
vào giữa o và d là chữ “r”, tiếp theo đánh hai chữ “sw” vào trước chữ o và
cuối cùng thêm chữ “as” vào giữa chữ p và sw. Vậy là dịng thơng tin đã
nhập vào là password, nhưng trong tập tin log của Keylogger ghi lại được là
podrswas.
Cách này cũng khá hay và hiệu quả, nhưng nhược điểm là không phù hợp
với

những đoạn thông tin dài, vì nó dễ gây qn và nhầm lẫn.

1.8.4 Cách phịng/tránh Keylogger
1.8.4.1 Tránh Keylogger

Khi nghi ngờ máy có Keylogger, có thể sử dụng chương trình Task Manager (nhấn
tổ hợp phím Ctrl+Alt+Del) để xem xét các tiến trình đang chạy. Nếu thấy Process
nào lạ hoặc chưa thấy bao giờ thì tắt (end, kill) nó đi. Cách này có thể làm treo cả hệ
thống nếu không hiểu biết các tập tin hệ điều hành, chỉ dùng cho những người có
kinh nghiệm.
1.8.4.2 Chống Keylogger
Phương pháp đơn giản
Để hiệu quả nhất là xóa tồn bộ các chương trình theo dõi bàn phím. Có một số
chương trình như Keylogger Killer của Totto quét các tiến trình, để tìm các chương
trình theo dõi nhiều ứng dụng cùng một lúc (keylogger dùng cách này thông thường
là một tập tin *.dll) rồi khuyến nghị bạn nên tắt đi. Tuy nhiên, nếu sử dụng chương
trình tốt ( Unikey, Vietkey) dùng cách này có thể gây xóa nhầm.
Phương pháp nâng cao


20

Sử dụng các phần mềm, chương trình chống spyware chuyên dụng. Các chương
trình này tự động qt, phân tích các chương trình/tiến trình đang chạy trên máy để
từ đó nhận biết được các chương trình Keylogger và tự động xóa. Có một số
chương trình có chức năng bảo vệ thời gian thực (Real-time protection) có chức
năng kiểm tra và chống spyware ngay khi chuẩn bị cài vào máy.
Nhược điểm của các chương trình này là muốn sử dụng tốt thì phải trả phí (ví dụ:
McAfee AntiSpyware của McAfee, Spyware Doctor của Petools,…).
Tuy nhiên vẫn có một số chương trình miễn phí và khá hiệu quả như Spybot S&D,
Spyblaster,… Tuy thế, nó cũng lâu lâu bắt hụt một vài chương trình đặc biệt, nếu
dùng kết hợp (2-3 chương trình) thì hiệu quả là gần như tuyệt đối. (lưu ý nếu chạy
2-3 chương trình khơng phù hợp thì sẽ gây xung đột phần mềm).



21

CHƯƠNG II: CÁC KỸ THUẬT QUA MẶT ANTI-VIRUS
Làm thế nào vượt qua được Antivirus ( Phần mềm chống virus) ? Đây là một kỹ
thuật rất phức tạp, để vượt qua được Antivirus thì chúng ta cần phải hiểu khái
niệm, cơ chế hoạt động của Antivirus. Việc tìm hiểu các kiến thức này sẽ giúp chúng
ta biết rõ hơn các kỹ thuật qua mặt Antivirus.

2.1. Antivirus là gì ?

Antivirus ( phần mềm diệt virus ) là một dạng phần mềm có khả năng bảo vệ máy
tính , phát hiện, cảnh báo và loại bỏ các virus do hacker tạo ra. Được viết bởi các kỹ


22

sư có chun mơn cao. Từ đó khắc phục một phần hậu quả do virus tấn cơng máy
tính.

2.2. Các tính năng của Antivirus
Quét nền: Antivirus quét tất cả các ứng dụng, tệp và chương trình được mở từ
backend ( lớp truy cập dữ liệu ). Quá trình này được gọi là quét trên truy cập. Đảm
bảo. bảo vệ thời gian thực, máy tính hồn tồn khỏi các mối đe dọa

Qt hệ thống hoàn chỉnh : Antivirus quét toàn bộ hệ thống. Điều này được thực
hiện để đảm bảo rằng máy tính khơng có nhiễm phần mềm độc hại ẩn đằng sau các
mã trên hệ thống.
Quét hệ thống tự thiết lập: người dùng cũng có thể quét tùy ý như: file, thư mục hay
ổ đĩa mà cần quét. Cách này hoạt động khá là nhanh.


2.3. Antivirus hoạt động như thế nào ?
Antivirus là phần mềm có cơng việc rất khó khăn; nó cần phải tìm hiểu xem một tệp
có độc hại hay không trong một khoảng thời gian cực kỳ ngắn để không ảnh hưởng
đến trải nghiệm người dùng.


23

Antivirus quét một hoặc nhiều tệp, chương trình, ứng dụng và so sánh với bộ mã cụ
thể có thơng tin được lưu trữ trong cơ sở dữ liệu của nó. Nếu nó tìm thấy mã giống
hệt hoặc tương tự như một phần mềm độc hại đã biết trong cơ sở dữ liệu, thì mã đó
sẽ được coi là phần mềm độc hại và bị cách ly hoặc bị xóa.
Có 2 phương pháp phổ biến được sử dụng bởi Antivirus:
+ Signature-based ( quét trên chữ ký số ): là kiểm tra hình thức của một tệp,
chương trình, từ đó tìm kiếm các chuỗi và chức năng khớp với một phần mềm độc
hại đã biết trong cơ sở dữ liệu.
+ Heuristic (quét dựa trên heuristic): tương tự như signature-based. Nó xác định
phần phần mềm độc hại bằng cách xem xét, kiểm tra mã và phân tích cấu trúc của
một tệp hoặc chương trình. Sử dụng các thuật tốn để xác định phần mềm có đang
làm gì đáng ngờ khơng.

2.4. Các kỹ thuật qua mặt Antivirus
Code packing and encryption ( Đóng gói mã và mã hóa ):
+ Đa số virus Worm và Trojan được đóng gói và mã hóa. Ngồi ra, các hacker cũng
thiết kế các tiện ích đặt biệt kèm với virus rồi đóng gói và mã hóa.

+ Mã hóa giúp loại bỏ hiệu quả khả năng chống vi-rút phát hiện phần mềm độc hại
chỉ thông qua chữ ký. Các hacker tạo phần mềm độc hại thường sử dụng 'trình mật



24

mã' để mã hóa. Crypters mã hóa một tập tin và đính kèm một 'Stub', một chương
trình sẽ giải mã nội dung và sau đó thực thi chúng.
+ Để phát hiện Worm và Trojan, thì Antivirus phải thêm các phương pháp giải nén
và giải mã mới, hoặc thêm signature ( chữ kí ) mới cho mỗi mẫu chương trình độc
hại.
Code mutation (đột biến mã)
+ Là phương pháp trộn mã của virus Trojan cộng với Spam (code plus ‘spam’
instructions ). Để tạo ra mã mới, Trojan vẫn giữ chức năng như ban đầu. “The
Warezov mail worm” đã từng sử dụng kỹ thuật này gây ra nhiều vấn đề nghiêm
trọng.
Stealth techniques ( kỹ thuật tàng hình)
+ Thường được sử dụng bởi virus Trojan, có thể chặn và thay thế các chức năng hệ
thống, để làm cho tệp bị nhiễm trở nên vô hình đối với hệ điều hành và các chương
trình Antivirus.
Blocking antivirus programs and antivirus database updates ( Chặn các chương
trình chống vi-rút và cập nhật cơ sở dữ liệu )
+ Virus Trojan và Worms sẽ tích cực tìm kiếm các chương trình chống vi-rút trong
danh sách các ứng dụng đang hoạt động trên máy tính nạn nhân. Phần mềm độc hại
sau đó sẽ cố gắng:
• Chặn phần mềm chống vi-rút
• Làm hỏng cơ sở dữ liệu chống vi-rút
• Ngăn chặn hoạt động chính xác của các quy trình cập nhật của phần mềm
chống vi-rút
Obfuscation ( xáo trộn )
- Đơn giản là bóp méo phần mềm độc hại trong khi vẫn giữ được hình thức của nó.


25


CHƯƠNG III: CHƯƠNG TRÌNH KEYLOGGERS
Keylogger là gì? Keystroke logging(thường được gọi là key logging) là một phương
pháp thu giữ và ghi lại các tổ hợp phím của người sử dụng máy tính. Key logging
có thể có ích để xác định nguồn gốc của những sai sót trong hệ thống máy tính, để
nghiên cứu cách người dùng tương tác và tiếp cận với hệ thống, và đôi khi được sử
dụng để đo năng suất hoạt động của nhân viên văn phòng (một ứng dụng tuyệt vời
phải không?) về một nhiệm vụ nhất định. Hệ thống như vậy cũng rất hữu ích cho
việc thực thi pháp luật và công việc gián điệp.
3.1 Bộ thư viện cần thiết
using System;
using System.Diagnostics;
using System.Timers;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.IO;
using System.Net;
using System.Net.Mail;
using Microsoft.Win32;
Chúng ta cần System.Timers cho các bộ đếm thời gian(timer) - khi gửi mail,
System.Windows.Forms và System.Runtime.InteropServies cho việc gọi các
phương thức sẵn có (API) cho các keystrokes,
System.IO cho việc ghi văn bản ra file tệp


×