hello world

注册应用程序劫持

注册应用程序是Windows的常用程序,第三方应用程序安装后,很多也会把自己的主程序写到注册应用程序的位置。正如在网络安全方面,我们可能不需要知道IOS的各种服务是如何运行和配置操作的,但是我们必须知道他们开启对网络有什么潜在的危险,最重要的是,我们必须清楚如何关闭这些不需要的服务。同理我们必须要清楚注册应用程序到底有什么用,放在什么地方以及潜在的隐患。

注册应用程序在注册表的位置是:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths

我们打开这个注册表位置,可以看到下面有很多的以可执行文件名命名的注册表项,这个可执行文件名就是注册应用程序对象,比如write.exe,在点击这个注册表项的时候,我们能看到这个注册表的默认键值就是指向write.exe的全路径,下面还有一个path的键,这个path不多加解释,涉及到编程方面的只是,有兴趣可以参考API函数shellexecute。这个默认的键值搭配上注册表项的应用程序全名,构成了注册应用程序。

那么注册应用程序有什么用呢?最直接的体现方法在于点击开始,运行对话框里面输入的任何命令,首先就会到这里来找找是否有对应的注册应用程序,并获取他的执行路径和工作目录path,如果找不到,再接着找环境变量的路径。至此,我们可以清楚的知道,如果我们创建一个cmd.exe,并且把他的默认键值设置指定到我们需要运行的程序上,那么在通过运行对话框运行该程序,就会被劫持。目前有些大牌软件厂商都在开始劫持系统应用程序,比如:搜狗浏览器在这里劫持了iexpore.exe,默认键值指向搜狗浏览器的全路径,那么通过TEM策略统计上来的IE版本就可能是1.2.3.4之类的小版本,完全偏离常理,所以我们就会意识到这个程序是不是被劫持了。

附:TEM的fixlet语句中的regapp也是获取这里的信息。

posted @ 2015-09-08 13:20  浩天四哥  阅读(703)  评论(0)    收藏  举报