打印

[转帖] 修复被恶意修改的注册表

修复被恶意修改的注册表

一、注册表被修改的原因
  浏览网页时,部分网页是有人利用Java技术制作的含有恶意代码的ActiveX网页文件,一旦打开此网页,这些脚本就被执行,注册表就被修改了,下面给出一个有害的Java的脚本源码:
  使受害者系统没有“关闭系统”项的源码如下:
  Shl.RegWrite ("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoClose", 01, "REG_BINARY");
  使受害者系统没有“注销系统”项的源码如下:
  Shl.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoLogOff", 01, "REG_BINARY");
二、修复大法
  我这里列举了十种常见的问题,如窜改IE的默认页、禁用查看源文件等问题,程序界面如图:
 
1.IE默认连接首页被修改
  现象:IE浏览器上方的标题栏被改成“欢迎访问……网站”的样式,这是最常见的窜改手段,受害者众多。
  原因:
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\Start Page
  HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page
  “Start Page”的键值被修改,来达到修改浏览者IE默认连接首页的目的,即便是出于给自己的主页做广告的目的,也显得太霸道了一些,这也是这类网页惹人厌恶的原因。
  解决办法:将Start Page的键值改为“about:blank”即可。
  编码:使用Borland C++ Builder来操作注册表应进行如下编码:这里介绍在Borland C++ Builder中如何更改键值(String)和删除键值,采用WriteString和DeleteValue的方法。
  ①添加头文件:
  #include "registry.hpp" //在程序开始处包含定义类模块的头文件
  ②TRegistry * MyReg =new TRegistry();//创建类的一个实例(对象)
  ③对“修复”按钮进行编码:
  void __fastcall TForm1::Button3Click(TObject *Sender)
  { TRegistry * MyReg =new TRegistry();//创建类的一个实例(对象)
  //第一种情况:IE默认连接首页被修改
  //IE浏览器上方的标题栏被改成“欢迎访问……网站”的样式
  if (cb1-Checked==true)//如果第一个复选框被选中,执行下面的代码
  { MyReg-RootKey=HKEY_LOCAL_MACHINE;MyReg-OpenKey("[url=file://\\SOFTWARE\\Microsoft\\Internet]\\SOFTWARE\\Microsoft\\Internet[/url] Explorer\\Main",true);
  MyReg-WriteString("Start Page","about:blank");//把此键值写为空,采用写字符串的方法
  MyReg-CloseKey();
  MyReg-RootKey=HKEY_CURRENT_
  USER;
  MyReg-OpenKey("[url=file://\\SOFTWARE\\Microsoft\\Internet]\\SOFTWARE\\Microsoft\\Internet[/url] Explorer\\Main",true);
  MyReg-WriteString("Start Page","about:blank");//把此键值写为空
  MyReg-CloseKey();
  //当IE的起始页变成了某些网址后,就算你通过Internet选项设置修改好了,重启以后又会变成他们的网址,是在你机器里加了一个自运行程序,它会在系统启动时将你的IE起始页设成他们的网站。
  MyReg-RootKey=HKEY_LOCAL_MACHINE;
  MyReg-OpenKey("[url=file://\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run]\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",true[/url]);
  MyReg-DeleteValue("registry.exe");//采用删除键值的方法
  MyReg-CloseKey(); } }
  delete MyReg;}
2.窜改IE的默认页
  现象:有些IE被改了起始页后,即使设置了“使用默认页”仍然无效,这是因为IE起始页的默认页也被窜改了。
  原因:以下注册表项被修改:
  HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Main\Default_Page_URL“Default_Page_URL”这个子键的键值即起始页的默认页。
  解决办法:将“Default_Page_UR”子键的键值中的那些窜改网站的网址设置为IE的默认值about:blank,编码方法同上。
3.修改IE浏览器缺省主页,并且锁定设置项,禁止用户更改回来
  现象:Internet选项对话框中“删除文件”和“设置”按钮不可用。
  原因:HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel下的Settings、Links、SecAddSites被修改为1了。
  解决办法:把上述三个键值改为0。
  此处介绍在Borland C++ Builder中如何更改键值(DWORD)
  //主要是修改了注册表中IE设置的下面这些键值(DWORD值为1时为不可选),将这些DWORD值改为0即可恢复功能
  if (cb3-Checked==true){ MyReg-RootKey=HKEY_CURRENT_USER;MyReg-OpenKey("[url=file://\\Software\\Policies\\Microsoft\\Internet]\\Software\\Policies\\Microsoft\\Internet[/url] Explorer\\Control Panel",true);
  MyReg-WriteInteger("Settings",0);
  MyReg-WriteInteger("Links",0);
  MyReg-WriteInteger("SecAddSites",0);
  MyReg-CloseKey(); }
4.IE的默认首页灰色按钮不可用
  现象:Internet选项对话框中“使用当前页”、“使用默认页”、“使用空白页”三个按钮不可用。
  原因:这是由于注册表HKEY_USER\.Software\Policies\Microsoft\Internet Explorer\Control Panel下的DWORD值“homepage”的键值被修改的缘故。原来的键值为“0”,被修改为“1”(即为灰色不可选状态)。
  解决办法:将“homepage”键值修改为0即可。
5.IE标题栏被修改
  现象:浏览者的IE标题栏被更改
  原因:在系统默认状态下,是由应用程序本身来提供标题栏的信息,但也允许用户自行在上述注册表项目中添加信息,而一些恶意的网站正是利用了这一点来得逞的:它们将串值Window Title下的键值改为其网站名或更多的广告信息,从而达到改变浏览者IE标题栏的目的。具体说来受到更改的注册表项目为:
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\Window Title
  HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Window Title
  解决办法:将“Window Title”键值修改为“Internet Explorer”或者删除即可。
6.限制注销、运行、关机功能
  现象:计算机的注销、运行、关机功能都被禁用。
  原因:下列注册表项目被更改:
  HKEY_CURRENT_USER\ Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下的NoLogOff、NoRun、NoClose的键值被修改为1了。
  解决办法:将上述的键值修改为0。
7.IE默认搜索引擎被修改
  现象:在IE浏览器的工具栏中有一个搜索引擎的工具按钮,可以实现网络搜索,被窜改后只要点击那个搜索工具按钮就会链接到那个窜改网站。
  原因:以下注册表被修改:
  HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Search\CustomizeSearch
  HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Search\SearchAssistant
  解决办法:将“CustomizeSearch”和“SearchAssistant”的键值改为某个搜索引擎的网址即可。
8.系统启动时弹出对话框
  现象:每次登录到Windows桌面之前都出现一个提示窗口,显示那些网页的广告信息。
  原因:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon\LegalNoticeCaption和LegalNoticeText被更改。
  解决办法:采用DeleteValue方法将LegalNoticeCaption和LegalNoticeText删除。
9.注册表被禁用
  现象:无法运行注册表程序。
  原因:以下注册表被修改:
  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System下的DisableRegistryTools被修改为1。
  解决办法:将DisableRegistryTools的键值修改为0。
10.IE中鼠标右键失效,“查看源文件”菜单被禁用
  现象:IE中点击鼠标右键没有反应,菜单“查看源文件”被禁用。
  原因:HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Restrictions下的NoViewSource和NoBrowserConte
佛祖曰:武功再高`也怕菜刀`穿的再叼`一砖撂倒`莫装Bi`装Bi照脸踢!

TOP

很 好 学习中

Processed in 0.052463 second(s), 5 queries, Gzip enabled