当前位置:首页 > Win7教程

映像劫持,注册表Image File Execution Options作用及使用办法

更新日期:2024-06-02 14:10来源:互联网

映像劫持技术及其应用

映像劫持,注册表Image File Execution Options作用及使用办法

大家对于流氓软件和流氓行为应该不会感到陌生。其中,有一种通过注册表项【ImageFileExecutionOptions】进行劫持的方法可能让一些朋友感到陌生。下面我将简单介绍映像劫持、注册表ImageFileExecutionOptions的作用和使用方法。

映像劫持,注册表Image File Execution Options作用及使用办法

映像劫持概述

映像劫持,注册表Image File Execution Options作用及使用办法

映像劫持(ImageFileExecutionOptions,IFEO)技术一直存在已久。通常是通过修改“Debugger”项值,替换执行程序,进行利用。最近有人在研究IFEO相关项值时,发现了一个特殊的项值叫做GlobalFlag,在进一步测试中,发现了一种基于IFEO的新后门利用方式。本文将对此技术进行分析总结。

映像劫持,注册表Image File Execution Options作用及使用办法

映像劫持简介

映像劫持,注册表Image File Execution Options作用及使用办法

简单来说,映像劫持就是打开程序A,却运行了程序B。映像劫持实际上是Windows内置的用于调试程序的功能,但现在经常被恶意软件利用。当用户双击程序时,操作系统会给外壳程序(如“explorer.exe”)发布指令,包括执行程序的路径和文件名,然后由外壳程序来执行该程序。在这个过程中,Windows会查询注册表路径下的所有映像劫持子键,如果存在与程序名称完全相同的子键,则会使用该子键中指定的程序路径来代替原始程序,从而执行被“劫持”的虚假程序。

映像劫持,注册表Image File Execution Options作用及使用办法

映像劫持新玩法

映像劫持,注册表Image File Execution Options作用及使用办法

除了修改IFEO中的“Debugger”键值来替换原有程序执行外,还有一种新的利用方法:当程序A静默退出时,会执行程序B。根据收集整理的资料,发现ImageFileExecutionOptions下可以设置多个值项。其中GlobalFlag是本次测试的关键点。通过对GlobalFlag的设置,可以实现程序A静默退出后执行程序B的效果。

GFlages.exe进行测试

根据MSDN博客的说法,我尝试安装GFlages.exe进行测试。经过一些小坑,我找到了GFlages.exe并进行了测试。在SilentProcessExit选项卡中发现了一些有趣的内容。根据微软官方介绍,从Windows7开始,可以在此选项卡中配置对进程静默退出的监视操作。我填入配置后进行测试,使用ProcessExplorer检测进程变化,发现计算器被系统调起。

原理分析

根据微软官方文档描述,SilentProcessExit选项卡中的配置都保存在注册表中。经过分析,主要修改了两个表项。通过在命令行中对注册表进行设置,需要管理员权限。简单解释ReportingMode和MonitorProcess这两个项值的作用。通过设置MonitorProcess的值表示监视器进程,而ReportingMode可以设置为三个值,具体用途在文章中有详细解释。

检测及查杀排查

对于HKLMSOFTWAREMicrosoftWindowsNTCurrentVersionImageFileExecutionOptions和HKLMSOFTWAREMicrosoftWindowsNTCurrentVersionSilentProcessExit项值是否存在关联,可以通过分析系统日志中3000和3001的日志ID来检测。直接删除IFEO项或设置管理员不可修改可以有效防范此类威胁。

总结

本文分析总结了一种新型后门技术:当一个程序关闭时允许执行其他二进制文件,且Autorun暂时无法检测。该技巧需要管理员权限,普通用户无权执行。结合ADS技术(NTFS交换数据流)执行可更加隐蔽。感兴趣的同学可以自行测试。希望本文对大家理解映像劫持技术有所帮助。

僵嘟荚嘟

僵嘟荚嘟是一款非常好玩的塔防类游戏,每一次的挑战都将考验玩家的策略能力,解锁新关卡,为游戏增添更多乐趣和挑战,高难度的挑战任务让玩家在游戏中接受更多挑战,挑战自
立即下载

系统下载排行