超详细之dll劫持+打包钓鱼详细教程

admin 2023年6月15日10:28:48评论74 views字数 1784阅读5分56秒阅读模式

dll劫持

超详细之dll劫持+打包钓鱼详细教程

1.dll劫持产生条件

1.dll能否被劫持:
不再'HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs'注册表中
2.其dll是EXE程序首先加载的DLL,而不是依赖其他DLL加载的。
3.DLL确实被加载进内存中

2.判断dll是否可以劫持。

2.1手动方法

利用进程查看软件,查看dll是否存'KnownDlls'注册表中。进程查看工具:ProcessExplorer/ProcessMonitor/火绒剑

ProcessExplorer
下载地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/process-explorer

超详细之dll劫持+打包钓鱼详细教程

ProcessMonitor
下载地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/procmon


超详细之dll劫持+打包钓鱼详细教程

火绒剑

超详细之dll劫持+打包钓鱼详细教程

根据进程查看的dll和注册表进行对比

win7及以上:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs

超详细之dll劫持+打包钓鱼详细教程

notepad为例:6版本之前的SciLexer.dll存在dll劫持。注册表中没有SciLexer.dll。进程notepad调用到了SciLexer.dll。说明SciLexer.dll可能存在dll劫持。

超详细之dll劫持+打包钓鱼详细教程

2.2自动审计

见的几种工具


1.Ratter(虚拟机中出错不知道为啥)
https://github.com/sensepost/rattler/releases

超详细之dll劫持+打包钓鱼详细教程

2.DLL Hijack Auditor

超详细之dll劫持+打包钓鱼详细教程

3.dll_hijack_detect
https://github.com/adamkramer/dll_hijack_detect/releases
4.ChkDllHijack
https://github.com/anhkgg/anhkgg-tools

超详细之dll劫持+打包钓鱼详细教程

2.3测试

利用自动化验证dll劫持发现sxs.dll可能存在劫持

超详细之dll劫持+打包钓鱼详细教程

msf生成dll,弹出计算机。


msfvenom -p windows/exec CMD = calc.exe EXITFUNC=thread -f dll -o sxs.dll

1.可以替换可能存在dll劫持的文件。

2.可以使用dll注入工具,进行劫持文件

2.1dll注入工具

超详细之dll劫持+打包钓鱼详细教程

2.2使用InjectProc注入


InjectProc --dll注入工具
https://github.com/secrary/InjectProc/releases
InjectProc.exe dll_inj joker.dll notepad.exe

注入成功

超详细之dll劫持+打包钓鱼详细教程

3.dll注入+重新打包

采用方法:shellcode--dll--pe导入dll--nsis重新打包

3.1cs生成shellcode

利用攻击->生成后门->语言类后门->C语言超详细之dll劫持+打包钓鱼详细教程



3.2利用DLL注入攻击工具

利用DLL注入攻击工具把shellcode生成dll文件。
会在同目录下生成conf.infwwwcomw.dll两个文件

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程

3.3利用PE工具把DLL导入EXE

```
把上述生成的文件放到需要劫持的目录下。
采用PE查看器,把上述shellcode生成的dll中的函数导入到exePE表中。
把EXE放入到PE查看中-->选择函数-->随便选择一个右键Add New Import
DLL选择->选择函数->添加到列表->输入表列表中选中刚刚添加到内容,最后点击添加即可。
```

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程


3.4上线

超详细之dll劫持+打包钓鱼详细教程

4 nsis重新打包

上述完成后,本地劫持完成,这里使用nsis重新打包,进行钓鱼。

4.1准备工作

源安装包

源文件的ico图标提取。


超详细之dll劫持+打包钓鱼详细教程

4.2打包

选择可视化脚步编辑器

超详细之dll劫持+打包钓鱼详细教程

安装需求填写

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程

应用程序默认目录,本地安装一次最好,看一下本地默认安装的目录例如:C:Program Files (x86)VPN(本地)然后修改本地安装了,防止冲突,设置成了VPN1


超详细之dll劫持+打包钓鱼详细教程

选择需要打包的目录,把每个字目录选中。

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程

超详细之dll劫持+打包钓鱼详细教程

编译成功





超详细之dll劫持+打包钓鱼详细教程


打包成功
对比一下,下面为最新打包,上面为源文件,文件大小差距。除了没有数字签名

超详细之dll劫持+打包钓鱼详细教程

打包之类成功安装。



超详细之dll劫持+打包钓鱼详细教程

成功上线。


超详细之dll劫持+打包钓鱼详细教程

默认可过火绒,360动态被杀,需要在dll生成进行免杀。


原文始发于微信公众号(极梦C):超详细之dll劫持+打包钓鱼详细教程

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月15日10:28:48
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   超详细之dll劫持+打包钓鱼详细教程http://cn-sec.com/archives/817963.html

发表评论

匿名网友 填写信息