dll 木马的相关介绍

假设我们已经编好了dll中的相关代码,那么如何让它运行呢,从开始我已经提过,我们要找一个宿主,也就是一个exe进程来加载我们的dll,而加载dll又可以分为以下几种方式:

  
一:利用系统中的rundll32.exe加载

经常会有人在注册表的启动项中会发现类似键值
rundll32.exe c:/temp/XXX.dll dllmain
那么是什么意思呢?,其实rundll32.exe这个程序顾名思义,运行32位的dll程序,功能就是以命令行的方式调用动态链接程序库,其命令行下的使用方法为:
Rundll32.exe  dll
的名字 调用的函数名
如果我们的dll中编写了test()这个函数,那么调用方式就是:Rundll32.exe  C:/dlltest.dll  test
这样dll中的函数就得到运行了。



二:替换系统中的DLL文件
这可以说是上面的升级版了,它把实现了后门功能的代码做成一个和系统匹配的DLL文件,并把原来的DLL文件改名。遇到应用程序请求原来的DLL文件时, DLL后门就启一个转发的作用,把"参数"传递给原来的DLL文件;如果遇到特殊的请求时(比如客户端),DLL后门就开始,启动并运行了,但是实现却不太容易,所以没有流行开来。


三:就是我们要说的dll注入技术了
      
其意义是将DLL文件嵌入到正在运行的系统进程当中。在Windows系统中,每个进程都有自己的私有内存空间,但还是有种种方法来进入其进程的私有内存空间,来实现动态嵌入式。
      
有什么好处呢,首先是实现了隐藏,任务管理器中看不见我们的dll后门,其次windowslinux 不同,不能删除正在运行的程序,这就是为什么经常删东西时候会提示“xxx正在运行,无法删除。可能最重要的是可以穿透绝大多数防火墙了,设想防火墙肯定不会阻拦ie,那我们把dll插入ie进程,不就穿透防火墙了吗。
   
   
那么我们如何实现把dll注入到exe中呢?dll自己又没长腿,呵呵,我们需要一个dlllorder.exe,再哪弄?自己写呗,把代码写到dlllorder.exe中,只要运行dlllorder.exe,相应的dll文件就可以注入到任何程序中了。有了dlllorder就好办了,只要能让系统每次自动启动dlllorder,后门的生存期就大大增长了,至于如何自启动,有注册表,服务,BHO,activex,计划任务等等,太多了,就不介绍了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值