您当前的位置:首页 > 电脑百科 > 安全防护 > 病毒

基于辅助功能的镜像劫持攻击原理

时间:2019-09-18 10:36:42  来源:  作者:

在杀毒软件日益完备的互联网中,那些大部分以加载系统启动项为主要攻击手段的的普通病毒和木马越来越难以攻破用户的防御屏障,但与此同时,有一些病毒却“剑走偏锋“,不仅绕过了杀毒软件的检测,还在隐藏自己的同时攻破了系统。这些病毒是如何抓住用户心理,一步步突破了用户系统。

接下来,通过本篇文章,美创第59号安全实验室将为大家剖析基于辅助功能的镜像劫持攻击原理,向大家展现还原这种攻击所带来的巨大危害以及防御手段。

01

辅助功能简介

所谓辅助功能就是在windows系统中,我们可以使用多种组合键打开或关闭特定的功能,例如常用的win + ctrl + o打开屏幕键盘,win + u打开设置中心,连按5次shift打开粘滞键等等。

基于辅助功能的镜像劫持攻击原理

 

而且微软为了提高用户体验,非常‘贴心’的允许用户在登陆系统前也可以使用这些功能,根据这个特性,某些攻击者很可能通过远程桌面协议,在未授权的情况下运行这些功能,虽然这些功能是‘友好的’,没有危害性,但我们知道,这些功能之所以可以运行其实是在命令行里运行的系统指令罢了,例如

C:WINDOWSSystem32Utilman.exe 打开设置中心

C:WINDOWSSystem32sethc.exe 打开粘滞键

C:WINDOWSSyetem32osk.exe 打开屏幕键盘

问题在于,如果我们在未登陆系统的情况下使用组合键运行的系统命令遭到篡改,本来应该打开‘十分安全’的辅助程序却被另一恶意程序代替执行,最终导致在用户不知情的情况下,获得系统权限,留下隐蔽后门。

可如何才能使用户启动辅助功能的系统命令变成运行自己恶意软件的系统命令呢,这就要说到另一项技术:镜像劫持。

02

镜像劫持简介

“镜像劫持”,又叫“映像劫持”,也被称为“IFEO”(Image File Execution Options),在Windows NT架构的系统里,IFEO的本意是为一些在默认系统环境中运行时可能引发错误的程序执行体提供特殊的环境设定。当一个可执行程序位于IFEO的控制中时,它的内存分配则根据该程序的参数来设定,而Windows NT架构的系统能通过这个注册表项使用与可执行程序文件名匹配的项目作为程序载入时的控制依据,最终得以设定一个程序的堆管理机制和一些辅助机制等。大概微软考虑到加入路径控制会造成判断麻烦与操作不灵活的后果,也容易导致注册表冗余,于是IFEO使用忽略路径的方式来匹配它所要控制的程序文件名。

简单来说,当我想运行A.exe,结果运行的却是B.exe,也就是说在这种情况下A程序被B程序给劫持了,而映像劫持病毒就是通过修改某些注册表常用项的键值,达到在用户无意识的情况下想运行常用程序却让木马等恶意程序在后台运行的目的。

03

镜像劫持原理及实现

原理:

为了实现镜像劫持,需要先找到镜像劫持在注册表中的路径,“HKEY_LOCAL_macHINE SOFTWARE Microsoft WindowsNT CurrentVersion Image File ExecutionOptions”。

然而WINDOWS NT系统在试图执行一个从命令行调用的可执行文件运行请求时,会先检查运行程序是不是可执行文件,如果是的话,再检查格式,然后就会检查是否存在。由此我们发现,造成镜像劫持的罪魁祸首就是参数“Debugger”,他是IFEO里第一个被处理的参数,若果该参数不为空,系统则会把Debugger参数里指定的程序文件名作为用户试图启动的程序执行请求来处理,而仅仅把用户试图启动的程序作为Debugger参数里指定的程序文件名的参数发送过去。参数“Debugger”本来是为了让程序员能够通过双击程序文件直接进入调试器里调试自己的程序。现在却成了病毒的攻击手段。

让我们进行更深的思考,当更改的表项是杀毒软件所在的表项,会造成什么后果。毫无疑问,杀毒软件完全没办法工作,不仅绕过了杀毒软件还隐秘的执行了自己的恶意程序,一般用户根本想不到杀毒软件的注册表项会被篡改,这就进一步增加了攻击后可利用的时间。危害性不言而喻。

复现:

修改注册表的恶意代码:

#include <IOStream>

#include <Windows.h>

using namespace std;

int test(){

Dword dwDisposition;

HKEY hKey;

const char path[] = "C:WINDOWSSystem32calc.exe";

RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\chrome.exe", 0, NULL, 0, KEY_WRITE, NULL, &hKey, &dwDisposition);

RegSetValueExA(hKey, "Debugger", 0, REG_SZ, (BYTE*)path, (1 + ::lstrlenA(path)));

return 0;}

int main(){

test();

return 0;}

恶意程序运行后,注册表中chrome.exe新增键值对Debugger=“C:WINDOWSSystem32calc.exe”

基于辅助功能的镜像劫持攻击原理

 

注册表项遭到修改后,双击运行chrome运行,本该打开网页却打开了计算器程序,因为系统优先执行了”C:WINDOWSSystem32calc.exe”。造成了镜像劫持攻击。

基于辅助功能的镜像劫持攻击原理

 

04

基于辅助功能实现镜像劫持原理及实现

安全从业者不应轻视任何一种漏洞,因为当不同的漏洞结合到一起时很有可能产生1+1>2的效果。这一点在辅助功能和镜像劫持身上很好的体现了出来。

