黑客网站入侵 编程 搭建 渗透 破解
3.61K subscribers
419 photos
13 links
Download Telegram
案例研究
让我们看看将这种方法应用于真实网站时会发生什么。在本节中,我将探讨一系列缓存密钥处理漏洞,这些漏洞来源于有漏洞赏金计划的网站,并分享一些可以与之结合的小工具。

无键查询检测
最常见的缓存键转换是从键中排除整个查询字符串。我确信有些人在我之前就已经认识到并利用了这种行为,但它肯定没有得到充分重视。与直觉相反,它也很难被发现,因为它将动态页面伪装成静态页面。您可以通过更改参数的值并观察响应中的某种差异来轻松识别大多数动态页面
WebLogic coherence UniversalExtractor 反序列化 (CVE-2020-14645) 漏洞分析

该漏洞是针对于CVE-2020-2883的补丁绕过,CVE-2020-2883补丁将MvelExtractor和ReflectionExtractor列入黑名单,因此需要另外寻找一个存在extract且方法内存在恶意操作的类,这里用到的类为com.tangosol.util.extractor.UniversalExtractor,存在于Coherence组件。

其本质上,都是通过ReflectionExtractor调用任意方法,从而实现调用Runtime对象的exec方法执行任意命令,但补丁现在已经将ReflectionExtractor列入黑名单,那么只能使用UniversalExtractor重新构造一条利用链,这里使用poc2的入口即CommonsCollections4链的入口进行构造。
是在PriorityQueue的构造函数中被赋值的,并且这里可以看到,queue对象数组也是在这里被初始化的。那么结合上述所分析的点,我们需要构造一个长度为2的queue对象数组,才能触发排序,进入siftDown()方法。同时还要选择一个comparator,这里选用ExtractorComparator。继续跟进ExtractorComparator.compare()方法
网络渗透测试的六个关键阶段:

-网络扫描
-后期利用框架
-旋转和横向运动
-Active Directory 评估
-欺骗和窃听
-凭证窃取

网络渗透是对组织内部基础设施和防御的安全入侵。网络渗透将从假定的漏洞开始,渗透获得对内部网络的初始访问权限。渗透可以花更多时间测试组织的内部防御和安全控制,而不是尝试获得初始访问权限。
各种 Linux 权限提升技术,例如内核和服务漏洞、理解 SUID、管理计划任务和导航密码发现。
这些技术和工具,从利用错误配置的 sudo 权限到利用易受攻击的服务,都是渗透测试人员工具包的重要组成部分。您已经学会了如何通过手动方法和自动化工具进行枚举。

一个以明文形式存储的用户名“root”和密码“john@123”。让我们看看是否可以使用找到的密码切换到 sickos 用户。有时密码会在多个服务中重复使用。

将 www-data 用户提升为 sickos 用户。与往常一样,让我们​​使用该sudo -l 命令检查我们是否有任何 sudo 权限。

以 root 用户身份运行所有命令,因此我们运行sudo su。现在有一个 root shell。
查找密码
Linux 特权升级,成为 root 用户的最简单方法之一就是找到密码。这可以提供获得系统访问权限的直接途径。攻击者可能会使用多种方法来查找系统上的密码。

Linux 用户可能会以纯文本形式存储他们的密码;如果这些文件没有得到妥善保护,会访问用户的帐户。

一旦找到密码,就可以使用它来登录到更高权限的帐户或使用它与 sudo 一起以提升的权限运行命令,从而提升权限。

使用VulnHub 的SickOS VM来看一下它是如何工作的 。一旦我们在机器上拥有 shell,就可以搜索密码。可以做的第一件事是查看并使用该 cat /etc/passwd命令查看系统上的其他用户。

另一个名为 sickos 的用户。下一步是搜索以纯文本形式存储的密码。我们可以使用以下命令搜索包含字符串“pass”的 PHP 文件。

find / -maxdepth 4 -name *.php -type f 2>/dev/null | xargs grep -C 3 -i pass
使用以下命令运行 pspy:

./pspy64

让 pspy 运行几分钟后,看到一个名为 ftpclient.py 的进程定期运行

查一下这个文件,看看是否可以以某种方式在其上附加一些代码来生成反向 root shell。

没有 ftpclient.py 文件的写入权限,但我们注意到该文件正在导入“ftplib”。也许我们可以将其写入该文件
SUID
SUID,即设置所有者用户 ID。SUID 允许用户以与文件所有者相同的权限运行可执行文件。

SUID 权限可以使用带有四个前缀的 chmod 命令来设置,并且可以在长列表 ( ls -l) 中用 s 代替用户执行 (x) 权限来标识.

