Статья для участия в конкурсе на codeby
Всем привет, сегодня постараюсь рассказать вам немного про snmp и про его эксплуатацию
Предисловие
Для чего нужен SNMPПротокол SNMP был разработан с целью проверки функционирования сетевых маршрутизаторов и мостов. Впоследствии сфера действия протокола охватила и другие сетевые устройства, такие как хабы, шлюзы, терминальные сервера, LAN Manager сервера , машины под управлением Windows NT и т.д. Кроме того, протокол допускает возможность внесения изменений в функционирование указанных устройств.
Ссылка скрыта от гостей
, думаю с её установкой у вас проблем возникнуть не должноЧасть 1. Подготавливаем Vyos
Vyos – это ОС с открытыми исходниками, которая может быть установлена на физическом оборудовании или на виртуальной машине(наш случай).Vyos основан на GNU/Linux и объединяет в себе несколько приложений, таких, как Quagga, ISC DHCPD, OpenVPN, StrongS / WAN и другие, под единым интерфейсом управления.
Ссылка скрыта от гостей
Open Virtualization Format. OVF (Open Virtualization Format) — открытый стандарт для хранения и распространения виртуальных машин. Стандарт описывает открытый, переносимый, расширяемый формат для распространения образов виртуальных машин.
Ссылка скрыта от гостей
Теперь открываем наш Virtual Box, выбираем импорт конфигураций, далее выбираем наш скачанный vyos, далее нужно будет немного подождать virtual box его установит
Запускаем наш vyos, вас встретит загрузчик, после него будет чёрный экран(по крайней мере у меня было так и мне пришлось немного подождать), потом начнётся загрузка, выглядеть это всё будет примерно так
Далее войдем в машину, логин и пароль будут vyos. На этом установка заканчивается, дальше будем конфигурировать vyos и заниматься snmp
Часть 2 Конфигурация и эксплуатация
Для начала узнаем, на каком айпишнике лежит наш роутер, для этого введите
Код:
show interfaces
Также, можно посмотреть дефолтную конфигурацию введя show configuration, со временем она у нас будет меняться и увеличиваться
вот как она выглядит
Начнём конфигурировать, чтобы зайти в режим конфигурации введите configure
Давайте для начала запустим сервис SSH на нашем роутере, вводите
set service ssh
После каждой конфигурации нужно её применить и сохранить, для этого нужно ввести
commit
save
Далее, чтобы выйти из режима конфигурации ввести exit
Теперь посмотрим всё ли хорошо и пропингуем наш роутер
Всё хорошо, теперь можем подключаться к машине по SSH
Теперь запустим ещё несколько сервисов (https, telnet и snmp) для примера
По тому же принципу я включил snmp
set service snmp community raffel authorization ro
Не забывайте вводить в конце commit и save иначе конфигурации не будут применены!
Если авторизация стоит ro(read-only) , то узнав community в нашем случае – это raffel много плохого не случится, мы сможет только прочитать установки нашего роутера. Если же авторизация rw(read-write) мы можем менять некоторые его установки
Выполним сканирование nmap-ом на наличие открыты udp портов, именно на них будет лежать наш snmp
Видим, что snmp открыт. Теперь можно, например, попробовать побрутить этот самый community
Я создал файл с набором различных цифр, словосочетаний, букв и между ними спрятал действующее имя, то есть raffel
Теперь воспользуемся nmap скриптом, который позволит нам сбрутить это имя, введём
Код:
nmap -sU -p 161 -n --script snmp-brute 192.168.0.101 --script-args snmp-brute.communitiesdb=passfile.txt
Как видно по выводу, у нас всё получилось и мы получили валидное имя community – raffel
Теперь я создам ещё одно community с авторизацией rw
set service snmp community raffel-write rw
То есть теперь, если я введу show configuration, строка связанная с snmp будет выглядеть примерно так
Теперь выполним
Код:
snmpwalk –v1 –c raffel-write 192.168.0.101
Теперь, тк мы имеем право и записывать, мы можем изменять некоторые заголовки, перед которыми находится надпись STRING
Допустим, мы хотим изменить строку выделенную на левом терминале(это дамп с прошлой команды отправленный в файл, вы можете сделать также snmpwalk –v1 –c raffel-write 192.168.0.101 > file.txt ). В этом примере мы заменяем строку vyos на !(Pwned)!
Теперь ещё раз выполним команду snmpwalk –v1 –c raffel-write 192.168.0.101, чтобы удостовериться, что заголовок поменялся
Чтобы не ловить на себя весь огромный вывод советую сделать вот так
snmpwalk –v1 –c raffel-write 192.168.0.101 | head –n 6
Это выведет только первые 6 строк результата
И мы получаем
На этом думаю всё, надеюсь не запутал вас, спасибо за внимание