1.DLL劫持漏洞概况
2.vb怎么劫持文件?劫劫持就是劫持一个软件其中一个dll 启动软件就会加载这个dll
3.dll劫持如何防止DLL劫持
4.浅谈dll劫持-白加黑免杀指南
5.DLL劫持漏洞释义
DLL劫持漏洞概况
在exploit-db的安全漏洞公告中,DLL劫持漏洞被发现存在于众多知名软件中,持源如AutoCAD、源码Daemontools、劫劫持Winamp等。持源这些软件的源码javascript特效源码网站用户,只要在打开、劫劫持音乐、持源视频、源码BT种子或网页文件时,劫劫持都可能面临病毒的持源侵袭。攻击者通过构造特殊dll文件,源码并将其嵌入JPG、劫劫持PPT、持源MP3等文件中,源码用户解压后误操作,就可能导致病毒爆发。
近期,DLL劫持漏洞成为了用户关注的焦点。金山毒霸专业安全软件已经提升了防护能力,用户升级到最新版本后,可以有效阻止DLL劫持漏洞的威胁。据金山毒霸云安全实验室统计,包括Windows操作系统和多款第三方应用在内的mapper注解源码诸多程序都存在这种漏洞,热门软件的广泛使用使得风险加剧。
针对这一问题,金山毒霸采取了积极措施。用户使用金山毒霸产品,不仅能够拦截恶意网址,防止黑客通过网页和漏洞入侵,还能够自动对操作系统和相关软件进行免疫,防止已知的DLL劫持漏洞。安全专家李铁军强调,用户应密切关注微软的安全公告,及时下载补丁,以确保在漏洞出现的第一时间,金山毒霸就能提供有效的防护。
总的来说,DLL劫持漏洞的威胁不容小觑,用户需要保持警惕并采取适当的防护措施,以确保计算机安全。通过升级金山毒霸并保持系统更新,用户可以有效地对抗这种威胁。"第一时间免疫,第一时间拦截",这是金山毒霸为用户提供的强大保障。
vb怎么劫持文件?wxwidgets源码解析就是劫持一个软件其中一个dll 启动软件就会加载这个dll
DLL劫持利用系统未知DLL的搜索路径方式,使得程序加载当前目录下的系统同名DLL。所以可以告诉系统DLL的位置,改变加载系统DLL的顺序不是当前目录,而是直接到系统目录下查找。
这个想法可以通过修改注册表实现。
在注册表键值:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs
是调用系统DLL的首要查找目录。例如里面有RE_SZ类型的ntdll=ntdll.dll项,则系统载入ntdll时会直接从系统目录加载。
由此,添加LPK=LPK.DLL即可防止LPK被劫持,同理可以阻止一些其他DLL被劫持,例如USP。
在Windows NT系统,XP默认只有少数关键DLL在此键值下,Win7下面此键值已经相当齐全,在Win7系统下发生DLL劫持的概率要比XP小很多。
一 回顾DLL挟持的发展
年月日微软发布安全公告,提到三方软件编程不安全存在一个DLL挟持的缺陷可以导致远程攻击
年月日流行的漏洞信息共享网站exploit-db马上就爆出多个DLL挟持漏洞涉及的软件有:Wireshark(免费嗅探器),Windows Live email(邮箱客户端), Microsoft MovieMaker(视频编辑处理),Firefox(网页浏览器), uTorrent (BT下载工具),PowerPoint (办公软件)等
年月日-日漏洞信息共享网站exploit-db继续爆出Winamp,Google Earth,Photoshop等软件存在DLL挟持漏洞,同时发布这个blog之前笔者的电脑中已经发掘存在的流行软件有,QQ影音,QQ音乐,供需关系源码美图秀秀,ppstream等
二新老DLL挟持的攻击原理分析和防御
1 动态链接库文件通常加载顺序如下
windows xp sp2系统以上会默认开启SafeDllSearchMode,安全dll搜索模式下DLL文件的搜索顺序如下所示
(1)可执行程序加载的目录(可理解为程序安装目录比如 C:\Program Files\uTorrent)(2)系统目录(即 %windir%\system )(3)位系统目录(即 %windir%\system)(4)Windows目录(即 %windir%)(5)运行某文件的所在目录,比如C:\Documents and Settings\Administrator\Desktop\test)(6)PATH环境变量中列出的目录
2 老DLL挟持触发的原理解析和防御(漏洞触发在DLL搜索流程的第一层,运行程序即加载病毒)
(1)老DLL挟持的特点:
为了增加触发的概率,通常会使用usp1.dll,ws2_.dll,lpk.dll等应用程序所必须的系统dll文件,然后利用DLL搜索第一顺位是程序安装目录,在程序安装目录释放一个同名DLL文件,抢先加载恶意病毒DLL文件,从而达到破坏的作用。这里可执行程序相当于恶意dll的加载器
(2)老DLL挟持病毒利用回顾重现
年罗姆病毒(ws2_.dll导致很多杀毒软件无法打开),年春节猫癣病毒(usp.dll导致很多用户重装系统都无法解决病毒问题)
通常使用老DLL挟持的病毒木马会枚举电脑里面的所有exe目录,然后将恶意的usp.dll释放到每个exe所在的目录。当用户执行一个应用程序的时候,将会把恶意的usp.dll文件优先加载从而感染系统
根据前面介绍的DLL加载顺序,运行程序的时候会优先到程序执行的目录下加载必须文件,下图显示了utorrent.exe在安装目录下的找到了usp.dll文件并把它加载到内存中。
(3)老DLL挟持的通用免疫方案
可以通过编辑HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs来添加需要面议的DLL文件,比如:新建一个ws2_ 指向ws2_.dll
3 新DLL挟持触发的原理解析和防御(漏洞触发在DLL搜索流程的第五层,运行即加载病毒)
(1)新DLL挟持的特点:
应用程序为了扩展或者兼容等目的需要加载相应的DLL文件,但是ngrok指标源码因为某些原因导致这个DLL文件默认不存在于当前系统,比如plugin_dll.dll文件默认情况下不存在utorrent的安装目录,dwmapi.dllxp环境下不存在(Vista以上系统存在),ie6环境下没有ieframe.dll(ie7以上版本存在)。正是因为程序需要的DLL文件在DLL搜索顺序的(1)-(4)中都不可能存在,此时就会尝试加载文件所在目录下的恶意dll文件,从而达到破坏的作用。这里运行的文件(比如mp3)相当于触发者,根据文件关联它会启动一个应用程序去播放mp3文件。而因为应用程序存在DLL挟持漏洞(比如QQ影音),此时QQ影音就会因为设计上的不足导致成为恶意DLL的加载器。相当于老DLL挟持,简直达到了运行/视频文件就会执行恶意文件的目的,当然前提是大灰客们能猜中你电脑里面的默认查看的软件是否存在DLL挟持漏洞了,目前已经发现的存在DLL挟持缺陷的主要有以下几类
① 特定系统环境下的文件
典型的有dwmapi.dll文件,xp环境下不存在,vista以上版本存在,也就是说需要触发这个漏洞的系统环境只能是XP系统
② 特定软件版本下的文件
典型的有:ieframe.dll,IE6下不 存在,ie7以上版本有,也就是说触发漏洞的电脑IE必须是IE6版本
③ 特定的库文件
典型的有:mfcchs.dll
④ 程序自己需要的dll文件,可能是为了功能扩展或者兼容
典型的有:plugin_dll.dll
⑤ 其它未知
(2)新DLL挟持利用重现
通常灰客们会先通过DLL挟持挖掘工具寻找存在DLL挟持漏洞的流行应用程序,然后构造相应的文件上传到网络上供用户下载(具体的传播方式请看下一章),如果用户的电脑存在漏洞那么运行相应文件的时候就会执行存在漏洞的程序,从而使得恶意dll被不知不觉加载
根据前面介绍的DLL加载顺序和新DLL挟持的特点,程序在前四个流程都没有找到需要的文件,只能勉为其难的在第五流程-当前文件目录下加载恶意dll文件,下图就显示了uTorrent加载plugin_dll.dll顺序(前四个流程都是 name not found)并且加载当前目录下恶意plugin_dll.dll文件(第五流程显示的是success )的过程
dll劫持如何防止DLL劫持
DLL劫持是一种利用系统未知DLL搜索路径的恶意行为,通过改变程序加载系统DLL的顺序,将恶意DLL插入到搜索路径中。防止DLL劫持的一个方法是修改注册表中的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs键值,例如,添加"LPK"="LPK.DLL"可以防止LPK被劫持。Windows NT系统中,XP的安全性较低,而Win7下的此设置更加完善,降低了DLL劫持的风险。
年,微软发布安全公告指出DLL劫持的漏洞可能导致远程攻击,涉及多个知名软件,如Wireshark、Windows Live email、Firefox等。老式DLL劫持利用应用程序默认加载目录的特性,通过替换同名系统DLL达到恶意目的,而新式DLL劫持则针对特定系统环境、软件版本或程序需要的特定库文件,通过运行特定文件触发。要防御,可以编辑注册表添加需要保护的DLL,但微软并未提供针对新式DLL劫持的有效免疫方案,建议升级软件至最新版本。
为了防止新式DLL劫持,软件开发者需避免直接调用LoadLibrary等函数,使用DLL重定向或Manifests文件确保正确加载,同时确保启用安全DLL搜索模式,避免在搜索列表中包含当前目录,可以通过SetDllDirectory设置空字符串来实现。
浅谈dll劫持-白加黑免杀指南
了解DLL劫持前的基本技能是关键。Windows系统加载DLL文件时遵循特定顺序,通常从六个位置查找。首先,dllmain.cpp和framework.h文件会优先检查,然后是a.c。要追踪DLL加载过程,可以使用Process Monitor进行监控,如查看"CreateFile"、"LoadImage"操作,确认Path中的.dll文件,如kk.exe在"C:\test\KKcapture"下的加载情况。
对于DLL劫持,可通过procexp或火绒剑等工具分析目标DLL,选择较小的文件进行修改。然后利用Stud_PE加载我们自定义的DLL,将其放置在kk录像机安装目录。如果遇到杀软防护,可能需要尝试加密以绕过检测。
在云音乐_reporter.exe遇到DLL缺失问题时,只需复制缺少的DLL到对应文件夹,程序即可正常运行。其代码结构涉及framework.h、libcurl.h等头文件,以及dllmain.cpp、libcurl.c等源文件。通过处理dll格式和jmp,成功实现了计算器弹出,后续在安全测试中,能绕过和火绒等杀毒软件。
在将exe、dll和合并运行时,钩子和DLL原理利用Win API中的HINSTANCE和HMODULE,如SetWindowsHookExW、KeyboardProc等函数,实现对程序的控制。核心代码主要集中在dllmain.cpp和inject.c,最后的成果是成功上线,并展示了绕过部分安全软件的实例。
最后,务必注意在操作中遵循相关法律法规,尊重软件开发者权益,合理使用技术手段,避免滥用。
DLL劫持漏洞释义
DLL劫持漏洞,这一安全问题起源于年8月日,当时微软在其安全公告中公开曝光。这种漏洞被称为"DllHijackingExploit",其本质是一种恶意利用技术。当用户打开含有恶意DLL文件的文档时,病毒或木马会借此机会注入自己的代码,从而实现对系统的控制。这种漏洞的严重性可见一斑,国外安全公司authentium在其官方博客中以耸人听闻的标题"Theworldisgoingtoend!"(世界末日)警示大众,强调了其潜在的灾难性影响。
该漏洞的原理在于,攻击者能够篡改系统对DLL文件的加载顺序,将自己的恶意DLL文件插入其中,当系统试图加载正常的DLL时,实际上加载的是攻击者的恶意代码。这使得攻击者能够绕过安全防护,执行恶意操作,对用户的电脑安全构成极大威胁。
由于DLL劫持漏洞的存在,用户在打开文档时必须格外谨慎,确保文档来源可靠,同时操作系统和防病毒软件也需要及时更新补丁,以防止此类漏洞被恶意利用。对于企业和组织,加强网络安全管理和员工教育,以减少此类漏洞可能带来的潜在风险至关重要。
2024-11-30 06:34
2024-11-30 06:21
2024-11-30 05:48
2024-11-30 05:22
2024-11-30 04:46
2024-11-30 04:41
2024-11-30 04:33
2024-11-30 04:29