本文讲的是绕过AppLocker系列之MSBuild的利用,Microsoft已经在.NET框架中发布了许多可以编译和执行代码的二进制文件。最初引入了MSBuild,以便开发人员在不安装Visual Studio的环境中构建产品。具体来说,这个二进制文件可以编译XML C#项目文件,因为它有一个名为Tasks的方法,可以执行一个写入托管代码的任务。但是,由于此方法可以操作代码而且MSBuild是受信任的Microsoft二进制文件并且可以执行代码,因此,攻击者可能会滥用它,用来绕过AppLocker和其他应用程序白名单解决方案(如Device Guard)。

Casey Smith最初发现了这种绕过方法,他已经发布了几个存储库,可以作为概念验证来执行代码并绕过AppLocker限制。

ShellCode

可以使用Metasploit MSFVenom来生成C#shellcode,它将在目标系统上执行,以获得Meterpreter会话。

生成C#Shellcode

上面的shellcode可以包含在XML文件中,该文件包含了MSBuild编译和运行的代码。该文件需要保存为.csproj并通过MSBuild执行,以返回Meterpreter会话:

通过MSBuild执行ShellCode

通过MSBuild获得Meterpreter会话

PowerShell

使用和上述相同的方法,也可以在cmd被禁用的情况下,参照Casey Smith和Cneelis的方法来执行PowerShell 。

Pshell :

通过MSBuild 执行 PowerShell

MSBuildShell – Cn33liz和Casey Smith

MSBuild – MSBuildShell

MSBuildShell

作为这个绕过方式的扩展,Nick Tyler发布了一个修改版本的PSAttack工具,该工具是便携式的PowerShell渗透测试框架,可用于对受限制的系统执行进一步的攻击。

MSBuild – 执行PSAttack

MSBuild – PSAttack

Mimikatz

除了PowerShell之外,还可以执行Mimikatz,直接从内存获取明文密码。

MSBuild – 执行Mimikatz

MSBuild – Mimikatz

通过执行以下命令,Mimikatz将检索任何登录凭据:

mimikatz # sekurlsa::logonpasswords

MSBuild – 通过Mimikatz导出证书

原文发布时间为:2017年7月10日
本文作者:丝绸之路
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
原文链接

绕过AppLocker系列之MSBuild的利用相关推荐

  1. 如何利用msxsl绕过AppLocker?

    本文讲的是如何利用msxsl绕过AppLocker?, 0x00 前言 Casey Smith@subTee在twitter分享的一个技巧,使用包含微软签名的msxsl.exe能够执行JScript代 ...

  2. keras系列︱迁移学习:利用InceptionV3进行fine-tuning及预测、完美案例(五)

    之前在博客<keras系列︱图像多分类训练与利用bottleneck features进行微调(三)>一直在倒腾VGG16的fine-tuning,然后因为其中的Flatten层一直没有真 ...

  3. ROS系统MoveIt玩转双臂机器人系列(三)--利用controller控制实际机器人

    ROS系统MoveIt玩转双臂机器人系列(三)--利用controller控制实际机器人 注:本篇博文全部源码下载地址为:Git Repo. 1. 下载到本地后解压到当前文件夹然后运行:catkin_ ...

  4. 统计系列(四)利用Python进行假设检验

    统计系列(四)利用Python进行假设检验 z检验 主要应用场景:在大样本量的总体比例检验 核心:两样本的总体比例差异 单样本比例检验 # 检验样本合格率与0.38是否有差异 import numpy ...

  5. 统计系列(三)利用Python进行参数估计

    统计系列(三)利用Python进行参数估计 点估计 样本均值估计为总体均值,样本比例估计为总体比例. import numpy as npx = [1, 1, 0, 1, 0, 0, 1, 0, 1, ...

  6. 风险管理系列课程二:利用图技术优化反洗钱解决方案

    风险管理系列课程 随着相互关联的全球金融市场在规模和复杂性上快速增加,风险评估和监控所面临的挑战变得日益艰巨.一些复杂的金融工具数量激增,如信用违约互换和抵押担保证券,而且一旦出错,就会付出数以万亿的 ...

  7. 【Linux_Fedora_应用系列】_3_如何利用Smplayer播放WMV格式的文件

    在上一篇我们成功安装了视频播放器,并且成功安装里解码器[Linux_Fedora_应用系列]_2_如何安装视频播放器和视频文件解码 安装完的Smplayer的GUI的界面程序,可以播放FLV.AVI. ...

  8. VARCHART XGantt系列教程:如何利用颜色来丰富甘特图智能

    VARCHART XGantt是一款功能强大的甘特图控件.其模块化的设计让您可以创建满足您和您的客户所需求的应用程序(我们领先的甘特图控件VARCHART XGantt可用于DotNET,Active ...

  9. python微信爬取教程_PYTHON爬虫之旅系列教程之【利用Python开发微信公众平台一】...

    感谢大家的等待,好啦,都准备好瓜子.板凳,老司机要发车啦-- 本系列课程讲述"PYTHON爬虫之旅",具体大纲可参考:[PYTHON爬虫之旅]概要目录. 本节课讲述如何利用Pyth ...

最新文章

  1. php 判断是否有相同的ID,如果有就修改数据库字段,没有就插入数据库字段
  2. react入门代码_如何在React中构建温度控制应用程序-包括提示和入门代码
  3. java try catch_异常处理,JAVA中异常处理的介绍
  4. 大改ShuffleNetV2网络,注意力机制,csp,卷积裁剪
  5. matlab双重for训话,Question 2:
  6. 前端不为人知的一面--前端冷知识集锦
  7. C语言入门题-计算到任意日期的总天数
  8. scp传输文件,自动填充密码
  9. centos安装python3.7.0过程记录
  10. primefaces教程_Primefaces AjaxBehavior和AjaxExceptionHandler组件示例教程
  11. HDU 1016 Prime Ring Problem
  12. Carhart四因子模型实用攻略
  13. DSP入门必看(非常好的DSP扫盲文章)
  14. 3. (5.18~5.25)2022年自动化保研信息+分析汇总(夏令营)
  15. OC Extension Color(颜色宏定义)
  16. tp5 JWT生成token验证接口安全、防止高频请求
  17. Java毕业设计 JSP+MySQL幼儿园信息管理系统
  18. 虚幻四蓝图实战(下车减速人物加速蓝图接口通信)
  19. 每年看完谷歌I/O大会,我都想换个安卓手机!
  20. Tangent Element调色台的设计与功能

热门文章

  1. 【ES6】Set Map数据结构、Iterator遍历器
  2. 7-48 字符串输入练习 (I) (15 分)
  3. C#实现利用单选框实现更改文本的richTextBox字体、大小、加粗
  4. java获取字典所有的key_JAVA脱水学习-java集合介绍,常用集合类
  5. c语言递归算法实验报告,递归算法实验报告.docx
  6. python读取多个文件夹_如何从python中的文件夹中读取多个NetCDF文件
  7. [leetcode]207. Course Schedule课程表
  8. ListView添加headview
  9. jquery输入框按下回车提交表单
  10. 软考一般知识之数据库