D盾dll劫持利用

原理

我个人的理解是:通过一些方法来劫持或者替换原程序运行时调用的dll,欺骗程序加载该恶意dll。

利用途径

dll劫持可用来做权限维持,钓鱼攻击等等。(当然师傅们肯定还有其他骚思路,这里不一一举例)

漏洞挖掘

1、运行D盾客户端(我这里是v.2.1.5.4),使用Process Explorer查看程序加载了哪些dll。

2、在这里还需要介绍下SafeDllSearchModeKnownDLLs,前者是windows针对dll劫持设置的安全机制,后者包含了系统中常见的dll,但如果在该注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs,创建KnownDLLs中同名dll并指定位置,同名dll将保护失效。(具体原理请自行百度)

3、检测方式

  • 从这些加载的dll查看有没有KnownDLLs中不存在的dll项,如果有可以使用K8大佬的K8dllhijack.dll直接改成该dll名,放入程序目录下运行程序即可(查看是否有不存在项,可以使用Process Monitor比较方便)

使用Process Explorer导入D盾的dll路径,然后用该工具加载即可,一顿操作后显示winsta.dll存在劫持。

使用Rattler中的payload.dll改名为winsta.dll,运行D盾弹出计算器,没毛病铁子们!

权限维持-ByPass火绒

按说到上面了我是已经写完了,但怕各位表哥的水遁术喷死,我就再挤点牙膏,使用轮子哥的Dll(IAT)来实现CS上线。(IAT这个工具我实在忘了是哪找到的,所以没链接呀,各位大表哥自己找找,我这个还报毒,害怕)

把CS生成的shellcode复制到工具中生成dll

把这两个文件拖入D盾运行文件夹,wwwcomw.dll改为winsta.dll,点击劫持文件,然后运行D盾,cs已经上线,火绒无反应。

由于D盾大多设置自启,可以通过该方式进行权限维持。

结语

该漏洞已经提交cnvd,文章只用来讨论技术,切勿用在非法途径!!!

点击收藏 | 1 关注 | 1
  • 动动手指,沙发就是你的了!
登录 后跟帖