作家
登录

系统安全攻防战:DLL注入技术详解

作者: 来源: 2017-08-16 09:56:03 阅读 我要评论

手动注入可以大年夜头开端创建DLL,也可以经由过程Metasploitmsfvenom创建DLL,该文件可以生成包含特定有效内容的DLL文件。 应当留意的是,如不雅DLL被注入的过程是64位,那么竽暌功该应用64位有效负载。

体系安然攻防战:DLL注入技巧详解

DLL注入是一种许可进击者在另一个过程的地址空间的高低文中运行随便率性代码的技巧。进击者应用DLL注入的过程中如不雅被付与过多的运行特权,那么进击者就很有可能会在DLL文件中嵌入本身的恶意进击代码以获取更高的履行权限。

具体而言,该技巧遵守以下步调:

  1. 须要将DLL写入磁盘中;
  2. “CreateRemoteThread”调用“LoadLibrary”;
  3. 反射加载法度榜样功能将测验测验应用恰当的CPU存放器找到目标过程的过程情况块(PEB),并大年夜中测验测验查找内存中的kernel32dll和任何其他必须库的地址;
  4. 发明所需的API函数(如LoadLibraryA,GetProcAddress和VirtualAlloc)的内存地址;
  5. 上述功能将用于将DLL精确加载到内存中,并调用其将履行DLL的人口点DllMain。

本文将介绍应用PowerSploit,Metasploit和自定义对象以及应用这些对象履行DLL注入的过程。

手动注入

手动注入

下一步是设置metasploit侦听器,以便在将恶意DLL注入过程后接收连接。

DLL注入

有很多可以履行DLL注入的对象,但最靠得住的对象之一是出自SecurityXploded技巧团队的Remote DLL Injector,该对象在实现上应用的是CreateRemoteThread技巧,它可以将DLL注入到启用了ASLR的过程中,对象应用的过程中只须要供给过程ID和DLL路径两个参数:

RemoteDLLInjector在初始运行的时刻会展示为了完成dll注入所涉及到的所有步调, 如下图所示。

如不雅DLL被成功注入,它将返回一个具有和被注入过程雷同权限的meterpreter 会话。是以,具有高权限的过程可能会是进击者首选要注入的过程以履行提权操作。

Metasploit

PowerSploit

Metasploit框架具有履行DLL注入的特定模块。它只须要指定过程的PID和DLL的路径并和meterpreter 成功建立会话。

DLL注入

Metasploit

PowerSploit

也可以经由过程应用PowerSploit完成dll注入以晋升法度榜样履行权限。 msfvenom可以用于生成恶意DLL,然后经由过程义务治理器可以获得目标过程的PID。 如不雅目标过程作为SYSTEM运行,则注入的DLL将以雷同的权限运行。

Invoke-DLLInjection模块将履行DLL注入,如下所示:

DLL内的有效内容将被履行,并且将获得SYSTEM权限。

【编辑推荐】

  1. MySQL False注入及技能总结
  2. MySQL注入进击与防御
  3. RED_HAWK:基于PHP实现的信息收集与SQL注入马脚扫描对象
  4. 手机只需发条消息即可开端大年夜范围SQL注入进击
  5. 应用脚本注入马脚进击ReactJS应用法度榜样
【义务编辑:IT疯 TEL:(010)68476606】

  推荐阅读

  SDN:数字化转型的关键

SDN策略包管了收集的弹性和灵活性,使得收集可以或许在流量爆发的阶段处理高流量的需求,同时还兼顾到重要应用>>>详细阅读


本文标题:系统安全攻防战:DLL注入技术详解

地址:http://www.17bianji.com/lsqh/36732.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)