之前我们提过辅助功能是执行系统命令,并且允许用户在未登录的情况下运行,那么当我们使用镜像劫持攻击,更改了这些指令在注册表IFEO中的键值就可能造成攻击者不需要登陆系统即可运行某些恶意软件。

原理:

修改注册表,在“HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows NT CurrentVersion Image File Execution Option”中添加Utilman.exe项,在此项中添加debugger键,键值为启动cmd的命令C:WINDOWSSystem32cmd.exe。

当攻击者通过远程桌面协议连接到受害者电脑上时,只需使用组合键win+u,本应该打开的设置中心,最终却打开了cmd命令行,通过命令行可以添加用户、打开注册表、运行恶意软件、添加隐蔽后门等等一些列攻击手段,严重性不言而喻。

复现:

在注册表中新增Utilman.exe表项,添加键值对Debugger=“C:WINDOWSSystem32cmd.exe”

基于辅助功能的镜像劫持攻击原理

 

在登陆页面上运行win + u,在无需登录的情况下就打开了cmd命令框。

基于辅助功能的镜像劫持攻击原理

 

05

防御和清除手段

1、由于此类攻击的恶意代码要修改Image File Execution Options,首先要有权限才可读写,于是,我们可以通过限制用户对该注册表的读写权限,来阻止镜像劫持。打开注册表编辑器,定位到HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionImageFileExecutionOptions,选中该项,右键→权限→高级,取消administrator和system用户的写权限即可。

2、由于镜像劫持需要在注册表中添加辅助功能的表项,所以检查“HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Option”注册表路径下的程序名称,一些常用的辅助功能表项如:Utilman.exe,stch.exe,osk.exe等等。

3、基于零信任的理念,对于有可能有安全隐患的不必要表项可以选择删除,直接禁用辅助功能即可。打开注册表编辑器,定位到HKEY_LOCAL_MACHINE SOFTWARE Microsoft WindowsNT CurrentVersion ,把“ImageFileExecutionOptions”项删除。



Tags:镜像劫持   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
在杀毒软件日益完备的互联网中,那些大部分以加载系统启动项为主要攻击手段的的普通病毒和木马越来越难以攻破用户的防御屏障,但与此同时,有一些病毒却“剑走偏锋“,不仅绕过了杀...【详细内容】
2019-09-18  Tags: 镜像劫持  点击:(170)  评论:(0)  加入收藏
▌简易百科推荐
一、挖矿病毒的小科普挖矿病毒可以说是安全圈的“老熟人”了,各类安全事件一直不乏它们活跃的身影。亚信安全发布的《2020年度安全威胁回顾及预测》显示:2020年,挖矿病毒持续...【详细内容】
2021-09-07  walkingcloud    Tags:挖矿病毒   点击:(386)  评论:(0)  加入收藏
在系统运行时, 病毒通过病毒载体即系统的外存储器进入系统的内存储器, 常驻内存。该病毒在系统内存中监视系统的运行, 当它发现有攻击的目标存在并满足条件时,便从内存中将...【详细内容】
2021-08-30  Linf    Tags:计算机病毒   点击:(97)  评论:(0)  加入收藏
勒索病毒是一种计算机病毒,通过计算机漏洞、邮件投递、恶意木马程序、网页后门等方式进行传播。一旦感染,磁盘上几乎所有格式的文件都会被加密,造成企业和个人用户大量重要文...【详细内容】
2021-07-27    河南网警  Tags:勒索病毒   点击:(221)  评论:(0)  加入收藏
如果你是一名很早就开始上网冲浪的高手,那么对于2006年风靡一时的熊猫烧香一定不会陌生,与更早开始流行的灰鸽子不同,熊猫烧香是一款拥有自动传播、自动感染硬盘能力和强大的破...【详细内容】
2021-07-23    中关村在线  Tags:杀毒软件   点击:(170)  评论:(0)  加入收藏
大家好,不知道你们有没有意识到一个问题:现如今,计算机病毒似乎不像多年前那样令人头疼了。在十几年前,清理病毒简直就是计算机用户的家常便饭,尤其如打印店、网吧这种密集场所,你...【详细内容】
2021-06-01    中关村在线  Tags:中毒   点击:(143)  评论:(0)  加入收藏
最近在网上看到好多的用户被这个名叫Incaseformat的病毒侵袭电脑,导致电脑除了C盘以外的所有的磁盘都被格式化了。这让很多小伙伴遇到这个病毒的时候不知所措,不知道该如何去...【详细内容】
2021-01-22      Tags:Incaseformat   点击:(240)  评论:(0)  加入收藏
1 月 13 日晚,360、深信服等安全公司发布了紧急预警,称监测到蠕虫病毒 incaseformat 大范围爆发,已有多家公司发生磁盘数据被删事件。该蠕虫病毒主要通过 U 盘传播,感染用户机...【详细内容】
2021-01-15      Tags:蠕虫病毒   点击:(194)  评论:(0)  加入收藏
12月初,我们发现了一种新的用Golang编写的蠕虫。该蠕虫延续了 Golang在2020年流行的多平台恶意软件趋势。...【详细内容】
2021-01-05      Tags:蠕虫   点击:(175)  评论:(0)  加入收藏
勒索病毒事件愈来愈多 近期针对传统行业的勒索病毒攻击事件愈来愈多,甚至一天内会有多家同一行业的企业同时受到攻击,造成企业业务运营中断,个人和公司重要数据遭受破坏等严重...【详细内容】
2020-12-18      Tags:勒索病毒   点击:(186)  评论:(0)  加入收藏
随着信息化的发展,数据安全的重要性愈加突出。据最新的 Hiscox 全球网络安全统计,在勒索软件攻击事件当中,64%以上的用户是中小企业。因此,制定完善的灾备策略,是抵御网络威胁的...【详细内容】
2020-12-15      Tags:勒索者病毒   点击:(145)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条