SNMP RCE
SNMP RCE
SNMP може бути використано зловмисником, якщо адміністратор не звертає уваги на його стандартну конфігурацію на пристрої або сервері. Зловмисник може виконувати команди на сервері, зловживаючи SNMP-спільнотою з правами запису (rwcommunity) на операційній системі Linux.
Розширення послуг додатковими командами
Щоб розширити SNMP-послуги та додати додаткові команди, можна додати нові рядки до таблиці "nsExtendObjects". Це можна зробити, використовуючи команду snmpset
і надаючи необхідні параметри, включаючи абсолютний шлях до виконуваного файлу та команду, яка має бути виконана:
Впровадження команд для виконання
Впровадження команд для виконання на службі SNMP вимагає наявності та можливості виконання викликаного бінарного файлу/скрипта. NET-SNMP-EXTEND-MIB
вимагає надання абсолютного шляху до виконуваного файлу.
Щоб підтвердити виконання впровадженої команди, можна використовувати команду snmpwalk
для перерахунку служби SNMP. вихідні дані відобразять команду та її супутні деталі, включаючи абсолютний шлях:
Виконання Впроваджених Команд
Коли впроваджена команда читається, вона виконується. Ця поведінка відома як run-on-read()
. Виконання команди можна спостерігати під час читання snmpwalk.
Отримання Shell Сервера за Допомогою SNMP
Щоб отримати контроль над сервером і отримати shell сервера, можна використовувати скрипт на python, розроблений mxrch, з https://github.com/mxrch/snmp-shell.git.
Альтернативно, реверсний shell можна створити вручну, впровадивши конкретну команду в SNMP. Ця команда, активована snmpwalk, встановлює з'єднання реверсного shell з машиною атакуючого, що дозволяє контролювати машину жертви. Ви можете встановити попередні вимоги для запуску цього:
Або зворотний шелл:
References
Last updated