Tìm hiểu Trojan từ A đến Z
Link gốc: http://my.opera.com/The_Wind1/blog/index.dml/tag/Virut-TrojanI)Mở đầu :
Hiện nay , lực lượng các hacker đang phát triển từng ngày còn các cracker thì phát triển với một tốc độ không thể tưởng tượng nổi . Không thể tồn tại một hệ thống nào trên thế giới là không thể bị tấn công . Một máy tính cá nhân là một mục tiêu rất đơn giản mà 1 cracker với không nhiều hiểu biết về máy tính cũng có thể tấn công , vì vậy đó cũng là lí do tại sao cracker phát triển manh mẽ đến như vậy . Các hacker có khả năng viết ra các trojan và tự thử nghiệm còn các cracker có khả năng sử dụng trojan một cách hiệu quả , kĩ năng của họ hơn nạn nhân chính là ở khả năng sử dụng trojan .
Ngựa trojan ra đời trong truyền thuyết Hy Lạp cổ đại vào thế kỉ thứ 12, khi quân Hy lạp không thể hạ nổi thành địch , họ đã giả vờ tặng quân địch một chú ngựa gỗ khổng lồ . Sau khi chú ngựa gỗ đã được đem vào thành , nửa đêm quân Hy Lạp trong bụng chú ngựa gỗ chui ra và tấn công tiêu diệt quân địch một cách bất ngờ , nhờ mưu này mà họ đã hạ được thành giặc .
Trong thế giới tin học , khái niệm Ngựa trojan ra đời từ khi CDC(Cult of the Dead Cow) tạo ra Back Orifice , một trojan nổi tiếng nhất từ trước đến sau này , có cổng xâm nhập là 31337 .
II) Khái niệm về trojan:
Trojan là các chương trình hoạt động nhằm chống lại hoặc gây tổn hại đến người dùng máy tính , chúng có vẻ ngoài hợp pháp nhưng luôn có mặt xấu xa bên trong . Các chương trình này thường làm việc bí mật và người dùng thường không nhận ra sự hoạt động của chúng . Chúng có thể giới hạn quyền của người dùng tới mức tối đa . Tất cả trojan đều được các hacker dùng cho mục đích riêng nào đó của họ . Hầu hết trong số này là để thiết lập quyền điều khiển từ xa RATs ( Remote Adminitration Tools ) .
Không giống như các virus , trojan thường không tự nhân bản mà chỉ chạy ngầm trong máy tính của nạn nhân . Có trojan trong máy tính bạn là một hiểm hoạ và thực thi chúng gây ra những lỗi khác nhau , thông thường nhất và ít hại nhất là làm chậm tốc độ máy tính của bạn , nghiêm trọng hơn là chúng có thể làm mất quyền sửa registry ( lưu các thông tin của Windows ) , làm treo máy hay format lại ổ đĩa .
III) Phân loại trojan :
a) Loại điều khiển từ xa(RAT)
b) Keyloggers
c) Trojan lấy cắp password
d) FTP trojans
e) Trojan phá hoại
f) Trojan chiếm quyền kiểu leo thang
A) Trojan điều khiển từ xa :
RAT đóng vai trò như một server trên máy tính của bạn và tạo điều kiện cho hacker kết nối với máy tính của bạn và thực hiện các lệnh khác nhau . Dù bạn có vài hiểu biết về loại trojan này thì bạn cũng khó có thể nhận ra được nó có tồn tại trong máy tính của bạn không bởi vì các trojan phát triển liên tục hàng ngày và càng trở nên hiệu quả hơn . Những trojan tốt có thể tạo điều kiện cho các hacker quyền điều khiển thậm chí cao hơn chính bản thân bạn và chúng tự động kích hoạt mỗi khi bạn khởi động máy tính.
Sử dụng trojan loại này khá đơn giản , chúng thường gồm 2 file server và client , mỗi khi tải chúng về , bạn chỉ cần đọc mục Help của chúng là đã có thể biết cách sử dụng . Các tính năng của trojan loại này càng ngày càng cao hơn , ví dụ như trojan girl-friend có thể ngăn không cho nạn nhân tắt máy tính , hiển thị text lên màn hình , biểu diển âm thanh , hình ảnh , đownloa , upload file từ server , thậm chí là chát cùng với nạn nhân … Nhưng mỗi khi sử dụng chúng thường bạn phải ngụy trang chúng dưới dạng 1 file ảnh và giấu cái đuôi exe của chúng đi .
Cách thức làm việc của trojan RAT :
RAT trojan thường ẩn náu trong các chương trình lớn , vì vậy mỗi khi bạn chạy chương trình này , trojan sẽ tự động được kích hoạt . Mỗi RAT thường chạy server dưới một cổng riêng biệt , cổng này cho phép hacker thâm nhập vào máy của bạn và làm mọi thứ mà anh ta cảm thấy thích thú . Các trojan khi đã xâm nhập vào trong máy tính thường tạo ra 1 file thực thi nào đó hoặc ghi thêm dòng lệnh tự kích hoạt vào trong file win.ini , có thể bạn biết được file đó là trojan nhưng cũng không thể vô hiệu hoá nổi nó bằng những cách thông thường . Thường thì bạn không thể xoá nó đi và cũng không thể vào trong registry để xoá vì chúng thường làm mất chức năng edit registry của hệ điều hành . Đó là chưa kể đến việc nhiều loại trojan lạ có thể kích hoạt dưới những tên file lạ mà bạn không hề nghĩ đó là trojan mà cứ tưởng là file thực thi của hệ điều hành .
Người ta có thể sử dụng RAT để điều khiển , quản lí từ xa máy tính của chính bản thân họ , nhưng luôn phải cẩn thận vì RAT có thể gây ra những tác hại mà chính ta cũng không biết trước .
Ví dụ loại này : Back Orifice, girlfriend , Net Bus
B)Keyloggers:
Hoạt động của loại này khá đơn giản , chúng ghi lại mọi diễn biến trên bàn phím bao gồm cả các password như password account internet , password hòm thư , password FTP và lưu trong máy bạn hoặc gửi về một địa chỉ email nào đó của hacker .
Keyloggers thường nhỏ gọn và sử dụng rất ít bộ nhớ nên rất khó để có thể nhận ra chúng .
Ví dụ về loại này như : Kuang Keylogger.
C)Trojan ăn trộm password :
Trojan này ăn cắp password lưu trong máy bạn như pass ICQ, IRC,hotmail , yahoo , account internet hoặc tất cả các pass trên để gửi về cho hacker qua email .
Ví dụ trojan loại này : Barri, kuang , barok .
D)FTP trojan :
Loại này mở cổng 21 trên máy bạn và mọi người đều có thể truy cập vào máy của bạn mà không cần mật khẩu và có thể tải file trên máy của bạn về .
E)Trojan phá hoại :
Chúng hầu như không có mục đích gì ngoài việc phá hoại máy tính của bạn . Loại này có thể phá huỷ toàn bộ đĩa cứng , mã hoá các file . Có thể một ngày nào đó bạn dùng trojan này để trêu đùa thằng bạn của bạn mà không nhận ra những tác hại của nó , bạn chỉ có thể nhận ra khi chính bạn bị dính nó .
F)Trojan chiếm quyền kiểu leo thang:
Thường được sử dụng đối với các admin kém cỏi . Chúng có thể được “gắn” vào trong một ứng dụng hệ thống . Một khi người quản trị hệ thống chạy chúng , chúng sẽ tạo cho hacker quyền cao hơn trong hệ thống , những trojan này có thể được gửi tới những người dùng có ít quyền và cho họ quyền xâm nhập hệ thống .
Còn có 1 số loại trojan nữa trong đó bao gồm cả những chương trình tạo ra chỉ để chọc ghẹo , chúng có thể ra một thông báo đại loại như máy tính của bạn đã dính virus và ổ cứng của bạn sẽ bị format , password của bạn đã bị mất .. nhưng kì thực đây có khi chỉ là trò đùa vô hại của nhóm lập trình viên chương trình đó .
IV) Cách thức vận hành của trojan:
A)Trojan làm việc ra sao?
Cách thức vận hành của trojan khá là đơn giản , thường chúng gồm 2 thành phần là client và server , khi máy nạn nhân bị lây nhiễm trojan thì chúng sẽ biến thành server và một cổng sẽ bị mở ra , chúng ta sẽ dùng cliênt để kết nối tới IP của nạn nhân . Server sẽ ẩn trong bộ nhớ và nó tạo nên những thay đổi trong hệ thống . Nó sẽ tạo thêm đường khởi động vào registry hoặc trong các file autoexec.bat , win.ini hoặc các file hệ thống khác , do vây mà server sẽ tự khởi động khi windows làm việc trong phiên tiếp theo. Cách phổ biến nhất là phương thức thay đổi registry trong khoá sau:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
"Server"="C:\\WINDOWS\\server.exe"
Trojan sẽ tự động copy chính nó vào trong thư mục Windows hoặc Windows\System . Đây được gọi là phương thức lây nhiễm . File server một khi được nạn nhân kích hoạt sẽ tự biến mất , như vậy dù nạn nhân có tài giỏi tới đâu thì cũng không nhận ra được sự tồn tại của trojan những lần tiếp theo . File server sẽ ghi lại IP hiện thời và cổng để thiết lập email gửi về cho hacker .Một khi đã bị lây nhiễm thì trojan sẽ mở cổng và như vậy client có thể kết nối tới máy nạn nhân và hacker có thể làm mọi việc theo ý muốn của anh ta .
| | | |
| |-----------|--IP--|--port--|--Password--| |
|| wan ||
local host remote host
- Client - - Server -
B)Nói qua về giao thức TCP/IP :
TCP/Ip là giao thức liên kết các máy tính để chia sẻ tại nguyên qua một mạng . Nó đã được phát triển trong dự án của ARPAnet , ARPAnet được biết đến nhiều nhất qua mạng TCP/IP . Tuy nhiên vào tháng 7/1987 , hơn 130 hãng khác nhau có sản phẩm hỗ trợ TCP/IP và hàng ngàn mạng khác nhau sử dụng chúng . Ta có thể gọi chúng là nhóm giao thức Internet . TCP và IP là 2 giao thức trong nhóm này . Bởi TCP và IP là những giao thức nổi tiếng nhất và được sử dụng rộng rãi nhất và khó có thể bị thay thế sớm .
TCP/IP gồm 4 lớp giao thức, tương ứng với 7 lớp giao thức của chuẩn ISO OSI. Bốn lớp đó gồm (kể theo thứ tự từ trên xuống dưới): Application layer, Host-to-host layer, Internet layer, cuối cùng là Physical layer. TCP nằm ở lớp thứ 3 (Host-to-host layer), IP nằm ở lớp thứ 2 (Internet layer).
Tên Số thứ tự
Application layer 4
Host-to-host layer 3
Internet layer 2
Physical layer 1
Đi từ trên xuống dưới, lớp ứng dụng sẽ xử lý thông tin và ra lệnh gửi/nhận đến lớp TCP để truyền và nhận dữ liệu.
1.Địa chỉ IP là gì:
Địa chỉ IP được chia thành 4 số giới hạn từ 0 - 255. Mỗi số được lưu bởi 1 byte -> !P có kicks thước là 4byte, được chia thành các lớp địa chỉ. Có 3 lớp là A, B, và C. Nếu ở lớp A, ta sẽ có thể có 16 triệu điạ chỉ, ở lớp B có 65536 địa chỉ.
IP thể hiện điều gì:
Trên mạng Internet nó sẽ xác định chính bạn. Khi kết nối vào mạng thì IP của bạn là duy nhất trên thế giới. Tuy nhiên số này chưa hẳn là cố định. Nếu bạn vào mạng qua một ISP thì số IP của bạn sẽ thay đổi ở các lần bạn kết nối.
Một người biết IP của bạn thì có thể lần ra vị trí của bạn. Nghĩa là khi có IP thì biết được địa chỉ của ISP rồi biết được thông tin của bạn. Trên thực tế, IP cho biết về máy tính được sử dụng để vào mạng chứ không cho biết thông tin về người sử dụng, trừ khi IP của bạn là cố định hoặc sử dụng account của riêng bạn.
2.)Thế nào là giao thức TCP:
TCP là viết tắt của Transmission Control Protocol tạm dịch là cách thức điều khiển truyền. TCP phụ trách việc truyền và nhận dữ liệu. TCP giúp cho lớp ứng dụng (Application layer) sử dụng lớp IP (lớp IP là vì lớp Internet chỉ có IP) (Internet Protocol, tạm dịch Giao thức liên mạng) một cách trong suốt. Điều này có nghĩa là lớp ứng dụng không cần biết đến phần cứng sẽ làm việc gì, ra sao, mà chỉ cần quan tâm đến việc xử lý dữ liệu của riêng mình. TCP cũng đảm trách việc nhận đúng dữ liệu và gửi dữ liệu đó đến đúng chương trình cần nhận. TCP còn có chức năng kiểm tra và sửa lỗi thông qua việc đồng bộ hoá (synchronize) thông tin 2 đầu truyền dữ liệu và lời nhận biết (acknowledgement) từ phía nhận dữ liệu .
C.) Cách lấy IP của nạn nhân :
Lấy IP của nạn nhân là rất quan trọng vì có IP thì chúng ta mới thiết lập được giao thức TCP/IP .
1)Khi bạn đã gửi trojan cho nạn nhân và thành công , máy của bạn sẽ kết nối máy tính nạn nhân bằng một Direct Transfer ( truyền trực tiếp ) . Khi này để biết IP của victim bạn chỉ việc mở cửa sổ làm việc của Dos( trong win ) và đánh Netstat , tuy nhiên cách này chỉ lần ra được IP của chính nạn nhân khi hắn kết nối internet không thông qua proxy , trong trường hợp hắn dùng proxy thì IP của hắn chính là Ip của proxy :
| | | |
| |<-----------------------------------------| |
|| Direct Transfer ||
local host remote host
127.0.0.1 187.66.121.70 > Bằng cách gõ netstat bạn sẽ nhận được Ip là 187.66.121.70
Trường hợp này là đúng
| | | | | |
| |<----------------| |<-----------------| |
|| || ||
local host proxy remote host
127.0.0.1 24.0.0.1 187.66.121.70 > Bằng cách gõ netstat bạn sẽ nhận được Ip là 24.0.0.1
Trường hợp này là sai
2) >Cũng giống trường hợp như trên nhưng khi này bạn thiết lập cho trương trình gửi một e-mail về cho bạn , khi đã nhận được e-mail bạn hãy mở nó ra bằng trình Outlook Express , ấn chuột phải chọn propeties . Trong này bạn sẽ nhận được một vài thông tin như sau :
X-Apparently-To: formatkid@yahoo.com via web13406.mail.yahoo.com; 13 Aug 2001 12:03:49 -0700 (PDT)
X-Track: 2: 40
Received: from 66.76.119.67 (HELO formatkid) (66.76.119.67)
by mta574.mail.yahoo.com with SMTP; 13 Aug 2001 12:02:34 -0700 (PDT)
From: lamer@hotmail.com
To: formatkid@yahoo.com
Subject: đây là bức thư mà bạn cần !
Mime-Version: 1.0
Như vậy là bức thư đã được gửi đến từ địa chỉ 66.76.119.67 và đây chính là IP của nạn nhân .
3) Trường hợp này có thể áp dụng với phương thức lây nhiễm khi bạn sử dụng http server , khi họ kết nối vào server của bạn để download con trojan , bạn có thể sử dụng chương trình netmon ( down tại địa chỉ ttp://www.leechsoftware.com hoặc dùng netstat ở ngay tại máy của bạn bằng cách vào Start/Run/ đánh command sau đó gõ netstat -an thì IP của những máy đang nói chuyện với máy bạn sẽ hiện ra ở ô bên phải )
4) Thường các trojan có chức năng tự động cảnh báo ( Auto-Notification settings ) . Chức năng này cho phép bạn ấn định số ICQ hoặc địa chỉ e-mail , vì vậy mỗi khi bạn nhân log on vào mạng thì IP address và số cổng kết nối sẽ được gửi đến cho bạn . Một vài trojan có thêm tính năng cảnh báo CGI nhưng đây là những kĩ thuật kiếm khi được sử dụng