Kỳ 1 Lập trình virus với VC++
Trang 1 trong tổng số 1 trang
Kỳ 1 Lập trình virus với VC++
Lời tựa:
Trích dẫn:
-------------------------------------------------------------------------------------------------------------------------------------------------
Đầu tiên mình xin khẳng định quan điểm viết virus không phải là xấu,nó chỉ xấu khi được phát tán ra bên ngoài,để viết được virus có chất lượng nó cần ở người viết rất nhiều kiến thức khác nhau,đặc biệt là am hiểu về lập trình hệ thống,các cơ chế của hệ thống,vì vậy với bài viết này đơn giản mình chỉ muốn học hỏi ,chia sẻ kiến thức hệ thống thôi,bài viết không mang ý nghĩa hướng dẫn phá hoại
-------------------------------------------------------------------------------------------------------------------------------------------------
Công cụ
Trích dẫn:
-------------------------------------------------------------------------------------------------------------------------------------------------
IDE vc++6.0 -> công cụ lập trình chính
máy ảo VMWARE -> soát lỗi và đưa vào ứng dụng
-------------------------------------------------------------------------------------------------------------------------------------------------
Các mẫu virus đã tham khảo:
Ckvo.exe,image.exe,hinhem.exe ….
Ý tưởng
Mục tiêu tấn công:
Trích dẫn:
------------------------------------------------------------------------------------------------------------------------------------------------
Mục tiêu tấn công của virus là các file tự chạy ( .EXE ) trên toàn bộ máy tính,mong muốn của tôi là biến toàn bộ các file exe trên máy trở thành virus với tên của nó được giữ nguyên
------------------------------------------------------------------------------------------------------------------------------------------------
Phương thức tấn công :
Trích dẫn:
------------------------------------------------------------------------------------------------------------------------------------------------
- Virus sau khi được kích hoạt sẽ tự động liệt kê các ổ đĩa có trong máy tính,sau đó sẽ sử xây dựng 1 hàm kiểm tra các ổ nào là ổ có chứa dung lượng thật ( là những ổ cứng và USB … không có CD)
- Xây dựng hàm kiểm tra có phải là file exe hay không,sau đó duyệt đệ quy các ổ có chứa dung lượng thật
- Xây dựng hàm tạo file autorun.inf,tạo file autorun.inf tại tất cả các ổ đĩa có dung lượng thật
------------------------------------------------------------------------------------------------------------------------------------------------
Thiết kế
Trích dẫn:
-----------------------------------------------------------------------------------------------------------------------------------------------
Ý tưởng của chương trình khá lớn vì vậy đơn giản nhất để phát triển nó là xây dựng trên các class với những nhiệm vụ khác nhau,chủ yếu với virus thì nên chia thành 3 nhiệm vụ: tấn công,phòng thù và lây lan
- Class lây lan sẽ chịu trách nhiệm lây lan của virus,trong con virus này ta chỉ kể đến việc lây lan qua USB ,cụ thể khi ta cắm usb vào máy tính,lập tức virus được copy vào usb,và toàn bộ dữ liệu của usb
-----------------------------------------------------------------------------------------------------------------------------------------------
• int nhanrausb(void); hàm nhận ra usb ,khi usb được cắm vào máy tính chương trình sẽ tự động nhận ra usb,copy file autorun.inf và chính file virus
• int copyvirus(char *tendia); hàm copy file file virus vào tất cả các ổ đĩa có dung lượng thật
• int lietkeodia(void); hàm liệt kê tất cả các ổ đĩa,bao gồm cả ổ đĩa có dung lượng thật và ổ đĩa có dung lượng ảo
• friend char* tenvirus(void); hàm lấy đường dẫn của virus
tancong với khả năng khảo sát toàn bộ các ổ cứng có dung lượng thật ,nếu phát hiện ra file exe nào lập tức xóa nó đi,thay vào đó file virus,với tên vẫn là tên của file exe ban đầu
* int duyetdequy(char *odia); như đã nói hàm để có thể tấn công toàn bộ các file exe trong ổ cứng
* bool kiemtraprocess(char *tenfile); hàm này có bug,mục đích của mình là kiểm tra xem file exe có được dùng không
* hàm kiểm tra có phải là file exe hay không để tấn công
• Hàm bạn lấy kiểm tra có phải là thư mục hay không
- Class phong thủ chịu trách nhiệm duy trì sự hiện diện của virus trên máy tính,vì thế nó sẽ phải làm những nhiệm vụ như khởi động cùng máy tính( mỗi khi máy được khởi động ) ,chặn Taskmanager để tránh việc endTask virus,trong các phiên bản sau mình sẽ phát triển thêm khả năng tự bảo vệ trước việc bị endTask từ các công cụ chuyên dụng như processXP…
• void khoidong(void); với vai trò khởi động cùng windows( mình chỉ cần thay đổi registry thôi chính là khóa này HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\ CurrentVersion\\Run",0,KEY_ALL_ACCESS
void taskmanager(void); với vai trò khóa taskmanager chính là khóa này HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\C urrentVersion\\Policies\\System
void vohieuhoarun(); như tên hàm,đây là nơi chịu trách nhiệm vô hiệu hóa run ở khóa này HKEY_LOCAL_MACHINE,"Software\\microsoft\\windowns\ \CurrentVersion\\policies\\Exploer
hàm kiểm tra ổ có dung lượng thật hay không và hàm kiểm tra xem virus trong máy tính đã có chưa,nếu chưa có thì chạy,nếu có rồi thì ngừng
còn đây là mẫu sau khi được biên dịch và nén lại bằng UPX -> giảm 1 nửa dung lượng
http://www.4shared.com/file/70389175/ae3af5f6/_2__dt.html
note: thử trên máy ảo nhé
nếu chưa có máy ảo thì down ở đây,mình thì mình thích dùng VMware hơn,nó có thể phục hồi rất nhanh ( giống như ghost )
http://www.microsoft.com/windows/downloads/virtualpc/default.mspx
Trích dẫn:
-------------------------------------------------------------------------------------------------------------------------------------------------
Đầu tiên mình xin khẳng định quan điểm viết virus không phải là xấu,nó chỉ xấu khi được phát tán ra bên ngoài,để viết được virus có chất lượng nó cần ở người viết rất nhiều kiến thức khác nhau,đặc biệt là am hiểu về lập trình hệ thống,các cơ chế của hệ thống,vì vậy với bài viết này đơn giản mình chỉ muốn học hỏi ,chia sẻ kiến thức hệ thống thôi,bài viết không mang ý nghĩa hướng dẫn phá hoại
-------------------------------------------------------------------------------------------------------------------------------------------------
Công cụ
Trích dẫn:
-------------------------------------------------------------------------------------------------------------------------------------------------
IDE vc++6.0 -> công cụ lập trình chính
máy ảo VMWARE -> soát lỗi và đưa vào ứng dụng
-------------------------------------------------------------------------------------------------------------------------------------------------
Các mẫu virus đã tham khảo:
Ckvo.exe,image.exe,hinhem.exe ….
Ý tưởng
Mục tiêu tấn công:
Trích dẫn:
------------------------------------------------------------------------------------------------------------------------------------------------
Mục tiêu tấn công của virus là các file tự chạy ( .EXE ) trên toàn bộ máy tính,mong muốn của tôi là biến toàn bộ các file exe trên máy trở thành virus với tên của nó được giữ nguyên
------------------------------------------------------------------------------------------------------------------------------------------------
Phương thức tấn công :
Trích dẫn:
------------------------------------------------------------------------------------------------------------------------------------------------
- Virus sau khi được kích hoạt sẽ tự động liệt kê các ổ đĩa có trong máy tính,sau đó sẽ sử xây dựng 1 hàm kiểm tra các ổ nào là ổ có chứa dung lượng thật ( là những ổ cứng và USB … không có CD)
- Xây dựng hàm kiểm tra có phải là file exe hay không,sau đó duyệt đệ quy các ổ có chứa dung lượng thật
- Xây dựng hàm tạo file autorun.inf,tạo file autorun.inf tại tất cả các ổ đĩa có dung lượng thật
------------------------------------------------------------------------------------------------------------------------------------------------
Thiết kế
Trích dẫn:
-----------------------------------------------------------------------------------------------------------------------------------------------
Ý tưởng của chương trình khá lớn vì vậy đơn giản nhất để phát triển nó là xây dựng trên các class với những nhiệm vụ khác nhau,chủ yếu với virus thì nên chia thành 3 nhiệm vụ: tấn công,phòng thù và lây lan
- Class lây lan sẽ chịu trách nhiệm lây lan của virus,trong con virus này ta chỉ kể đến việc lây lan qua USB ,cụ thể khi ta cắm usb vào máy tính,lập tức virus được copy vào usb,và toàn bộ dữ liệu của usb
-----------------------------------------------------------------------------------------------------------------------------------------------
• int nhanrausb(void); hàm nhận ra usb ,khi usb được cắm vào máy tính chương trình sẽ tự động nhận ra usb,copy file autorun.inf và chính file virus
• int copyvirus(char *tendia); hàm copy file file virus vào tất cả các ổ đĩa có dung lượng thật
• int lietkeodia(void); hàm liệt kê tất cả các ổ đĩa,bao gồm cả ổ đĩa có dung lượng thật và ổ đĩa có dung lượng ảo
• friend char* tenvirus(void); hàm lấy đường dẫn của virus
tancong với khả năng khảo sát toàn bộ các ổ cứng có dung lượng thật ,nếu phát hiện ra file exe nào lập tức xóa nó đi,thay vào đó file virus,với tên vẫn là tên của file exe ban đầu
* int duyetdequy(char *odia); như đã nói hàm để có thể tấn công toàn bộ các file exe trong ổ cứng
* bool kiemtraprocess(char *tenfile); hàm này có bug,mục đích của mình là kiểm tra xem file exe có được dùng không
* hàm kiểm tra có phải là file exe hay không để tấn công
• Hàm bạn lấy kiểm tra có phải là thư mục hay không
- Class phong thủ chịu trách nhiệm duy trì sự hiện diện của virus trên máy tính,vì thế nó sẽ phải làm những nhiệm vụ như khởi động cùng máy tính( mỗi khi máy được khởi động ) ,chặn Taskmanager để tránh việc endTask virus,trong các phiên bản sau mình sẽ phát triển thêm khả năng tự bảo vệ trước việc bị endTask từ các công cụ chuyên dụng như processXP…
• void khoidong(void); với vai trò khởi động cùng windows( mình chỉ cần thay đổi registry thôi chính là khóa này HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\ CurrentVersion\\Run",0,KEY_ALL_ACCESS
void taskmanager(void); với vai trò khóa taskmanager chính là khóa này HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\C urrentVersion\\Policies\\System
void vohieuhoarun(); như tên hàm,đây là nơi chịu trách nhiệm vô hiệu hóa run ở khóa này HKEY_LOCAL_MACHINE,"Software\\microsoft\\windowns\ \CurrentVersion\\policies\\Exploer
hàm kiểm tra ổ có dung lượng thật hay không và hàm kiểm tra xem virus trong máy tính đã có chưa,nếu chưa có thì chạy,nếu có rồi thì ngừng
còn đây là mẫu sau khi được biên dịch và nén lại bằng UPX -> giảm 1 nửa dung lượng
http://www.4shared.com/file/70389175/ae3af5f6/_2__dt.html
note: thử trên máy ảo nhé
nếu chưa có máy ảo thì down ở đây,mình thì mình thích dùng VMware hơn,nó có thể phục hồi rất nhanh ( giống như ghost )
http://www.microsoft.com/windows/downloads/virtualpc/default.mspx
Similar topics
» Lập trình virus trên C - viết virus khóa chuột
» Kỳ 2 Lập Trình virus giả mạo thư mục
» Lập trính Virus (st)
» Hướng dẫn lập trình Virus
» Hướng dẫn lập trình Virus(Phần IV)
» Kỳ 2 Lập Trình virus giả mạo thư mục
» Lập trính Virus (st)
» Hướng dẫn lập trình Virus
» Hướng dẫn lập trình Virus(Phần IV)
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
27/8/2013, 11:45 am by echcondihoc
» Quản Lí Tiến Trình Dùng Thư Viện PSAPI
11/10/2011, 9:42 pm by CNTT_DH
» xin tai lieu tieng viet
31/8/2011, 6:59 am by bantoisg
» Theo dõi tiến trình
27/8/2011, 5:51 pm by haigaopro01
» Giải pháp Bảo mật của Cisco
17/6/2011, 8:50 am by admin
» Nghiên cứu và đưa ra giải pháp phòng chống tấn công DoS, DDoS (Phần 1)
16/6/2011, 2:32 pm by admin
» Learn to hack !
16/6/2011, 8:49 am by admin
» Giải pháp hệ thống dành cho doanh nghiệp với thiết bị mạng Fortinet (Phần 1)
15/6/2011, 11:12 am by admin
» Ô Long Viên (Tập II)
27/9/2010, 4:56 pm by root
» những ebook về hack tiếng việt cho người mới tìm hiểu.
27/9/2010, 4:54 pm by root