THM域学习ActiveDirectoryBasics
IntroductionMicrosoft 的Active Directory 是企业界的支柱。 它简化了企业环境中设备和用户的管理。 在这个房间中,我们将深入探讨 Active Directory 的基本组件。
房间目标
在这个房间中,我们将了解 Active Directory 并熟悉以下主题
什么是活动目录
什么是 Active Directory 域
哪些组件进入 Active Directory 域
森林和域信任
以及更多!
Windows Domains想象一下您正在管理一个只有五台计算机和五名员工的小型企业网络。 在如此小的网络中,您可能能够毫无问题地单独配置每台计算机。 您将手动登录每台计算机,为使用它们的人员创建用户,并为每个员工的帐户进行特定配置。 如果用户的计算机停止工作,您可能会去他们的地方并现场修复计算机。
虽然这听起来像是一种非常轻松的生活方式,但让我们假设您的业务突然增长,现在拥有 157 台计算机和分布在四个不同办公室的 320 名不同用户。 您是否仍然能够将每台计算机作为单独的实体进行管理,为网络上的每个用户手动配置策略并为每个人提供现场支 ...
THM免杀学习SignatureEvasion
Introduction当面对先进的防病毒引擎或 EDR(端点检测和响应)解决方案时,对手可能很难克服特定的检测。 即使采用了混淆原则中讨论的一些最常见的混淆或规避技术,恶意文件中的签名可能仍然存在。工具箱的装饰图像
为了对抗持久签名,攻击者可以单独观察每个签名并根据需要对其进行处理。
在这个房间里,我们将了解什么是签名以及如何找到它们,然后尝试按照不可知论的思维过程来打破它们。 为了更深入地研究和对抗启发式签名,我们还将讨论更高级的代码概念和“恶意软件最佳实践”。学习目标
了解签名的起源以及如何在恶意代码中观察/检测它们
实施记录的混淆方法来破坏签名
利用基于非混淆的技术来破坏非面向功能的签名。
这个房间是混淆原则的继承者; 如果您尚未完成,我们强烈建议您在此房间之前完成。
在开始本课程之前,请先熟悉基本的编程逻辑和语法。 建议了解 C 和 PowerShell,但不是必需的。
Signature Identification在开始破解签名之前,我们需要了解并确定我们要寻找的内容。 如防病毒简介中所述,防病毒引擎使用签名来跟踪和识别可能的可疑和/或恶意程序。 在此任务中,我们 ...
THM免杀学习ObfuscationPrinciples
Introduction混淆是检测规避方法和防止恶意软件分析的重要组成部分。 混淆最初是为了保护软件和知识产权不被窃取或复制。 虽然它仍然被广泛用于其最初的目的,但对手已将其用于恶意目的。
在这个房间里,我们将从多个角度观察混淆并分解混淆方法。眼睛的装饰图像学习目标
了解如何使用与工具无关的混淆来逃避现代检测工程
从知识产权保护理解混淆原理及其渊源
实施混淆方法来隐藏恶意功能
在开始本课程之前,请先熟悉基本的编程逻辑和语法。 建议了解 C 和 PowerShell,但不是必需的。
Origins of Obfuscation混淆广泛应用于许多软件相关领域,以保护IP(Iintellectual Pproperty)和应用程序可能包含的其他专有信息。
例如,流行的游戏:Minecraft 使用混淆器 ProGuard 来混淆和最小化其 Java 类。 Minecraft 还发布了信息有限的混淆地图,作为旧的未混淆类和新的混淆类之间的转换器,以支持模组社区。
这只是公开使用混淆的多种方式的一个例子。 为了记录和整理各种混淆方法,我们可以参考分层混淆:分层安全软件混淆技术的分类。 本 ...
THM免杀学习AVEvasionShellcode
PE Structure此任务重点介绍 Windows 二进制文件的 PE 数据结构的一些高级基本元素。
什么是PE?
Windows 可执行文件格式,又名 PE(可移植可执行文件),是一种保存文件所需信息的数据结构。 它是一种在磁盘上组织可执行文件代码的方法。 Windows操作系统组件,例如Windows和DOS加载程序,可以将其加载到内存中,并根据在PE中找到的解析文件信息来执行它。
一般来说,Windows 二进制文件(例如 EXE、DLL 和目标代码文件)的默认文件结构具有相同的 PE 结构,并且适用于 Windows 操作系统(x86 和 x64)CPU 架构。
PE 结构包含保存有关二进制文件的信息的各个部分,例如元数据和指向外部库的内存地址的链接。 这些部分之一是 PE 标头,其中包含元数据信息、指针以及内存中地址部分的链接。 另一部分是数据部分,其中包含容器,其中包含 Windows 加载程序运行程序所需的信息,例如可执行代码、资源、库链接、数据变量等。
PE结构中有不同类型的数据容器,每种数据容器保存不同的数据。
.text 存放程序的实际代码
.data保存初 ...
THM免杀学习IntroductiontoAntivirus
Introduction欢迎来到 AV 简介 防病毒 (AV) 软件是基于主机的基本安全解决方案之一,可用于检测和防止最终用户计算机内的恶意软件攻击。 反病毒软件由不同的模块、功能和检测技术组成,这些将在本房间中讨论。 作为红队成员或渗透测试人员,熟悉并了解 AV 软件及其检测技术的工作原理至关重要。 一旦获得了这些知识,就可以更轻松地研究 AV 规避技术。
学习目标
什么是防病毒软件?
防病毒检测方法
枚举目标机器中安装的AV软件
在模拟环境中进行测试
房间先决条件
基于主机的检测解决方案的一般知识; 查看 The Lay of the Land 房间了解更多信息。
哈希加密的一般经验; 查看 Hashing - Crypto 101 房间以获取更多信息。
Yara规则的基础知识; 查看 THM Yara 房间了解更多信息。
Antivirus Software什么是AV软件?
防病毒 (AV) 软件是额外的安全层,旨在检测并防止目标操作系统中恶意文件的执行和传播。
它是一个基于主机的应用程序,实时(在后台)运行以监视和检查当前和新下载的文件。 反病毒软件使用不同的技术检查并 ...
CVE-2019-11043PHP-FPM远程RCE复现
使用vulhub搭建环境docker-compose up -d
前置内容PHP-FPM(PHP FastCGI Process Manager)意:PHP FastCGI 进程管理器,用于管理PHP 进程池的软件,用于接受web服务器的请求。
PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置。
CGI(Common Gateway Interface)是一种通用网关接口,是 Web 服务器与外部程序(通常是脚本)之间进行交互的一种标准。它允许 Web 服务器动态生成网页内容,并将内容发送给客户端浏览器。CGI 脚本可以使用各种编程语言编写,如 Perl、Python、PHP、Ruby 等,它们被称为 CGI 脚本语言。这些脚本语言与 Web 服务器之间的交互遵循 CGI 协议的标准,以实现动态生成网页内容的功能
相较于传统的 CGI,FastCGI 提供了更高的性能和更好的扩展性
漏洞成因nginx.conf文件中的配置
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_split_p ...
IceTHM
端口扫描 nmap --min-rate=10000 -p- ice.thm Starting Nmap 7.93 ( https://nmap.org ) at 2024-04-02 11:57 UTCWarning: 10.10.109.255 giving up on port because retransmission cap hit (10).Nmap scan report for ice.thm (10.10.109.255)Host is up (0.017s latency).Not shown: 63585 closed tcp ports (reset), 1938 filtered tcp ports (no-response)PORT STATE SERVICE135/tcp open msrpc139/tcp open netbios-ssn445/tcp open microsoft-ds3389/tcp open ms-wbt-server5357/tcp open wsdapi80 ...
24-3杂谈
三月份还是比较开心的吧hh,完成了第一首处女作,虽然有些仓促。好像学习了还蛮多的东西,docker,k8s之类的云安全也接触了一些,总之比较杂吧。以及哲学上的学习还是收获蛮大的
LinuxFunctionHookingTHM
在这个房间里,我们将研究 *Shared Libraries*, 什么是 *Function Hooking* 以及我们如何利用 *LD_PRELOAD* 做同样的事情!我试图让这个房间尽可能简单,但一些基本的C理解肯定是有用的!
What are Shared Libraries?What Are Shared Libraries?
共享库是预编译的C代码,在生成可执行文件的最后步骤中链接。它们提供可重用的功能,如函数、例程、类、数据结构等,然后可以在编写自己的代码时使用它。
公共共享库,
libc : The standard C library.
glibc:GNU标准libc的实现。
libcurl:多协议文件传输库。
libcrypt:C库,用于加密,哈希,编码等。
关于共享库,需要知道的重要一点是,它们包含程序在运行时所需的各种函数的地址。
例如,当动态链接的可执行文件发出read()系统调用时,系统会从libc共享库中查找read()的地址。现在,libc对read()有了一个定义良好的定义,它指定了函数参数的数量和类型,并期望返回特定类型的数据。通常,系统知道在哪里 ...
打靶记录(一一二)之THMDebug
端口扫描nmap --min-rate=10000 -p- debug.thmStarting Nmap 7.93 ( https://nmap.org ) at 2024-03-27 11:24 UTCNmap scan report for debug.thm (10.10.2.3)Host is up (0.0060s latency).Not shown: 65533 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh80/tcp open httpMAC Address: 02:39:10:22:A6:7F (Unknown)Nmap done: 1 IP address (1 host up) scanned in 3.45 seconds
nmap -sC -sT -sV -O -p22,80 debug.thmStarting Nmap 7.93 ( https://nmap.org ) at 2024-03-27 11:25 UTCNmap scan report for debug.thm ( ...
打靶记录(一一一)之THMUmbrella
端口扫描nmap --min-rate=10000 -p- umb.thmStarting Nmap 7.93 ( https://nmap.org ) at 2024-03-26 12:01 UTCNmap scan report for umb.thm (10.10.227.222)Host is up (0.0100s latency).Not shown: 65531 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh3306/tcp open mysql5000/tcp open upnp8080/tcp open http-proxyMAC Address: 02:51:6F:5C:2F:11 (Unknown)Nmap done: 1 IP address (1 host up) scanned in 4.12 seconds
nmap -sC -sT -sV -O -p22,3306,5000,8080 umb.thmStarting Nmap 7.93 ( https://nmap. ...
打靶记录(一一零)之THMPeakHill
端口扫描nmap --min-rate=10000 -p- 10.10.2.217Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-21 15:34 UTCNmap scan report for ip-10-10-12-153.eu-west-1.compute.internal (10.10.2.217)Host is up (0.022s latency).Not shown: 65531 filtered tcp ports (no-response)PORT STATE SERVICE20/tcp closed ftp-data21/tcp open ftp22/tcp open ssh7321/tcp open swxMAC Address: 02:AE:DB:BF:76:C3 (Unknown)Nmap done: 1 IP address (1 host up) scanned in 13.79 seconds
nmap -sC -sT -sV -O -p21,22,7321 10. ...