获得反向 shell,开始枚举并查看是否有启用了 SUID 位的文件。手动或通过自动化工具执行此操作。

检查 SUID,终端类型中输入:find / -type f -perm -04000 -ls 2>/dev/null
Sudo 权限
Linux 系统中,sudo 代表“超级用户执行”。该命令允许普通用户以超级用户 (root) 的安全权限运行某些命令。sudo 的主要目的是将 root 权限限制在真正需要时。

可以利用 sudo 规则,该规则允许提升的权限运行某些命令,例如 cat、find 或 python,然后我们可以操纵这些命令来运行任意命令。

使用VulnHub 中的Raven VM进行 shell 转义来利用 sudo 权限 。
通过 SSH 获得 shell 后,可以进行一些枚举来查看拥有哪些权限。
用sudo -l 命令检查我们的 sudo 权限。
从上面的截图中可以看到,用 sudo 权限运行 Python,而无需提供密码。利用这一点来获取 root shell

GTFOBins 是一份精选的 Unix 二进制文件列表,我们可以使用它来绕过本地安全限制。我们可以查看此资源,以了解可以使用 Python 运行哪些命令来成为 root。
一些漏洞与信息相符,将使用的漏洞是 9545.c。必须将其从 Kali 传输到目标机器并将其编译为可执行文件。如果您想了解此漏洞的作用及其工作原理

Kali 机器上启动一个 Python 服务器,并通过 Kioptrix 机器上的 wget 下载漏洞。以下命令将在端口 8000 上启动一个 Python 服务器。确保在漏洞所在的同一文件夹中启动服务器。
此处不难理解,如果aoParam不为null且数组长度大于0就会返回null,因此我们调用的方法必须是无参的(因为aoParam必须为null)。接着如果方法名sName不以 () 结尾,则会直接返回方法名。否则会判断方法名是否以 VALUE_EXTRACTOR_BEAN_ACCESSOR_PREFIXES数组中的前缀开头,是的话就会截取掉并返回
Moodle DOM 存储型 XSS 到 RCE

到底 Moodle 是什么?

Moodle 是一个学习平台或课程管理系统 (CMS) - 一个免费的开源软件包,旨在帮助教育工作者根据合理的教学原则创建有效的在线课程。您可以在任何可用的计算机(包括网络主机)上下载和使用它,但它可以从一个教师站点扩展到一个拥有 200,000 名学生的大学。Moodle 拥有庞大而多样化的用户社区,全球注册的站点超过 100,000 个,使用每个国家/地区的 140 多种语言。- Moodle.org



由于当前的 COVID-19,许多大学开始使用 Moodle 来支持他们的电子学习,并向在家学习的学生提供教育内容。我们看到几所伊拉克大学开始使用该平台,这给了我们动力,开始寻找有趣的东西。由于其他黑客可能会利用缺乏监控的机会,在这段时间开始攻击学生和大学,因此,尽自己的一份力量来支持世界度过难关是我们的道德职责之一。看看平台统计数据。

现在我们在系统中有一个存储的XSS!我们可以诱骗管理员访问我们的个人资料并获取XSS!

然而,单调的警告框还不足以满足这次冒险的需要。我们想将其提升到一个新的高度。

从XSS到RCE:超越警告框
由于我们有一个存储的 DOM XSS,因此我们可以窃取 cookie,但Moodle中有一个使用HTTPonly cookie 的选项,因此我们无法获取管理员 cookie。此外,大学将路径 /admin 设置为仅将 IP 地址列入白名单。我们现在要做什么?

在浏览网页时,我发现这个攻击媒介需要管理员用户帐户来执行 PHP 命令并在Moodle实例上上传 shell,所以我们可以创建 CSRF 来执行此操作,对吗?



要上传Moodle插件,它必须符合规则,我们会花一点时间才能进入。

上传插件之前需要经过多个阶段,因此它不是一个简单的 CSRF 页面。我们需要创建一个文件上传 CSRF,并在上传 CSRF 之后执行 2 个步骤来执行我们的 shell。
执行 .iso 安装可让更好地控制设置,但事实上,大部分操作都是不必要的。我们建议节省时间和麻烦,只需使用 VirtualBox 机器映像即可。
无论选择哪种方式,请务必运行以下命令以使您的 Kali 实例保持最新。
键入 sudo su以切换到 root 帐户(系统将提示您输入密码)。然后键入:
apt update && apt upgrade -y
这将安装所有需要的更新并将的 Kali OS 更新到最新版本。