映像劫持,注册表Image File Execution Options作用及使用办法
大家对各种流氓软件、流氓行为应该不陌生,其中有一种通过注册表项【ImageFileExecutionOptions】进行劫持的方法。或许一些朋友对ImageFileExecutionOptions不太了解,下面我将简单介绍映像劫持、注册表ImageFileExecutionOptions的作用及使用方法。
映像劫持简介
映像劫持(ImageFileExecutionOptions,IFEO)技术存在已久。主要是通过修改“Debugger“项值,替换执行程序,加以利用。最近在研究IFEO相关项值时,发现了一个特殊的项值GlobalFlag,在进一步测试中,发现了一种基于IFEO的新后门利用方式。
映像劫持实际上是Windows内设的调试程序功能,但现在常被病毒恶意利用。当用户双击程序后,操作系统会向外壳程序发布指令,包含执行程序的路径和文件名,然后由外壳程序执行该程序。在这个过程中,Windows会查询所有的映像劫持子键,如果存在与程序名称完全相同的子键,就会用其指定的程序路径代替原始程序,实现“劫持”。
映像劫持新玩法
除了修改IFEO中的“Debugger”键值替换原有程序执行外,还有新的利用方法:实现程序A静默退出后执行程序B。在ImageFileExecutionOptions下可设置多个值项,其中GlobalFlag是关键点。通过对GlobalFlag的配置,可以实现不同的效果,如监视进程静默退出等。
GFlages.exe进行测试
根据MSDN博客的介绍,安装GFlages.exe可以进行测试。在SilentProcessExit选项卡中可以配置对进程静默退出的监视操作,相关配置保存在注册表中。通过设置相应的值,可以实现程序退出后启动监视器进程等功能。
原理分析
根据微软官方文档描述,SilentProcessExit选项卡中的配置保存在注册表中,主要修改了ImageFileExecutionOptions和SilentProcessExit两个表项。通过命令行对注册表进行设置,可以实现对进程静默退出的监视和处理。
检测及查杀
查杀后门威胁时,需要检查ImageFileExecutionOptions和SilentProcessExit项值是否存在关联。分析系统日志,如日志ID为3000和3001,可以发现潜在后门威胁。删除IFEO项或设置管理员不可修改可以有效防范此类威胁。
本文分析了一种新型后门技术,即程序关闭时执行其他二进制文件的技术。该技巧需要管理员权限,普通用户无法执行。结合ADS技术,可以更加隐蔽地实现此类后门。感兴趣的读者可以自行测试。希望本文内容对大家有所帮助。