Entradas

Mostrando entradas de febrero, 2022

Napalm | Obtener version software de IOS dada una lista de multiples dispositivos

Este script funciona fenomenal si necesitais obtener la version IOS dada una lista de IPs/Hosts de Routers/Switches Cisco IOS de una forma automatizada. Tener en cuenta que necesitaremos un archivo de "hosts"  donde especificaremos las IPs o Hostnames de los routers o switches Cisco a conectarnos.   SCRIPT 1) Archivo de Hosts (marcado en amarillo en el script) 192.168.1.10 192.168.1.20 192.168.1.30 2) Script import napalm import json f = open (" /home/angel/scripts/hosts ") for line in f:     host = line.strip()     driver = napalm.get_network_driver('ios')     device = driver(hostname=host, username='ssh_user', password='ssh_password')     device.open()     getfacts = device.get_facts()     os_version = getfacts["os_version"]     os_version_split = os_version.split(',')[1].lstrip()     os_version_sliced = os_version_split[8:]     print (os_version_sliced)     device.close()  RESULTADO (OUTPUT) 15.0(2)SE2 12.2(55)SE7 15.2(4)

Devnet | Obtener listado de vulnerabilidades de una version específica de un Dispositivo Cisco IOS o IOS XE

Imagen
Para obtener un listado de vulnerabilidades de una version específica de un Dispositivo Cisco IOS o IOS XE usaremos curl (en Linux) para lanzar las API calls contra los servidores de Cisco y tendremos que seguir los siguientes pasos:  1. Iniciar sesion con tu cuenta de Cisco en https://apiconsole.cisco.com 2. Hacer click en "My Apps & Keys" > "Register a New App". Nos pedirá los datos de nuestra aplicación a utilizar y el tipo de API a utilizar. Para poder hacer consultas de vulnerabilidades en dispositivos Cisco IOS/IOS-XE hay que habilitar "Cisco PSIRT openVuln API" 3.  Una vez registrada nuestra app, Cisco nos proporcionará un client id y un client secret que nos servirá conseguir nuestro Acces Token. Para ello tendremos que realizar la siguiente API call con curl para conseguir nuestro access Token:  curl -s -k -H "Content-Type: application/x-www-form-urlencoded" -X POST -d "client_id= XXXXXXXXXXX " -d "client_secret= Y