科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道系统安全之Windows启动安全隐患详解

系统安全之Windows启动安全隐患详解

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Windows的自启动有许多方式。除了一些常见的启动方式之外,还有一些非常隐蔽的可用来启动文件的方式。Windows的自启动是Windows系统的一部分,对于普通用户来说,了解这些信息也是非常必要的。

作者:51CTO.COM 2007年10月12日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共6页)

  上面的例子中,“xxx1,xxxx”是一个动态链接库(DLL)或.OCX文件名(如My.ocx或My.dll);“0001,000x”是部分名字。可以是数字和文字;“entry1,entryX”是指向一个要运行的程序文件的注册表串值。

  下表给出键值的说明,Flags是一个定位在RunOnceEx键用来激活/禁止的DWORD值,具体如下:

  2.特殊启动

  在注册表中除了上述的普通启动方式以外,还可以利用一些特殊的方式达到启动的目的:

  [HKEY_CLASSES_ROOT\exefile\shell\open\command] @="%1" %*

  [HKEY_CLASSES_ROOT\comfile\shell\open\command] @="%1" %*

  [HKEY_CLASSES_ROOT\batfile\shell\open\command] @="%1" %*

  [HKEY_CLASSES_ROOT\htafile\Shell\Open\Command] @="%1" %*

  [HKEY_CLASSES_ROOT\piffile\shell\open\command] @="%1" %*

  [HKEY_LOCAL_MACHINE\Software\CLASSES\batfile\shell\open\command] @="%1" %*

  [HKEY_LOCAL_MACHINE\Software\CLASSES\comfile\shell\open\command] @="%1" %*

  [HKEY_LOCAL_MACHINE\Software\CLASSES\exefile\shell\open\command] @="%1" %*

  [HKEY_LOCAL_MACHINE\Software\CLASSES\htafile\shell\open\command] @= "%1" %*

  [HKEY_LOCAL_MACHINE\Software\CLASSES\piffile\shell\open\command] @="%1" %*

  其实从注册表的路径上也许就隐约可以看出,这些都是一些经常被执行的可执行文件的键值。往往有些木马是可以更改这些键值从而达到加载的目的:

  如果我们把“"%1" %*”修改为“file.exe"%1" %*”,则文件file.exe就会在每次执行某一个类型的文件(需要看修改的是哪一个文件类型)的时候被执行!

  当然,可以被更改的不一定只是可执行文件,比如冰河就利用了TXT文件的键值:

  [HKEY_CLASSES_ROOT\txtfile\shell\open\command]实现木马的一种启动方式。

  四、其他启动方式

  1.C:\Explorer.exe启动方式

  这是一种特殊的启动方式,很少有人知道。

  在Windows 9x下,由于System.ini只指定了Windows的外壳文件Explorer.exe的名称,而并没有指定绝对路径,所以Windows 9x会搜索Explorer.exe文件。搜索顺序如下:

  首先搜索当前目录;如果没有搜索到Explorer.exe则系统会获取[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment\Path]的信息获得相对路径;如果还是没有文件,系统则会获取[HKEY_CURRENT_USER\Environment\Path]的信息并获得相对路径。

  其中,[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path]和[HKEY_CURRENT_USER\Environment\Path]所保存的相对路径的键值为:“%SystemRoot%\System32;%SystemRoot%”和空。

  所以,由于当系统启动时,“当前目录”肯定是“%SystemDrive%\”(系统驱动器),这样系统搜索Explorer.exe的顺序应该是:

  %SystemDrive%\(例如C:\)

  %SystemRoot%\System32(例如C:\Winnt\System32)

  %SystemRoot%(例如C:\Winnt)

  此时,如果把一个名为Explorer.exe的文件放到系统根目录下,这样在每次启动时,系统就会自动先启动根目录下的Explorer.exe而不启动Windows目录下的Explorer.exe了。

 

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章