Con licencias y a lo loco

Con licencias y a lo loco

Con licencias y a lo loco

No delegues todo en un empleado, te puedes quedar sin licencias

Recientemente hemos tenido un caso bastante fuera de lo común y relacionado con temas de licencias. Se trataba de unos equipos NetApp Fast 270. La empresa cliente tenía parte de su infraestructura montada ahí y el sysadmin de la empresa se había ido de la noche a la mañana, llevándose información de todo tipo y dejando a nuestros clientes sin ningún tipo de acceso ni credenciales… y como no, teníamos el problema de las licencias añadido.

 

NetApp

Equipos Fas270

 

La idea es preservar las evidencias y notario mediante, empezamos. La situación no era muy prometedora, cuando llegamos a la empresa nos vimos en la necesidad de agudizar el ingenio. No estaba muy claro por donde comenzar pero la consola es TODOPODEROSA, así que empezamos…

Cable serial en mano, un café bien cargado y nos ponemos a trabajar.

Al hacer un reset sobre un nodo maestro con el serial conectado con (8N1 9600) aparecerá el menú que abrirá las puertas de la solución. Hay una opción para borrar la configuración, credenciales… como veremos más adelante esto es beneficioso pero también perjudicial. Pese a lo que parezca esto no altera los discos de datos.

El equipo se reiniciará con los valores por defecto o de fábrica lo cual nos permite el completo acceso al sistema. Ahora tenemos una consola interactiva.

Siguiente problema, nuestra idea inicial sería transferir los datos  por NFS, CIFS o similar. Nos encontramos que al borrar las configuraciones no tenemos licencia sobre ningún producto así que no tenemos forma de exportar la información.

Y seguimos tomando cafeina… investigamos un poco y después de 5 cafés, un ataque a nuestro servidor y dos  capítulos de “Big Bang Theory” seguimos con el mismo problema.

Pero recordad, la consola es nuestra amiga.

Aquí os dejamos el script que tuvimos que hacer para esta ocasión en concreto. Solo para propósitos de testing!!

#!/bin/bash
#
#	Script desarrollado por Forensic & Security
#	Ignacio Diaz| ignacio.diaz@forensic-security.com
#	Solo para propositos de "TEST"
#
uflag=''
pflag=''
Hflag=''
cflag='aaaaaaa'
carray=( a a a a a a a )
UHOST=''
while getopts 'c:hp:u:H:' flag; 
do
  case "${flag}" in
		c)
			flen="${#OPTARG}"
			if [ ${#OPTARG} -eq 7 ]; then
				cflag=$OPTARG
			fi
			;;
		H)
			Hflag=$OPTARG
			;;
		h)
			echo "\"TEST\" de fuerza bruta para licencias NetApp"
			echo " "
			echo "Opciones, este script depende de \"sshpass\""
			echo " "
			echo "-c 	[opcional] cadena de 7 letras {a..z} desde donde continuar"
			echo "-H 	[obligatorio] host NetApp a testear las licencias [localhost]"
			echo "-h 	Muestra esta ayuda"
			echo "-p 	[obligatorio] pass del usuario [root]"
			echo "-u 	[obligatorio] nombre del usuario [toor]"
			echo " "
			echo " "
			echo "Ignacio Diaz|forensic-security.com| ignacio.diaz@forensic-security.com"
			exit
			;;
		p)
			pflag=$OPTARG
			;;
		u)
			uflag=$OPTARG
			;;
		\?)
			echo "utiliza -h para ver la ayuda" 
			exit
			;;
    esac
done

if [ -z $cflag ] || [ -z $pflag ] || [ -z $uflag ]; then
	echo "tienes que especificar los parametros obligatorios"
	echo "usa -h pra ver la ayuda"
	exit 0
fi


UHOST=$uflag"@"$Hflag

for (( i=0; i<${#cflag}; i++ )); do
  carray[$i]=${cflag:$i:1}
done

for p1 in $(eval echo {${carray[0]}..z}); do
	for p2 in $(eval echo {${carray[1]}..z}); do
		for p3 in $(eval echo {${carray[2]}..z}); do
			for p4 in $(eval echo {${carray[3]}..z}); do
				for p5 in $(eval echo {${carray[4]}..z}); do
					for p6 in $(eval echo {${carray[5]}..z}); do
						for p7 in $(eval echo {${carray[6]}..z}); do
							sshpass -p $pflag ssh -o StrictHostKeyChecking=no $UHOST "license add $p$p1$p2$p3$p4$p5$p6$p7";
						done;
					done;
				done;
			done;
		done;
	done;
done
  
exit 1

(Tal vez no sea muy bonito pero funciona!)

Bingo!!

Volvemos a nuestra idea inicial y la aplicamos, A clonar se ha dicho!! Al fin vemos la luz al final del túnel. En breve nos podemos ir a casa!

Breve, breve… eran 40 Tb Aprox.

La empresa recuperó la configuración de su infraestructura y nosotros le volcamos los datos.

Todos contentos!!

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *