[TUTORIAL] Clonar skylanders (todos los juegos) con un PM3 o ACR122U

Este tutorial consta de tres partes independientes. En la primera, muy corta, explico cómo clonar skylanders mediante un acr122u, unos volcados sin claves y una página web. Esa parte del tutorial será más que suficiente para la mayoría de vosotros ya que podréis clonar 550+ skylanders, trampas, vehículos, cristales, ítems especiales, etc. La segunda parte explica distintas formas de hacer clones y algunas cosas más mediante un Proxmark3. Compré el pm3 antes que el acr122u pensando que no podría hacer todo el proceso de clonado con el acr122u (no se pueden calcular las claves con un acr122u pero sí con el pm3). Es por ello que profundicé tanto en su uso (compré el acr122u seis meses después). A día de hoy, la primera parte del tutorial es más que suficiente. Por último, la tercera parte explica cómo utilizar algunos programas de ordenador para resetear cristales y otras cosas.

Por si le interesa a alguien, antes de empezar con el tutorial, pongo aquí el algoritmo de cifrado de las claves de las figuras de Skylanders; lo pongo en el spoiler (no hace falta leerlo/entenderlo, tranquilos).
The key A for sector 0 is always the 6-byte (12-character) hexadecimal representation of the integer computed by the multiplication of the three prime numbers 73 and 2017 and 560,381,651

For all other sectors, let a big-endian, most-significant-bit first, 48-bit CRC computation use the ECMA-182 polynomial of 0x42f0e1eba9ea3693, and not be reflected or reversed or have a final register XOR value; this is equivalent to a CRC64-ECMA-182 with left shift, MSB check and remainder trim reduced from 64 to 48 bits

Let the initial value of the CRC48 register be the value of the integer computed by the multiplication of the five prime numbers 2 and 2 and 3 and 1103 and 12,868,356,821

Compute the CRC48 of the 5 bytes encoded by the 10-character hexadecimal concatenation of the UID and the sector number in hexadecimal

The key A for that sector is 6 bytes, represented in hexadecimal as 12 characters: the result of the CRC48 with the hexadecimal bytes' order reversed

Si alguien tiene conocimientos de python, que no es mi caso, puede utilizar el siguiente programa (ver "spoiler") para conseguir las claves de sus figuras:
#!/usr/bin/python

## tnp3xxx.py - Compute a key A
##
## Written in 2016 and 2017 and 2018 by Vitorio Miliano
##
## To the extent possible under law, the author has dedicated all
## copyright and related and neighboring rights to this software to
## the public domain worldwide. This software is distributed without
## any warranty.
##
## You should have received a copy of the CC0 Public Domain
## Dedication along with this software. If not, see
## <http://creativecommons.org/publicdomain/zero/1.0/>.

import binascii, re, struct, sys

uidre = re.compile('^[0-9a-f]{8}$', re.IGNORECASE)
magic_nums = [2, 3, 73, 1103, 2017, 560381651, 12868356821]

# Standard MSB CRC pseudocode e.g. https://en.wikipedia.org/w/index.php?ti ... ianness.29
# CRC64 ECMA-182 e.g. http://stackoverflow.com/a/29241216
def pseudo_crc48(crc, data):
POLY = 0x42f0e1eba9ea3693
MSB = 0x800000000000
TRIM = 0xffffffffffff
for x in data:
crc = crc ^ (x << 40)
for k in range(0, 8):
if crc & MSB:
crc = (crc << 1) ^ POLY
else:
crc = crc << 1
crc = crc & TRIM
return crc

def calc_keya(uid, sector):
if sector == 0:
return format(magic_nums[2] * magic_nums[4] * magic_nums[5], '012x')

if uidre.match(uid) is None:
raise ValueError('invalid UID (four hex bytes)')

if sector < 0 or sector > 15:
raise ValueError('invalid sector (0-15)')

PRE = magic_nums[0] * magic_nums[0] * magic_nums[1] * magic_nums[3] * magic_nums[6]
ints = [ord(a) for a in uid.decode('hex')] + [sector]

key = pseudo_crc48(PRE, ints)

return binascii.hexlify(struct.pack('<Q', key))[0:12]

if __name__ == '__main__':
if len(sys.argv) > 1:
keysa = []
for sector in range(0, 16):
keysa.append(calc_keya(sys.argv[1], sector))
if len(sys.argv) > 2 and sys.argv[2] == '-eml':
print ('0'*20+'\n'+('0'*32+'\n')*3).join(keysa).join([(sys.argv[1]+'0'*24+'\n')+(('0'*32+'\n')*2), '0'*20])
else:
print '\n'.join(keysa)

Intenté hacer yo los cálculos y entender debidamente el algoritmo pero no he llegado a lograrlo. Al final encontré otra solución; compré un Proxmark3 Easy (54,47€ puesto en casa) y además de utilizarlo para calcular las claves de mis figuras también lo uso para clonarlas (no es posible hacerlo con un teléfono android con NFC así que para poder clonarlas lo habría comprado igualmente). Igual lo encontráis hasta un pelín más barato pero daros cuenta de que el que he comprado yo es el que trae el doble de memoria RAM y permite conectar un power bank. Aviso que viene sin manual ni guía ni nada y que hay que estudiar mucho para lograr ponerlo en marcha. Además, se necesitan chips mifare classic 1K con sector 0 regrabables (magic cards gen1) para poder grabar los clones. Yo pedí las tarjetas aquí pero he encargado otras en formato moneda y cuando las tenga comentaré qué tal van. Edit: van estupendamente.

¡IMPORTANTE!: No hace falta que compréis el Proxmark3 ya que en la primera parte del tutorial nos las arreglaremos para calcular las claves mediante una página web y nos apañaremos con el acr122u (yo se lo compré a ese vendedor pero no os harán falta las tarjetas que trae así que buscando en aliexpress lo encontraréis más barato). Tanto si compráis un aparato como otro, necesitaréis los chips que mencionaba arriba.

PARTE UNO. HACER CLONES CON UN ACR122U:

Cuando compréis el acr122u os llegará el software necesario para hacerlo funcionar en Windows. Si no tenéis una unidad óptica de lectura, os llega el mini CD rayado como a mí cawento o los programas que os han mandado están en chino ¬_¬ (dependiendo del vendedor al que le compréis el aparato el software os llegará en inglés o chino), aquí tenéis un enlace a los programas con los botones en inglés.

Cómo clonar 550+ skylanders de cualquier juego utilizando volcados incompletos (faltan las claves) de otros usuarios:
En este google drive hay cientos de skylanders de todos los juegos, incluyendo trampas, vehículos, cristales, ítems especiales, etc. pero tal y como están no se pueden usar ya que faltan las claves de los 16 sectores. Para calcular las claves utilizaremos esta página. El proceso es el siguiente:

1- Elegimos en el google drive el skylander que queremos clonar y nos lo bajamos al PC.
2- Vamos a la página de antes y subimos el archivo .bin que nos hemos bajado en el punto 1. Otra opción, obviamente, era bajarnos la carpeta entera en el punto 1 y en el punto 2 navegar en esa carpeta hasta encontrar el skylander deseado.
3- Elegimos la opción "Download". El archivo descargado ya contiene las claves necesarias para poder hacer un clon.
4- A ese archivo que acabamos de descargar le cambiamos la extensión de .bin a .dmp. Si no lográis hacerlo directamente, abrid el archivo .bin con la aplicación HxD y guardadlo como .dmp.
5- Conectamos el acr122u al PC, ponemos una magic tag encima y abrimos la aplicación MIFARE Classic Card Recovery Tools改UID号.
6- En el programa, pulsamos "Initialize", "Connect" y "Browse", por ese orden. Elegimos el archivo descargado en el punto 3 (buscándolo con extensión .dmp) y pulsamos "Copy Card".
Imagen
7- Y ahora...¡a disfrutar de nuestra figura clonada! [beer]

En este método dependemos de esa página pero yo he probado a descargarla y en mi PC me funciona offline (he comprobado que me genera las claves y el clon funciona). Os dejo aquí la descarga. Podéis desconectaros de Internet e intentarlo vosotros. Tenéis que abrir el archivo "index" con cualquier navegador. Ya veréis cómo funciona.


PARTE DOS. HACER CLONES Y MÁS CON UN PROXMARK3:

Aviso que esta parte no es para todo el mundo ya que hay que saber inglés, utilizar líneas de comando, compilar en nuestro ordenador el "fork" del proxmark3 que nos interesa, etc.

Poner el proxmark3 en marcha:
Cuando me llegó el proxmark3 seguí esta guía (Windows 10) https://github.com/Proxmark/proxmark3/wiki/Windows. En principio, hay que seguir la guía paso por paso (¡cuidado! no sigáis el apartado "Update Proxmark to the new CDC Serial Interface" ya que no es necesario y es peligroso) y lo puse a funcionar sin demasiados problemas (tardé un poco en hacerlo porque no sabía muy bien cómo) pero luego volví a hacerlo todo desde el principio para usar el "fork" de Iceman (administrador del foro proxmark.org) en lugar del oficial para poder usar un script que nos hace falta en este tutorial (más abajo hablo de cuál es).

En un paso de la guía dice 3- Download "ProxSpace-master.zip" from: https://github.com/Gator96100/ProxSpace ... master.zip. Pues bien, tras ello hay que descargar el fork de Iceman https://github.com/iceman1001/proxmark3. Llamad "pm3" a la carpeta que contiene los archivos del "fork" de Iceman y sustituidla por la carpeta del mismo nombre de la descarga oficial. Luego seguid con el tutorial.

Cuando lleguemos al punto de flashear el bootrom y el firmware un apunte importante para que no cunda el pánico. Tras flashear el bootrom el ordenador no nos detectará el proxmark y parecerá que tenemos un bonito pisapeles con antenas. ¡Tranquilos! Desconectad el proxmark3 del ordenador, mantened pulsado el botón del proxmark3 (no soltarlo hasta que hayamos flasheado debidamente el firmware), conectad el USB al ordenador, mirad en el ordenador qué COM le ha asignado, flashead el firmware y ya podéis dejar de apretar el botón. Esto es algo que seguramente haréis una sola vez pero si compilarais otro "fork" o uno con una versión mayor, decir que habría que volver a flashear el proxmark3 (bootrom y firmware) o podemos tener problemas con él (si el client no corresponde con el firmware/bootrom, nos lo podemos cargar).

Ya tenemos listo para usar el proxmark. Al abrir el "client" veremos algo así, si tenemos debidamente instalado el "fork" de Iceman:

pm3 ~$ ./client/proxmark3.exe com9

Proxmark3 RFID instrument


[ CLIENT ]
client: iceman build for RDV40 with flashmem; smartcard;

[ ARM ]
bootrom: iceman// 2018-12-30 00:52:24
      os: iceman// 2018-12-30 00:52:37

[ FPGA ]
LF image built for 2s30vq100 on 2017/10/25 at 19:50:50
HF image built for 2s30vq100 on 2018/ 9/ 3 at 21:40:23

[ Hardware ]
  --= uC: AT91SAM7S512 Rev B
  --= Embedded Processor: ARM7TDMI
  --= Nonvolatile Program Memory Size: 512K bytes, Used: 237342 bytes (45%) Free: 286946 bytes (55%)
  --= Second Nonvolatile Program Memory Size: None
  --= Internal SRAM Size: 64K bytes
  --= Architecture Identifier: AT91SAM7Sxx Series
  --= Nonvolatile Program Memory Type: Embedded Flash Memory

Identificar nuestro tipo de chip
He puesto un enlace de los chips que uso al principio del mensaje pero no está de más saber cómo comprobar con el Proxmark3 que, efectivamente, son los que necesitamos. Ponemos el chip sobre el Proxmark3 y con el comando "hf search" podemos ver qué tipo de chip es. Además de ser un chip Mifare 1k, ha de ser una magic card gen1a para poder usar comandos de puerta trasera (cload, csetblk...).
proxmark3> hf search

UID : 1d ae da 3c
ATQA : 00 04
SAK : 08 [2]
TYPE : NXP MIFARE CLASSIC 1k | Plus 2k SL1
proprietary non iso14443-4 card found, RATS not supported
Chinese magic backdoor commands (GEN 1a) detected
Prng detection: WEAK

Valid ISO14443A Tag Found - Quiting Search


Y ya por último, en este tutorial usaremos repetidamente un script llamado tnp3clone que ya está entre los archivos de Iceman. Ya son dos los usuarios que han reportado problemas con él. Hace tiempo le propuse hacer tres cambios en el script a Iceman para que el script hiciera bien su trabajo de una sola vez sin necesidad de utilizar más comandos adicionales. Iceman los implementó y, por alguna razón, en la descarga de los archivos aún está la versión antigua. Bajaos este script y ponedlo en /pm3/client/scripts (sustituid el antiguo por éste)

Cómo clonar 300+ skylanders de los primeros 5 juegos usando un script del proxmark3 sin volcados ni claves:
La idea es la siguiente; necesitamos un bloque 0 de una figura skylander. Vale una de cualquier juego independientemente de qué skylander queramos clonar. Para utilizar este método no hace falta tener volcados ni claves. Es el propio script el que se encarga de hacer los cálculos una vez que le decimos lo que queremos pero solamente están disponibles los skylanders de los primeros cinco juegos y son algo más de 300 por lo que no estarán todos en la lista. El proceso es el siguiente:

1- Si ya tenemos un bloque 0 de una figura, pasamos al paso 2. Si no, podemos obtener un bloque 0 válido leyendo una figura propia mediante "hf mf rdbl 0 a 4b0b20107ccb":
pm3 --> hf mf rdbl 0 a 4b0b20107ccb
--block no:0, key type:A, key:4B 0B 20 10 7C CB
isOk:01 data:54 CF 8E 2D 38 81 01 0F C3 85 14 97 5D 60 27 12

Ese sería el sector 0 de mi figura Cynder de Skylanders Giants.

2- Ponemos un chip encima del proxmark3 y le ponemos ese bloque 0. En el ejemplo sería escribiendo "hf mf csetblk 0 54CF8E2D3881010FC38514975D602712":
pm3 --> hf mf csetblk 0 54cf8e2d3881010fc38514975d602712
--block number: 0 data:54 CF 8E 2D 38 81 01 0F C3 85 14 97 5D 60 27 12


3- Ahora tenemos que elegir de la lista qué skylander queremos clonar. Para ver la lista escribimos "script run tnp3clone -l":
pm3 --> script run tnp3clone -l
[+] Executing: tnp3clone.lua, args '-l'

----------------------------------------
----------------------------------------
Type    Sub     Element Game            Name
======================================================
0000    0030    air     regular         Whirlwind
0100    0030    air     regular         Sonic Boom
0200    0030    air     regular         Warnado
0300    0030    air     regular         Lightning Rod
0400    0030    earth   regular         Bash
0500    0030    earth   regular         Terrafin
0600    0030    earth   regular         Dino Rang
0700    0030    earth   regular         Prism Break
0800    0030    fire    regular         Sunburn
0900    0030    fire    regular         Eruptor
0a00    0030    fire    regular         Ignitor
0b00    0030    fire    regular         Flameslinger
0c00    0030    water   regular         Zap
0d00    0030    water   regular         Wham Shell
0e00    0030    water   regular         Gill Grunt
0f00    0030    water   regular         Slam Bam
1000    0030    magic   regular         Spyro
1100    0030    magic   regular         Voodood
1200    0030    magic   regular         Double Trouble
1300    0030    tech    regular         Trigger Happy
1400    0030    tech    regular         Drobot
1500    0030    tech    regular         Drill Sergeant
1600    0030    tech    regular         Boomer
1700    0030    magic   regular         Wrecking Ball
1800    0030    life    regular         Camo
1900    0030    life    regular         Zook
1a00    0030    life    regular         Stealth Elf
1a00    0528    life    swapforce       Ninja Stealth Elf
1b00    0030    life    regular         Stump Smash
1b00    0118    life    regular         Stump Smash
1c00    0030    magic   regular         Dark Spyro
1d00    0030    undead  regular         Hex
1e00    0030    undead  regular         Chop Chop
1f00    0030    undead  regular         Ghost Roaster
2000    0030    undead  regular         Cynder
6400    0030    air     giant           Jet Vac
6500    0030    air     giant           Swarm
6600    0030    earth   giant           Crusher
6700    0030    earth   giant           Flashwing
6800    0030    fire    giant           Hot Head
6900    0030    fire    giant           Hot Dog
6a00    0030    water   giant           Chill
6b00    0030    water   giant           Thumpback
6c00    0030    magic   giant           Pop Fizz
6c00    023c    magic   giant           Love Potion Pop Fizz
6d00    0030    magic   giant           Nin Jini
6e00    0030    tech    giant           Bouncer
6f00    0030    tech    giant           Sprocket
7000    0030    life    giant           Tree Rex
7100    0030    life    giant           Shroomboom
7200    0030    undead  giant           Eye Broawl
7300    0030    undead  giant           Fright Rider
c800    0030            item            Anvil Rain
c900    0030            item            Platinum Treasure Chest
ca00    0030            item            Healing Elixer
cb00    0030            item            Ghost Pirate Swords
cc00    0030            item            Time Twist Hourglass
cd00    0030            item            Sky Iron Shield
ce00    0030            item            Winged Boots
cf00    0030            item            Sparx
d000    0030            item            Cannon
d100    0030            item            Scorpion Striker
d200    0230    magic   trap            Biter's Bane
d200    0830    magic   trap            Sorcerous Skull
d200    0b30    magic   trap            Axe Of Illusion
d200    0e30    magic   trap            Arcane Hourglass
d200    1230    magic   trap            Spell Slapper
d200    1430    magic   trap            Rune Rocket
d300    0130    water   trap            Tidal Tiki
d300    0230    water   trap            Wet Walter
d300    0630    water   trap            Flood Flask
d300    0730    water   trap            Soaking Staff
d300    0b30    water   trap            Aqua Axe
d300    1630    water   trap            Frost Helm
d400    0330    air     trap            Breezy Bird
d400    0630    air     trap            Drafty Decanter
d400    0d30    air     trap            Tempest Timer
d400    1030    air     trap            Cloudy Cobra
d400    1130    air     trap            Storm Warning
d400    1830    air     trap            Cycone Saber
d500    0430    undead  trap            Spirit Sphere
d500    0830    undead  trap            Spectral Skull
d500    0b30    undead  trap            Haunted Hatchet
d500    0c30    undead  trap            Grim Gripper
d500    1030    undead  trap            Spooky Snake
d500    1730    undead  trap            Dream Piercer
d600    0030    tech    trap            tech Totem
d600    0730    tech    trap            Automatic Angel
d600    0930    tech    trap            Factory Flower
d600    0c30    tech    trap            Grabbing Gadget
d600    1630    tech    trap            Makers Mana
d600    1a30    tech    trap            Topsy techy
d700    0530    fire    trap            Eternal Flame
d700    0930    fire    trap            fire Flower
d700    1130    fire    trap            Scorching Stopper
d700    1230    fire    trap            Searing Spinner
d700    1730    fire    trap            Spark Spear
d700    1b30    fire    trap            Blazing Belch
d800    0030    earth   trap            Banded Boulder
d800    0330    earth   trap            Rock Hawk
d800    0a30    earth   trap            Slag Hammer
d800    0e30    earth   trap            Dust Of Time
d800    1330    earth   trap            Spinning Sandstorm
d800    1a30    earth   trap            Rubble Trouble
d900    0330    life    trap            Oak Eagle
d900    0530    life    trap            Emerald Energy
d900    0a30    life    trap            Weed Whacker
d900    1030    life    trap            Seed Serpent
d900    1830    life    trap            Jade Blade
d900    1b30    life    trap            Shrub Shrieker
da00    0030    dark    trap            dark Dagger
da00    1430    dark    trap            Shadow Spider
da00    1a30    dark    trap            Ghastly Grimace
db00    0030    light   trap            Shining Ship
db00    0f30    light   trap            Heavenly Hawk
db00    1b30    light   trap            Beam Scream
dc00    3030    kaos    trap            Kaos trap!
e600    0030    none    item            Hand Of Fate
e700    0030    none    item            Piggy Bank
e800    0030    none    item            Rocket Ram
e900    0030    none    item            Tiki Speaky
2c01    0030    none    location        Dragons Peak
2d01    0030    none    location        Empire Of Ice
2e01    0030    none    location        Pirate Seas
2f01    0030    none    location        darklight Crypt
3001    0030    none    location        Volcanic Vault
3101    0030    none    location        Mirror Of Mystery
3201    0030    none    location        Nightmare Express
3301    0030    light   location        Sunscraper Spire
3401    0030    dark    location        Midnight Museum
9401    0030    earth   legendary       Bash
a001    0030    magic   legendary       Spyro
a301    0030    tech    legendary       Trigger Happy
ae01    0030    undead  legendary       Chop Chop
c201    0030    air     trapmaster      Gusto
c301    0030    air     trapmaster      Thunderbolt
c401    0030    air     regular         Fling Kong
c501    0030    air     regular         Blades
c601    0030    earth   trapmaster      Wallop
c701    0030    earth   trapmaster      Head Rush
c701    0234    earth   trapmaster      Nitro Head Rush
c801    0030    earth   regular         Fist Bump
c901    0030    earth   regular         Rocky Roll
ca01    0030    fire    trapmaster      Wildfire
ca01    0234    fire    trapmaster      Dark Wildfire
cb01    0030    fire    trapmaster      Ka Boom
cc01    0030    fire    regular         Trail Blazer
cd01    0030    fire    regular         Torch
ce01    0030    water   trapmaster      Snap Shot
ce01    0234    water   trapmaster      Dark Snap Shot
6c00    023c    water   trapmaster      Instant Snap Shot
cf01    0030    water   trapmaster      Lob Star
cf01    0234    water   trapmaster      Winterfest Lob Star
d001    0030    water   regular         Flip Wreck
d101    0030    water   regular         Echo
d201    0030    magic   trapmaster      Blastermind
d301    0030    magic   trapmaster      Enigma
d401    0030    magic   regular         Deja Vu
d501    0030    magic   regular         Cobra Cadabra
d601    0030    tech    trapmaster      Jawbreaker
d701    0030    tech    trapmaster      Gearshift
d801    0030    tech    regular         Chopper
d901    0030    tech    regular         Tread Head
da01    0030    life    trapmaster      Bushwhack
db01    0030    life    trapmaster      Tuff Luck
dc01    0030    life    regular         Food Fight
dc01    0612    life    regular         LightCore Food Fight
dd01    0030    life    regular         High Five
de01    0030    undead  trapmaster      Krypt King
de01    0234    undead  trapmaster      Nitro Krypt King
df01    0030    undead  trapmaster      Short Cut
e001    0030    undead  regular         Bat Spin
e101    0030    undead  regular         Funny Bone
e101    0612    undead  regular         LightCore Funny Bone
e201    0030    light   trapmaster      Knight light
e301    0030    light   regular         Spotlight
e401    0030    dark    trapmaster      Knight Mare
e501    0030    dark    regular         Blackout
f601    0030    earth   mini            Bop
f901    0030    earth   mini            Terrabite
fa01    0030    air     mini            Breeze
fc01    0030    air     mini            Pet Vac
fb01    0030    fire    mini            Weeruptor
fd01    0030    fire    mini            Small Fry
fe01    0030    tech    mini            Drobit
0702    0030    tech    mini            Trigger Snappy
0e02    0030    life    mini            Whisper Elf
1c02    0030    life    mini            Barkley
1d02    0030    water   mini            Thumpling
0202    0030    water   mini            Gill Runt
1e02    0030    magic   mini            mini Jini
f701    0030    magic   mini            Spry
f801    0030    undead  mini            Hijinx
1f02    0030    undead  mini            Eye Small
b80b    0030    air     mini            Scratch
b90b    0030    air     SWAPFORCE       Pop Thorn
ba0b    0030    earth   SWAPFORCE       Slobber Tooth
bb0b    0030    earth   SWAPFORCE       Scorp
bc0b    0030    fire    SWAPFORCE       Fryno
bc0b    0138    fire    SWAPFORCE       Hog Wild Fryno
bd0b    0030    fire    SWAPFORCE       Smolderdash
be0b    0030    life    SWAPFORCE       Bumble Blast
bf0b    0030    life    SWAPFORCE       Zoo Lou
c00b    0030    magic   SWAPFORCE       Dune Bug
c10b    0030    magic   SWAPFORCE       Star Strike
c20b    0030    tech    SWAPFORCE       Countdown
c30b    0030    tech    SWAPFORCE       Wind Up
c40b    0030    undead  SWAPFORCE       Roller Brawl
c50b    0030    undead  SWAPFORCE       Grim Creeper
c60b    0030    water   SWAPFORCE       Rip Tide
c70b    0030    water   SWAPFORCE       Punk Shock
630d    0041    DARK    NIGHTFALL       nil
990c    0040    EARTH   LAND~SHARK~TANK nil
9a0c    0040    EARTH   LAND~THUMP~TRUCK        nil
580d    0041    EARTH   SHARK~SHOOTER~TERRAFIN  nil
530d    0041    EARTH   SMASH~HIT       nil
530d    0245    EARTH   STEEL~PLATED~SMASH~HIT  nil
970c    0040    FIRE    BURN~CYCLE      nil
600d    0245    FIRE    DARK~HAMMER~SLAM~BOWSER nil
980c    0244    FIRE    DARK~HOT~STREAK nil
540d    0245    FIRE    DARK~SPITFIRE   nil
600d    0041    FIRE    HAMMER~SLAM~BOWSER      nil
980c    0040    FIRE    HOT~STREAK      nil
980c    0440    FIRE    HOT~STREAK(E3)  nil
980c    1e44    FIRE    GOLDEN~HOT~STREAK       nil
5d0d    0041    FIRE    LAVA~LANCE~ERUPTOR      nil
540d    0041    FIRE    SPITFIRE        nil
5c0d    0041    MAGIC   BIG~BUBBLE~POP~FIZZ     nil
5c0d    0e45    MAGIC   BIRTHDAY~BASH~BIG~BUBBLE~POP~FIZZ       nil
4a0d    0245    MAGIC   POWER~BLUE~SPLAT        nil
a70c    0244    MAGIC   VARIANT~NITRO~SODA~SKIMMER      nil
a70c    0040    MAGIC   SEA~SODA~SKIMMER        nil
4a0d    0041    MAGIC   SPLAT           nil
af0d    0040    KAOS    TROPHY          nil
ad0d    0040    LAND    TROPHY          nil
570d    0245    LIFE    DARK~SUPER~SHOT~STEALTH~ELF     nil
5f0d    0245    LIFE    DARK~TURBO~CHARGE~DONKEY~KONG   nil
640d    0d45    LIFE    EGGCITED~THRILLIPEDE    nil
9c0c    0244    LIFE    SKY~NITRO~STEALTH~STINGER       nil
9c0c    0040    LIFE    STEALTH~STINGER nil
570d    0041    LIFE    SUPER~SHOT~STEALTH~ELF  nil
640d    0041    LIFE    THRILLIPEDE     nil
5f0d    0041    LIFE    TURBO~CHARGE~DONKEY~KONG        nil
a40c    0344    LIGHT   AIR~LEGENDARY~SUN~RUNNER        nil
620d    0041    LIGHT   ASTROBLAST      nil
620d    0345    LIGHT   LEGENDARY~ASTROBLAST    nil
a40c    0040    LIGHT   SUN~RUNNER      nil
ae0d    0040    SEA     TROPHY          nil
ac0d    0040    SKY     TROPHY          nil
a80c    0040    TECH    BARREL~BLASTER  nil
a80c    0244    TECH    DARK~BARREL~BLASTER     nil
560d    0041    TECH    DOUBLE~DARE~TRIGGER~HAPPY       nil
a20c    0040    TECH    GOLD~RUSHER     nil
a20c    0244    TECH    POWER~BLUE~GOLD~RUSHER  nil
490d    0041    TECH    HIGH VOLT       nil
a20c    0244    TECH    LAND~POWER~BLUE~GOLD~RUSHER     nil
a30c    0040    TECH    LAND~SHIELD~STRIKER     nil
560d    0245    TECH    POWER~BLUE~TRIGGER~HAPPY        nil
9b0c    0040    UNDEAD  CRYPT~CRUSHER   nil
480d    0041    UNDEAD  FIESTA          nil
480d    1545    UNDEAD  FRIGHTFUL~FIESTA(Halloween Special)     nil
590d    0041    UNDEAD  ROLLER~BRAWL    nil
590d    0345    UNDEAD  VARIANT~LEGENDARY~ROLLER~BRAWL  nil
950c    0000    UNDEAD  VEHICLE~TOMB~BUGGY      nil
a50c    0244    WATER   DARK~SEA~SHADOW nil
5e0d    0041    WATER   DEEP~DIVE~GILL~GRUNT    nil
9f0c    0040    WATER   DIVE~BOMBER     nil
610d    0041    WATER   DIVE~CLOPS      nil
610d    0e45    WATER   MISSILE~TOW~DIVE~CLOPS  nil
960c    0040    WATER   SEA~REEF~RIPPER nil
a50c    0040    WATER   SEA~SHADOW      nil
9f0c    0244    WATER   SPECIAL~VEHICLE~DIVE~BOMBER     nil
a60c    0040    WATER   SPLATTER~SPLASHER       nil
a60c    0244    WATER   POWER~BLUE~SPLATTER~SPLASHER    nil
d007    0020    air     SWAPFORCE       Boom
e803    0020    air     SWAPFORCE       Jet (Rocket)
d107    0020    air     SWAPFORCE       Free
e903    0020    air     SWAPFORCE       Ranger (Spin)
d207    0020    earth   SWAPFORCE       Rubble
ea03    0020    earth   SWAPFORCE       Rouser (Dig)
d307    0020    earth   SWAPFORCE       Doom
eb03    0020    earth   SWAPFORCE       Stone (Spin)
d407    0020    fire    SWAPFORCE       Blast
ec03    0020    fire    SWAPFORCE       Zone (Rocket)
d507    0020    fire    SWAPFORCE       Fire
ed03    0020    fire    SWAPFORCE       Kraken (Bounce)
d607    0020    life    SWAPFORCE       Stink
ee03    0020    life    SWAPFORCE       Bomb (Sneak)
d707    0020    life    SWAPFORCE       Grilla
ef03    0020    life    SWAPFORCE       Drilla (Dig)
d807    0020    magic   SWAPFORCE       Hoot
f003    0020    magic   SWAPFORCE       Loop (Teleport)
d907    0020    magic   SWAPFORCE       Trap
f103    0020    magic   SWAPFORCE       Shadow (Sneak)
da07    0020    tech    SWAPFORCE       Magna
f203    0020    tech    SWAPFORCE       Charge (Speed)
db07    0020    tech    SWAPFORCE       Spy
f303    0020    tech    SWAPFORCE       Rise (Climb)
dc07    0020    undead  SWAPFORCE       Night
f403    0020    undead  SWAPFORCE       Shift (Teleport)
dd07    0020    undead  SWAPFORCE       Rattle
f503    0020    undead  SWAPFORCE       Shake (Bounce)
de07    0020    water   SWAPFORCE       Freeze
f603    0020    water   SWAPFORCE       Blade (Speed)
df07    0020    water   SWAPFORCE       Wash
f703    0020    water   SWAPFORCE       Buckler (Climb)

[+] Finished

He copiado la lista en un documento de open office para que la veáis mejor.

4- Una vez que hayamos elegido el tipo (-t) y subtipo (-s) de skylander, lo clonamos escribiendo con el comando "script run tnp3clone -t xxxx -s xxxx" sustituyendo "xxxx" por los números de nuestro skylander. Por ejemplo, si queremos clonar a spyro sería "script run tnp3clone -t 1000 -s 0030":
pm3 --> script run tnp3clone -t 1000 -s 0030
[+] Executing: tnp3clone.lua, args '-t 1000 -s 0030'

----------------------------------------
----------------------------------------
[+] Looking up input: Found Spyro - regular (magic)
--wipe card:YES  uid:54 CF 8E 2D
[+] old block 0:  54 CF 8E 2D 38 81 01 0F C3 85 14 97 5D 60 27 12
[+] new block 0:  54 CF 8E 2D 38 81 01 0F C3 85 14 97 5D 60 27 12
[+] old UID:00 00 00 00
[+] new UID:54 CF 8E 2D
--block number: 1 data:10 00 00 00 00 00 00 00 00 00 00 00 00 30 64 53
--block number: 3 data:4B 0B 20 10 7C CB 7F 0F 08 69 00 00 00 00 00 00
--block number: 7 data:F8 B7 B3 2A A6 8E 7F 0F 08 69 00 00 00 00 00 00
--block number:11 data:DE DA 67 79 71 4D 7F 0F 08 69 00 00 00 00 00 00
--block number:15 data:4D EC 8D D0 9A AC 7F 0F 08 69 00 00 00 00 00 00
--block number:19 data:01 36 25 77 34 2B 7F 0F 08 69 00 00 00 00 00 00
--block number:23 data:92 00 CF DE DF CA 7F 0F 08 69 00 00 00 00 00 00
--block number:27 data:B4 6D 1B 8D 08 09 7F 0F 08 69 00 00 00 00 00 00
--block number:31 data:27 5B F1 24 E3 E8 7F 0F 08 69 00 00 00 00 00 00
--block number:35 data:BF EF A0 6B BE E7 7F 0F 08 69 00 00 00 00 00 00
--block number:39 data:2C D9 4A C2 55 06 7F 0F 08 69 00 00 00 00 00 00
--block number:43 data:0A B4 9E 91 82 C5 7F 0F 08 69 00 00 00 00 00 00
--block number:47 data:99 82 74 38 69 24 7F 0F 08 69 00 00 00 00 00 00
--block number:51 data:D5 58 DC 9F C7 A3 7F 0F 08 69 00 00 00 00 00 00
--block number:55 data:46 6E 36 36 2C 42 7F 0F 08 69 00 00 00 00 00 00
--block number:59 data:60 03 E2 65 FB 81 7F 0F 08 69 00 00 00 00 00 00
--block number:63 data:F3 35 08 CC 10 60 7F 0F 08 69 00 00 00 00 00 00
--block number: 3 data:4B 0B 20 10 7C CB 0F 0F 0F 69 00 00 00 00 00 00


5- Y ahora...¡a disfrutar de nuestro skylander clonado! [beer]

Nota: Normalmente este método funciona sin problemas pero también es cierto que alguna vez me ha fallado. Si el juego os dice que la figura está corrupta, fijaos a ver si el script os ha dado algún error cuando estaba escribiendo los bloques (puede quedar "camuflado" entre tanta línea). De ser así, utilizadlo de nuevo. Si no es el caso, pasad al plan B: abrid el archivo .bin (yo lo hago con HxD) del skylander correspondiente en el google drive, editad el bloque 0 del chip escribiendo el del archivo .bin, pasadle el script y luego editad el bloque 1 del chip escribiendo el del archivo .bin; nunca falla.

Cómo clonar 550+ skylanders de cualquier juego utilizando volcados incompletos (faltan las claves) de otros usuarios:
En este google drive hay cientos de skylanders de todos los juegos, incluyendo trampas, vehículos, cristales, ítems especiales, etc. pero tal y como están no se pueden usar ya que faltan las claves de los 16 sectores. Tenemos dos formas de complatar el proceso.

Primer método (utilizando una página web para generar las claves):

Para calcular las claves utilizaremos esta página. El proceso es el siguiente.

1- Elegimos en el google drive el skylander que queremos clonar y nos lo bajamos al PC.
2- Vamos a la página de antes y subimos el archivo .bin que nos hemos bajado en el punto 1. Otra opción, obviamente, era bajarnos la carpeta entera en el punto 1 y en el punto 2 navegar en esa carpeta hasta encontrar el skylander deseado.
3- Elegimos la opción "Download". El archivo descargado ya contiene las claves necesarias para poder hacer un clon.
4- Ese archivo.bin hemos de pasarlo a formato .eml mediante "script run dumptoemul -i nombredelarchivo.bin -o nombredelarchivo.eml". Debajo vemos como ejemplo cómo se pasa a formato .eml el archivo .bin "Air_BLADES_Legendary".
pm3 --> script run dumptoemul -i Air_BLADES_Legendary.bin -o Air_BLADES_Legendary.eml
[+] Executing: dumptoemul.lua, args '-i Air_BLADES_Legendary.bin -o Air_BLADES_Legendary.eml'

Wrote an emulator-dump to the file Air_BLADES_Legendary.eml

[+] Finished

5-Ya tenemos listo nuestro volcado con la claves introducidas. Ponemos un chip encima del Proxmark3 y grabamos ese archivo escribiendo "hf mf cload nombredelarchivo".
pm3 --> hf mf cload Air_BLADES_Legendary
................................................................

[+] Loaded 64 blocks from file: Air_BLADES_Legendary.eml

6- Y ahora...¡a disfrutar de nuestro skylander clonado! [beer]

En este método dependemos de esa página pero yo he probado a descargarla y en mi PC me funciona offline (he comprobado que me genera las claves y el clon funciona). Os dejo aquí la descarga. Podéis desconectaros de Internet e intentarlo vosotros. Tenéis que abrir el archivo "index" con cualquier navegador. Ya veréis cómo funciona.

Segundo método (utilizando el Proxmark3 para calcular las claves):

1- Nos descargamos el archivo.bin que nos interese, le cambiamos el nombre de tal forma que no tenga espacios y lo colocamos en la carpeta "pm3". Pongamos como ejemplo que nos interesa el achivo "AIR - BLADES - [Legendary]", pues lo podemos renombrar, por ejemplo, "AIR_BLADES_Legendary" (o algo más corto sin barras bajas, si nos da la gana).

2- En el client del proxmark escribimos "script run dumptoemul -i Air_BLADES_Legendary.bin -o Air_BLADES_Legendary.eml" para pasar ese archivo .bin a formato .eml.
pm3 --> script run dumptoemul -i Air_BLADES_Legendary.bin -o Air_BLADES_Legendary.eml
[+] Executing: dumptoemul.lua, args '-i Air_BLADES_Legendary.bin -o Air_BLADES_Legendary.eml'

Wrote an emulator-dump to the file Air_BLADES_Legendary.eml

[+] Finished

3- Ponemos un chip encima del Proxmark3 y grabamos ese archivo escribiendo "hf mf cload Air_BLADES_Legendary"
pm3 --> hf mf cload Air_BLADES_Legendary
................................................................

[+] Loaded 64 blocks from file: Air_BLADES_Legendary.eml

4- Ahora tenemos que calcular las claves para ese volcado que acabamos de grabar. Escribimos "script run tnp3clone -t 1000 -s 0030".
pm3 --> script run tnp3clone -t 1000 -s 0030
[+] Executing: tnp3clone.lua, args '-t 1000 -s 0030'

----------------------------------------
----------------------------------------
[+] Looking up input: Found Spyro - regular (magic)
#db# Auth error
[-] failed reading block with factorydefault key. Trying chinese magic read.
--wipe card:YES  uid:CF D6 E5 FA
[+] old block 0:  CF D6 E5 FA 06 81 01 0F C4 07 00 00 00 00 00 14
[+] new block 0:  CF D6 E5 FA 06 81 01 0F C4 07 00 00 00 00 00 14
[+] old UID:00 00 00 00
[+] new UID:CF D6 E5 FA
--block number: 1 data:10 00 00 00 00 00 00 00 00 00 00 00 00 30 FE 10
--block number: 3 data:4B 0B 20 10 7C CB 7F 0F 08 69 00 00 00 00 00 00
--block number: 7 data:7A 96 47 C8 AB F2 7F 0F 08 69 00 00 00 00 00 00
--block number:11 data:5C FB 93 9B 7C 31 7F 0F 08 69 00 00 00 00 00 00
--block number:15 data:CF CD 79 32 97 D0 7F 0F 08 69 00 00 00 00 00 00
--block number:19 data:83 17 D1 95 39 57 7F 0F 08 69 00 00 00 00 00 00
--block number:23 data:10 21 3B 3C D2 B6 7F 0F 08 69 00 00 00 00 00 00
--block number:27 data:36 4C EF 6F 05 75 7F 0F 08 69 00 00 00 00 00 00
--block number:31 data:A5 7A 05 C6 EE 94 7F 0F 08 69 00 00 00 00 00 00
--block number:35 data:3D CE 54 89 B3 9B 7F 0F 08 69 00 00 00 00 00 00
--block number:39 data:AE F8 BE 20 58 7A 7F 0F 08 69 00 00 00 00 00 00
--block number:43 data:88 95 6A 73 8F B9 7F 0F 08 69 00 00 00 00 00 00
--block number:47 data:1B A3 80 DA 64 58 7F 0F 08 69 00 00 00 00 00 00
--block number:51 data:57 79 28 7D CA DF 7F 0F 08 69 00 00 00 00 00 00
--block number:55 data:C4 4F C2 D4 21 3E 7F 0F 08 69 00 00 00 00 00 00
--block number:59 data:E2 22 16 87 F6 FD 7F 0F 08 69 00 00 00 00 00 00
--block number:63 data:71 14 FC 2E 1D 1C 7F 0F 08 69 00 00 00 00 00 00
--block number: 3 data:4B 0B 20 10 7C CB 0F 0F 0F 69 00 00 00 00 00 00

[+] Finished

Nota: En realidad acabamos de clonar a spyro usando el script tnp3clone pero en el proceso el script calcula y muestra las claves para la UID de ese bloque 0 que es lo que nos interesa.

5- Ya tenemos las claves para ese volcado; son los primeros 6 bytes de los bloques 3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 43, 47, 51, 55, 59 y 63. En este caso, son las siguientes:

4B 0B 20 10 7C CB
7A 96 47 C8 AB F2
5C FB 93 9B 7C 31
CF CD 79 32 97 D0
83 17 D1 95 39 57
10 21 3B 3C D2 B6
36 4C EF 6F 05 75
A5 7A 05 C6 EE 94
3D CE 54 89 B3 9B
AE F8 BE 20 58 7A
88 95 6A 73 8F B9
1B A3 80 DA 64 58
57 79 28 7D CA DF
C4 4F C2 D4 21 3E
E2 22 16 87 F6 FD
71 14 FC 2E 1D 1C

Ahora abrimos con worpad el archivo .eml que hemos creado antes. En el ejemplo "Air_BLADES_Legendary.eml". Tenemos que copiar esas claves en el archivo en los primeros seis bytes de los bloques correspondientes (sustituir ceros por claves). Podéis copiar las claves de la ventana del proxmark directamente. No tenéis por qué andar tecleando las claves. Puede parecer un proceso largo y pesado pero se puede hacer bastante rápido: para empezar escribimos la primera clave en el bloque 3 (que es el cuarto ya que el primero es el cero) y luego borramos los 6 primeros bytes del resto de las líneas a modificar sustituyendo "000000000007" por "7" mediante la opción "sustituir todos" del wordpad y así nos los quita todos de una vez. Luego copiamos y pegamos las otras 15 claves de una en una y tampoco se tarda tanto. Nos quedarán espacios en blanco que quitaremos de un plumazo sustituyendo " " por "" (sustituir todos). Guardamos y cerramos el archivo.

6- Ya tenemos listo nuestro volcado con la claves introducidas. Ahora volvemos a grabar el chip escribiendo "hf mf cload Air_BLADES_Legendary" igual que en el paso 3.
[code]pm3 --> hf mf cload Air_BLADES_Legendary
................................................................

[+] Loaded 64 blocks from file: Air_BLADES_Legendary.eml[/code]


7- Y ahora...¡a disfrutar de nuestro skylander clonado! [beer]

Clonar figuras de Swap Force
Las figuras de Swap Force constan de dos partes, la inferior y la superior, unidas por un imán. Cada parte tiene su chip, así que hay que clonarlas por separado. Los archivos necesario están en este google drive y en el caso de las figuras de Swap Force en el nombre del archivo se especifica si es la parte inferior (base) o superior (top). Así pues, habría que clonar cada parte en un chip distinto. Yo he hecho la prueba utilizando un bloque 0 y, por lo tanto, UID distinta para cada clon. Los he puesto sobre la base del juego y me los combina sin problemas (una parte inferior con una superior). Un método posible de clonado es el del punto anterior de este tutorial: "Cómo clonar 550 skylanders de cualquier juego utilizando volcados incompletos (faltan las claves) de otros usuarios".

Cómo hacer un volcado de una figura propia:

Con el método de clonado mencionado anteriormente podemos clonar cerca de 550 skylanders pero puede que nos interese clonar una figura que tenemos y no está entre esos volcados o simplemente queremos hacer un volcado propio. Tenemos tres métodos:

Método antiguo válido con figuras de Spyro's Adventure, Giants, Swap Force, Trap Team y Superchargers:
Bien, lo primero que vamos a hacer, aunque no es estrictamente necesario para seguir el tutorial, es leer el sector 0 de nuestra figura (son chips mifare classic con 16 sectores y cuatro bloques por sector). Para ello utilizaremos el comando "hf mf rdsc 0 4b0b20107ccb". Veremos en pantalla algo así:

pm3 --> hf mf rdsc 0 a 4b0b20107ccb
--sector no:0 key type:A key:4B 0B 20 10 7C CB

isOk:01
data   : 1F CA 9E 6F 24 81 01 0F C4 33 00 00 00 00 00 14
data   : 57 0D 00 00 00 00 00 00 00 00 00 00 00 41 CD 8C
data   : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
trailer: 00 00 00 00 00 00 0F 0F 0F 69 00 00 00 00 00 00


Ya tenemos identificada nuestra figura. En el ejemplo, el bloque 0 de la figura es 1F CA 9E 6F 24 81 01 0F C4 33 00 00 00 00 00 14. Ahí está la UID de nuestar figura (los primeros 4 bytes). Ahora lo que vamos a hacer es un volcado de nuestra figura con el comando "script run tnp3dump -p":

pm3 --> script run tnp3dump -p
[+] Executing: tnp3dump.lua, args '-p'

----------------------------------------
----------------------------------------
#db# Debug level: 0
Found tag NXP MIFARE TNP3xxx Activision Game Appliance
Reading blocks > 8,9,10,12,13,14,16,17,18,20,21,36,37,38,40,41,42,44,45,46,48,49,
----------------------------------------
Wrote a BIN dump to:  toydump_2019-01-05_103754-1FCA9E6F.bin
Wrote a EML dump to:  toydump_2019-01-05_103754-1FCA9E6F.eml
----------------------------------------
            ITEM TYPE : nil - SUPER~SHOT~STEALTH~ELF (LIFE)
                  UID : 0x1FCA9E6F
               CARDID : 0x0000000000000000
----------------------------------------

[+] Finished


Dentro de ese volcado están las claves de nuestra figura (la que solamente nosotros tenemos; no el modelo) y su contenido. Ahora vamos a crear un clon en una magic card. Ponemos la tarjeta/chip sobre el proxmak y utilizamos el comando "hf mf cload file" poniendo en lugar de "file" el nombre del archivo creado en el paso anterior:

pm3 --> hf mf cload toydump_2019-01-05_103754-1FCA9E6F
................................................................

[+] Loaded 64 blocks from file: toydump_2019-01-05_103754-1FCA9E6F.eml


Ya tenemos un clon pero no hemos acabado. Ese clon tiene el sector 0 correcto (el que hemos leído antes) pero no pasa lo mismo con el resto de sectores. Tras crear el clon intuyo que no es uno "virgen" sino que en ciertos bloques hay algún tipo de información guardada por haber sido ya utilizado el original y al utilizarlo es posible que nos dé error. Tenemos dos opciones. Lo más práctico para poder utilizar nuestro clon es ponerlo sobre la base del juego y cuando nos proponga restaurar la figura (mi juego Superchargers me da la opción), hacerlo. Otra opción válida es poner a cero los bloques 0, 1 y 2 de todos los sectores salvo el sector 0 (¡dejad el sector 0 como está!). Es decir, serían los bloques 4, 5, 6, 8, 9, 10,12, 13, 14, 16, 17, 18, 20, 21, 22, 24, 25, 26, 28, 29, 30, 32, 33, 34, 36, 37, 38, 40, 41, 42, 44, 45, 46, 48, 49, 50, 52, 53, 54, 56, 57, 58, 60, 61, 62. Realmente no hace falta ponerlos todos a cero sino asegurarnos de que están a cero y si no, cambiarlos. Por ejemplo, leemos el sector 1 de nuestro clon:

pm3 --> hf mf cgetsc 1

  # | data    |  Sector | 01/ 0x01
----+------------------------------------------------
  4 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  5 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  6 | 80 28 F6 7E 68 00 BD 00 00 00 00 00 00 00 00 00
  7 | CA FA D3 FB E1 E1 7F 0F 08 69 00 00 00 00 00 00

Ahí vemos que el bloque 6 no está a cero (es 7 es normal que no lo esté). Pues lo ponemos a cero tal que así (son 16 bytes; 32 ceros):

pm3 --> hf mf csetblk 6 00000000000000000000000000000000
--block number: 6 data:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


No hace falta verificarlo pero podéis hacerlo volviendo a leer el sector

pm3 --> hf mf cgetsc 1

  # | data    |  Sector | 01/ 0x01
----+------------------------------------------------
  4 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  5 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  6 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  7 | CA FA D3 FB E1 E1 7F 0F 08 69 00 00 00 00 00 00

Hacéis lo mismo para el resto de sectores (el último es el 15), poniendo a cero todos los bloques que no sean el cuarto bloque (en realidad, el bloque 3 por ser el primero el cero) de ese sector. Lleva un ratillo (recordad que con el cursor podemos utilizar y/o editar los comandos utilizados previamente) pero tras ello el juego nos dejará utilizar el clon sin tener que restaurarlo. No creo que el editar a cero y restaurar sean equivalentes puesto que tras restaurar hay sectores que no están a cero pero el caso es que ambos métodos me funcionan en distintas partidas y consolas.

En las últimas figuras Activision ha incluido "checksums" en algunos bloques por lo que este método no funciona con figuras de Imaginators.

Y ya por último, ¡a disfrutar de nuestra figura clonada!

Nuevo método que sirve con figuras de todos los juegos, Imaginators inclusive:
Empezamos por leer el sector 0 de nuestra figura original, Ponemos la figura sobre el proxmark3 y usamos el comando "hf mf rdsc 0 a 4b0b20107ccb".
pm3 --> hf mf rdsc 0 a 4b0b20107ccb
--sector no:0 key type:A key:4B 0B 20 10 7C CB

isOk:01
data   : 3F 8F C1 9B EA 81 01 0F C4 25 00 00 00 00 00 15
data   : 65 02 00 00 00 00 00 00 00 00 00 00 00 50 B1 1F
data   : D8 D0 5A E3 8C EC 54 E8 B6 3E 74 79 1E B4 CC EE
trailer: 00 00 00 00 00 00 0F 0F 0F 69 00 00 00 00 00 51


Ahí vemos los bloques 0-3. Quitamos la figura del proxmark3 y ponemos una magic card gen 1a encima. Vamos a ponerle el bloque 0 de nuestra figura original. Utilizando la información del ejemplo sería utilizando el comando "hf mf csetblk 0 3F8FC19BEA81010FC425000000000015":
pm3 --> hf mf csetblk 0 3f8fc19bea81010fc425000000000015
--block number: 0 data:3F 8F C1 9B EA 81 01 0F C4 25 00 00 00 00 00 15


Ahora en el proxmark3 vamos a utilizar un script del fork de Iceman para averiguar las 15 claves de los sectores 1-15. El script se llama "tnp3clone" y está en la ruta ProxSpace/pm3/client/scripts. En el client del proxmark escribimos "script run tnp3clone -t 1000 -s 0030":
pm3 --> script run tnp3clone -t 1000 -s 0030
[+] Executing: tnp3clone.lua, args '-t 1000 -s 0030'

----------------------------------------
----------------------------------------
Looking up input: Found Spyro - regular (magic)
--wipe card:YES  uid:3F 8F C1 9B
[+] old block 0:  3F 8F C1 9B EA 81 01 0F C4 25 00 00 00 00 00 15
[+] new block 0:  3F 8F C1 9B EA 08 04 00 C4 25 00 00 00 00 00 15
[+] old UID:00 00 00 00
[+] new UID:3F 8F C1 9B
--block number: 1 data:10 00 00 00 00 00 00 00 00 00 00 00 00 30 92 0F
--block number: 3 data:4B 0B 20 10 7C CB 7F 0F 08 69 00 00 00 00 00 00
--block number: 7 data:30 F8 9D 26 8E 72 7F 0F 08 69 00 00 00 00 00 00
--block number:11 data:16 95 49 75 59 B1 7F 0F 08 69 00 00 00 00 00 00
--block number:15 data:85 A3 A3 DC B2 50 7F 0F 08 69 00 00 00 00 00 00
--block number:19 data:C9 79 0B 7B 1C D7 7F 0F 08 69 00 00 00 00 00 00
--block number:23 data:5A 4F E1 D2 F7 36 7F 0F 08 69 00 00 00 00 00 00
--block number:27 data:7C 22 35 81 20 F5 7F 0F 08 69 00 00 00 00 00 00
--block number:31 data:EF 14 DF 28 CB 14 7F 0F 08 69 00 00 00 00 00 00
--block number:35 data:77 A0 8E 67 96 1B 7F 0F 08 69 00 00 00 00 00 00
--block number:39 data:E4 96 64 CE 7D FA 7F 0F 08 69 00 00 00 00 00 00
--block number:43 data:C2 FB B0 9D AA 39 7F 0F 08 69 00 00 00 00 00 00
--block number:47 data:51 CD 5A 34 41 D8 7F 0F 08 69 00 00 00 00 00 00
--block number:51 data:1D 17 F2 93 EF 5F 7F 0F 08 69 00 00 00 00 00 00
--block number:55 data:8E 21 18 3A 04 BE 7F 0F 08 69 00 00 00 00 00 00
--block number:59 data:A8 4C CC 69 D3 7D 7F 0F 08 69 00 00 00 00 00 00
--block number:63 data:3B 7A 26 C0 38 9C 7F 0F 08 69 00 00 00 00 00 00

Esas claves solamente valen para la esa UID (la de la figura que solamente nosotros tenemos) así que no las voy a ocultar. Las claves son los 6 primeros bytes de todas las líneas salvo la que dice "block number :1 data". Esas claves tenemos que pegarlas en un documento de worpad para luego generar un diccionario. Yo lo que hago es crear uno para cada tipo de juego. Es decir, esa figura pertenece a Imaginators. Pues abro un documento de worpad llamado "Imaginators" y pego las claves:

4b0b20107ccb
30F89D268E72
1695497559B1
85A3A3DCB250
C9790B7B1CD7
5A4FE1D2F736
7C22358120F5
EF14DF28CB14
77A08E67961B
E49664CE7DFA
C2FBB09DAA39
51CD5A3441D8
1D17F293EF5F
8E21183A04BE
A84CCC69D37D
3B7A26C0389C

Ahora guardamos el archivo como "Imaginators.dic" (¡cuidado! ha de ser un archivo .dic y no un archivo .txt; no guardéis algo como "Imaginators.dic.txt") y lo guardamos en la ruta ProxSpace/pm3/. Comprobamos que las hemos copiado bien usando nuestra figura (ponedla encima del proxmark3) con el comando “hf mf chk *1 a d Imaginators.dic” (la columna izquierda ha de estar completa; ver más abajo). Creará un archivo.bin con las claves de nuestra figura. En el ejemplo el archivo es “hf-mf-3F8FC19B-key.bin”:
pm3 --> hf mf chk *1 a d Imaginators.dic
[+] Loaded 46 keys from Imaginators.dic
................
Time in checkkeys: 9 seconds

testing to read key B...
Reading block 3
Data:00 00 00 00 00 51
Reading block 7
Reading block 11
Reading block 15
Reading block 19
Reading block 23
Reading block 27
Reading block 31
Reading block 35
Reading block 39
Reading block 43
Reading block 47
Reading block 51
Reading block 55
Reading block 59
Reading block 63
|---|----------------|---|----------------|---|
|sec|key A           |res|key B           |res|
|---|----------------|---|----------------|---|
|000|  4b0b20107ccb  | 1 |  000000000051  | 1 |
|001|  30f89d268e72  | 1 |  ------------  | 0 |
|002|  1695497559b1  | 1 |  ------------  | 0 |
|003|  85a3a3dcb250  | 1 |  ------------  | 0 |
|004|  c9790b7b1cd7  | 1 |  ------------  | 0 |
|005|  5a4fe1d2f736  | 1 |  ------------  | 0 |
|006|  7c22358120f5  | 1 |  ------------  | 0 |
|007|  ef14df28cb14  | 1 |  ------------  | 0 |
|008|  77a08e67961b  | 1 |  ------------  | 0 |
|009|  e49664ce7dfa  | 1 |  ------------  | 0 |
|010|  c2fbb09daa39  | 1 |  ------------  | 0 |
|011|  51cd5a3441d8  | 1 |  ------------  | 0 |
|012|  1d17f293ef5f  | 1 |  ------------  | 0 |
|013|  8e21183a04be  | 1 |  ------------  | 0 |
|014|  a84ccc69d37d  | 1 |  ------------  | 0 |
|015|  3b7a26c0389c  | 1 |  ------------  | 0 |
|---|----------------|---|----------------|---|
Printing keys to binary file hf-mf-3F8FC19B-key.bin...
Found keys have been dumped to file hf-mf-3F8FC19B-key.bin. 0xffffffffffff has been inserted for unknown keys.


Utilizamos “hf mf dump” para hacer un volcado tipo .bin. Siguiendo con el ejemplo, el archivo que nos da es “hf-mf-3F8FC19B-data.bin”:
pm3 --> hf mf dump
|-----------------------------------------|
|------ Reading sector access bits...-----|
|-----------------------------------------|
|-----------------------------------------|
|----- Dumping all blocks to file... -----|
|-----------------------------------------|
[+] successfully read block  0 of sector  0.
[+] successfully read block  1 of sector  0.
[+] successfully read block  2 of sector  0.
[+] successfully read block  3 of sector  0.
[+] successfully read block  0 of sector  1.
[+] successfully read block  1 of sector  1.
[+] successfully read block  2 of sector  1.
[+] successfully read block  3 of sector  1.
[+] successfully read block  0 of sector  2.
[+] successfully read block  1 of sector  2.
[+] successfully read block  2 of sector  2.
[+] successfully read block  3 of sector  2.
[+] successfully read block  0 of sector  3.
[+] successfully read block  1 of sector  3.
[+] successfully read block  2 of sector  3.
[+] successfully read block  3 of sector  3.
[+] successfully read block  0 of sector  4.
[+] successfully read block  1 of sector  4.
[+] successfully read block  2 of sector  4.
[+] successfully read block  3 of sector  4.
[+] successfully read block  0 of sector  5.
[+] successfully read block  1 of sector  5.
[+] successfully read block  2 of sector  5.
[+] successfully read block  3 of sector  5.
[+] successfully read block  0 of sector  6.
[+] successfully read block  1 of sector  6.
[+] successfully read block  2 of sector  6.
[+] successfully read block  3 of sector  6.
[+] successfully read block  0 of sector  7.
[+] successfully read block  1 of sector  7.
[+] successfully read block  2 of sector  7.
[+] successfully read block  3 of sector  7.
[+] successfully read block  0 of sector  8.
[+] successfully read block  1 of sector  8.
[+] successfully read block  2 of sector  8.
[+] successfully read block  3 of sector  8.
[+] successfully read block  0 of sector  9.
[+] successfully read block  1 of sector  9.
[+] successfully read block  2 of sector  9.
[+] successfully read block  3 of sector  9.
[+] successfully read block  0 of sector 10.
[+] successfully read block  1 of sector 10.
[+] successfully read block  2 of sector 10.
[+] successfully read block  3 of sector 10.
[+] successfully read block  0 of sector 11.
[+] successfully read block  1 of sector 11.
[+] successfully read block  2 of sector 11.
[+] successfully read block  3 of sector 11.
[+] successfully read block  0 of sector 12.
[+] successfully read block  1 of sector 12.
[+] successfully read block  2 of sector 12.
[+] successfully read block  3 of sector 12.
[+] successfully read block  0 of sector 13.
[+] successfully read block  1 of sector 13.
[+] successfully read block  2 of sector 13.
[+] successfully read block  3 of sector 13.
[+] successfully read block  0 of sector 14.
[+] successfully read block  1 of sector 14.
[+] successfully read block  2 of sector 14.
[+] successfully read block  3 of sector 14.
[+] successfully read block  0 of sector 15.
[+] successfully read block  1 of sector 15.
[+] successfully read block  2 of sector 15.
[+] successfully read block  3 of sector 15.
[+] dumped 64 blocks (1024 bytes) to file hf-mf-3F8FC19B-data.bin


Ahora pasamos ese archivo .bin a formato .eml mediante el comando "script run dumptoemul". -i significa inpunt y -o es output. En el ejemplo el inpunt es hf-mf-3F8FC19B-data.bin y al output lo podemos llamar como queramos; yo le llamaré Golden_Queen (no se pueden dejar espacios en el nombre):
pm3 --> script run dumptoemul -i hf-mf-3F8FC19B-data.bin -o Golden_Queen.eml
[+] Executing: dumptoemul.lua, args '-i hf-mf-3F8FC19B-data.bin -o Golden_Queen.eml'

Wrote an emulator-dump to the file Golden_Queen.eml

[+] Finished

Estamos acabando. Quitamos la figura original de encima del proxmark3 y ponemos la magic card de antes. Hacemos un clon mediante "hf mf cload Golden_Queen" (sustituid Golden_Queen por el nombre de vuestro volcado .eml):
pm3 --> hf mf cload Golden_Queen
................................................................

[+] Loaded 64 blocks from file: Golden_Queen.eml


Y ya por último...¡A disfrutra de nuestra figura clonada! [beer]

Un apunte; los archivos .bin que genera el proxmark3 al hacer volcados tal cual están también valen para hacer clones con un acr122u.

Simular un skylander con el Proxmark3
Podemos cargar en memoria del emulador del Proxmark3 el archivo .eml correspondiente a un skylander y hacerle creer al juego que hemos puesto un chip (clon u original) sobre la base. Para ello nos hace falta que el archivo .eml del skylander contenga las claves. El proceso el la mar de sencillo. Cargamos en memoria del emulador el archivo mediante "hf mf eload nombredelarchivo". En el ejemplo de debajo cargo Blackout de Trap Team.
pm3 --> hf mf eload Blackout
................................................................

[+] Loaded 64 blocks from file: Blackout.eml

Después le decimos al Proxmak3 que simule al skylander y que no interrumpa la emulación (salvo que carguemos otro comando o apretemos el botón del Proxmark3)
pm3 --> hf mf sim i
uid:N/A, numreads:0, flags:19 (0x13)
Press pm3-button or send another cmd to abort simulation

Ahora ponemos el Proxmark3 volteado sobre la base y el juego detectará al skylander sin problemas. He incluído esta parte del tutorial por si le viene bien a alguien en algún momento. Puede servir para comprobar un archivo .eml (recordad, con claves) si no tenemos un chip a mano o para utilizar una sola vez algún skylander o item que desbloquee un nivel... Si jugamos con un skylander de esta manera y queremos guardar los cambios (apariencia, nivel, etc.), tendríamos que volcar el contenido del emulador con el comando "hf mf esave nombredelarchivo"
pm3 --> hf mf esave Blackout
................................................................

[+] Saved 64 blocks to file: Blackout.eml

PARTE TRES. ALGUNAS UTILIDADES PARA PC:

Hacer volcados mediante la aplicación Skydumper (en este método los volcados son sin claves):

Necesitamos el programa para windows Skydumper, una base con cable usb, un PC windows y la figural original a clonar. Tenéis un video ilustrativo del proceso aquí (es de lo más sencillo):
https://www.youtube.com/watch?v=3WROrYrr1ho
Hacemos un volcado con "Skydumper.exe -o SkylanderName.bin" (ver video). No tiene más misterio. Si luego quisiéramos usar ese volcado para grabar un chip, tendríamos que calcular las claves y hacer un clon al igual que en el punto "Cómo clonar 550 skylanders de cualquier juego utilizando volcados incompletos (faltan las claves) de otros usuarios" de este tutorial.

Cómo resetear un cristal de Imaginators:
Necesitamos el programa para windows Skydumper, una base con cable usb, un PC windows y el cristal original a resetear. Tenéis un video ilustrativo del proceso aquí (es de lo más sencillo):
https://www.youtube.com/watch?v=3WROrYrr1ho
Hacemos un volcado con "Skydumper.exe -o SkylanderName.bin" (ver video) y luego se resetea con "Skydumper.exe -i SkylanderName.bin -r". No tiene más misterio.

Si luego nos interesa crear un volcado de ese cristal original reseteado, tendríamos que seguir la parte del tutorial "cómo hacer un volcado de una figura propia". Si el cristal (o figura) reseteado no es original sino un clon (magic tag), bastaría con usar el comando "csave 1 o" en el proxmark3 poniendo detras de la letra o el nombre que le queremos dar al archivo (en el siguiente ejemplo llamo "reset" al archivo):
pm3 --> hf mf csave 1 o reset
[+] Saving magic mifare 1K
................................................................

[+] Saved 64 blocks to file: reset.eml
[+] Saved 64 blocks to file: reset.bin

Poner las estadísticas al máximo mediante Skylanders GUI Tool (solamente los primeros juegos)
Nos bajamos la aplicación Skylander GUI Tool de aquí. Ésa es la versión 3.0. Desconozco si existen versiones posteriores pero si encontrase una, actualizaría el enlace. El uso de la aplicación es muy sencillo. Ponemos un clon creado con el proxmark3 sobre la base del juego conectada al ordenador y, al hacerlo, la base lo lee automaticamente sin necesidad de pulsar nada. Luego, simplemente:

1- Pulsamos el botón "Level UP" y pone todas las estadísticas al máximo.
2- Vamos a la pestaña "Portal" y elegimos "Write Figure".

¡Y ya está! Nustra figura tiene el nivel y todas las estadísticas al máximo.
Imagen

Un par de apuntes; también se puede hacer con figuras originales pero en tal caso recomiendo hacer primero una copia de seguridad (pestaña "File"==>"Save Figure") por lo que pudiera pasar. La aplicación es del año 2013 por lo que no tiene todas las figuras en la base de datos. He subido correctamente a nivel 20 53 clones de Spyro's Adventure y Giants y solamente no lo he conseguido con 8. Aún no he hecho la prueba con figuras de Swap Force ni Trap Team pero adelanto que no reconoce las de Superchargers e Imaginators.
Hilo actualizado con un tutorial :D.

Por cierto, este es mi mensaje 1943 en EOL.
zantzue escribió:Hilo actualizado con un tutorial :D.

Por cierto, este es mi mensaje 1943 en EOL.


Gran trabajo Zantzue !!!

Las fuentes de donde sacaste el algoritmo de cifrado, ¿se pueden saber?
El algoritmo lo encontré aquí pero al final he utilizado el script tnp3dump que viene dentro del "fork" de Iceman que calcula las claves a partir de la UID de nuestra figura.
Finalmente te has pasado unas Navidades muy entretenidas .... [plas] [plas]

Gracias por el curro y por las explicaciones .... aunque no entiendo ni la mitad de las palabras que usas [qmparto] [qmparto]

Un saludo [beer]
¡Ya te digo! De todo menos aburrirme he hecho. Al final, no es tan complicado. Lo jodido es que la información sobre clonar las figuras no está recopilada ni es pública en ninguna parte, el aparato viene sin manual, en el foro de proxmark te sueltan la información con cuentagotas...¡si es que te responden! En ese foro hay un hilo cerrado sobre las figuras pero muchas veces son muy crípticos y comparten información por privado. Al final he atado cabos mirando lo que hace el script, mirando mis volcados y otros volcados que encontré por ahí. Si te animas a hacerte con un proxmark3, te podría ayudar con las figuras de Skylanders (con las de DI sigo en la pelea).
zantzue escribió:Si te animas a hacerte con un proxmark3, te podría ayudar con las figuras de Skylanders (con las de DI sigo en la pelea).


Te lo agradezco pero ni recuerdo la última vez que mi hijo quiso jugar a ese juego, y a mi no me va, con lo que de momento creo que no voy a invertir dinero en él.

Un saludo [beer]
¡Ello que te ahorras! Hoy me han llegado los juegos Swap Force y Trap Team (los he conseguigo a 5€ cada uno, con base, en muy buen estado y con puntos del Club Nintendo sin rascar), he probado varios clones compatibles con esos juegos y me los pilla sin problema :D
¿En el Trap Team cómo clonas las trampas para atrapar a los villanos? (mera curiosidad)

Lo digo por la forma que tienen que no es un círculo como los personajes
@Tito_CO
El proceso de clonado es el mismo. Hice la prueba con el juego Superchargers que también tiene agujero para meter las trampas y lo detectó. Es decir, puse el clon (tamaño tarjeta de crédito) sobre el agujero y el juego me decía que tenía equipada una trampa en el vehículo. Hoy tengo un día ocupado pero mañana a más tardar hago la prueba con el juego Trap Team aprovechando que acabo de conseguir una copia del juego y la base correspondiente.
Gracias por la aclaración, no sabía a que distancia leía la base
Se me pasó hacer la prueba y responderte [ayay] . Hoy he clonado seis trampas de distintos elementos y las he probado con el juego Trap Team. Ningún problema. Se ponen encima del agujero y las detecta. La semana que viene igual no pero para la siguiente espero tener en casa chips formato moneda y también haré la prueba a ver qué tal van.

Edito: En Game está el starter pack de Imaginators para la Wii U a 20€. Si lo bajaran a 10€, me compraría un pack e intentaría clonar las figuras a ver si se dejan.
Ya vengo del fin se semana esperando ver tus avances en el tema por mero marujeo [+risas] [+risas]

Saludos [beer]
@zantzue ¿qué tarjetas utilizas para el clonado?
@ser18534
Mifare classik 1k con UID regrabable. Son magic cards gen1 (se puede cambiar la UID y el contenido tantas veces como se quiera). Las tarjetas que compré son éstas pero estoy a la espera de otras en formato moneda y ya os contaré qué tal van.
zantzue escribió:@ser18534
Mifare classik 1k con UID regrabable. Son magic cards gen1 (se puede cambiar la UID y el contenido tantas veces como se quiera). Las tarjetas que compré son éstas pero estoy a la espera de otras en formato moneda y ya os contaré qué tal van.


[beer] [oki]
@ser18534
Una indiscreción... He visto que compraste Imaginators para la Switch. ¿Cuántas figuras tienes en total? Que sean solo para Imaginators, me refiero (cristales, senseis...).
zantzue escribió:@ser18534
Una indiscreción... He visto que compraste Imaginators para la Switch. ¿Cuántas figuras tienes en total? Que sean solo para Imaginators, me refiero (cristales, senseis...).


Feel free de preguntar ;) si te puedo ayudar en cualquier cosa me dices. Cristales tengo 4, senseis unos 10 aprox. [beer]

En su día estuve muy interesado en el tema de clonación de figuras Skylanders pero información había muy poquita.
Bueno, acabo de comprar en Game el starter pack de Imaginators así que pasado mañana espero tenerlo aquí. Por querer ahorrarme 10€ no me voy a quedar con la duda durante meses y además me sirven las figuras de los juegos anteriores así que bien gastado estará. A lo mejor no consigo clonar las figuras porque sé que Activisión cambió algo en el último juego. Sé que ha introducido unos checksums en algunos bloques y que Maxlander no funciona con esas figuras. Lo que no sé es si Maxlander hacía clones exactos o encriptaba la información para otra UID como hacemos con LEGO Dimensions, por ejemplo. Yo uso magic cards así que si el algoritmo que calcula las claves de los sectores sigue siendo el mismo (todo depende de eso), creo que podría utilizar las claves para leer todo el contenido de una figura, checsums incluidos y hacer un clon 1:1 (salvo por el hecho de que las magic cards responden a comandos de puerta trasera y son detectables pero no me consta que las bases hagan esa comprobación). El fin de semana saldremos de dudas. Si lo consigo, que no prometo nada, os lo diría. Crucemos los dedos.

Edito: @ser18534
Si lo consigo, te pediría tu colaboración. Es por eso que te he preguntado los de las figuras. Tengo algo en mente pero no quiero adelantar nada así que de momento me voy a callar :-| .
@zantzue Por supuesto, colaboraré en lo que pueda o esté en mi mano [beer]
@ser18534 @Tito_CO
Me ha costado un rato largo pero he conseguido clonar un sensei: Master King Pen. La parte buena es que el sector 0 sigue teniendo la misma key A que el resto de figuras y puedo usar el mismo script para calcular las otras 15 claves. Me he fijado en que tengo que modificar una línea en el script para las figuras de los imaginators pero eso no es problema. Lo malo es que hay lo que parecen ser un montón de checksums y el script no me los genera así que he tenido que leer los 16 sectores uno por uno gracias a que tengo las claves y luego modificar a mano en mi clon todas las líneas que no son nulas, y no son pocas. La de hoy ha sido la primera prueba. Se pueden clonar, que no es poco. Ahora gracias a que tengo las claves de mi figura tengo que averiguar cómo hacer un volcado pasándoselas al proxmark para luego poder hacer un clon más rapidamente porque lo de hoy ha sido un proceso largo en el que como te equivoques en un caracter hexadecimal, la cagaste. Ahora mismo están jugando mis hijos con el clon y el juego se lo ha tragado sin necesidad de restaurarlo ni nada. Cuando tenga tiempo os digo cómo me podéis ayudar ya que tendré que preparar una especie de minitutorial o algo y ahora no tengo tiempo.

Edito: Mi plan de pediros ayuda se va al traste; no consigo que ninguna aplicación de móvil lea siquiera el bloque 0 de las figuras. Para ese bloque no hace falta contraseña ni nada pero no consigo que las aplicaciones detecten el tipo de chip correctamente a pesar de que yo sé que son miifare classic. Por lo tanto, no os puedo pedir que leais el bloque 0 de las figuras y no puedo yo calcular el resto de claves. Luego habría que hacer más cosas pero da igual puesto que ni siquiera podemos empezar a hacer nada. Si no os haceis con un proxmark3 no veo la forma de ayudaros a hacer clones de vuestras figuras. Si se me ocurriera algo, os lo haría saber.

Edito: He conseguido agilizar el proceso de clonado de las figuras de Imaginators. Ahora tardo bastante menos (aunque tardo un ratillo). Tengo que actualizar el primer mesaje de este hilo pero lo que hago es utilizar el script para calcular las claves, las copio en un archivo llamado "mydictionary.dic", le digo al proxmark que lea los sectores usando el diccionario para asegurarme de que he copiado bien las claves, luego hago un volcado en formato. bin, le digo que lo pase a .eml y luego hago el clon. Así no tengo que andar editando un montón de bloques del clon con el riesgo de meter la pata en algún caracter y que luego no funcione. A ver si el fin de semana actualizo el primer mensaje.
@zantzue gran trabajo !!! se te agradece el esfuerzo que estás realizando. De momento, no está en mis planes hacerme con un proxmark3, básicamente porque no dispondo del tiempo para trastear y aunque lo tuviera, el tema de algoritmos y cifrados me queda grande. Seguiré atento al hilo por si hay avances [beer]
También he clonado el sensei Golden Queen y un cristal de fuego. Con el nuevo método ya no es tan complicado aunque hacen falta unos minutillos. Como de costumbre, clonar y usar; no hace falta tener que restaurar ni nada. A ver si se me ocurre algo para que podáis leer el sector cero de vuestras figuras con un móvil android con NFC y poder meterles mano. Seguiremos investigando...

Edito: Se supone que usando la aplicación TagInfo de GooglePlay deberíamos poder escanear nuestras figuras (leer al menos el tipo de chip, ATQA, SAK y la UID; la información de lectura que no requiere contraseñas). La información la he sacado de https://nfc.toys/#skylanders-and-android-phones. Mi móvil, no sé por qué, no termina de reconocer el tipo de chip. Es como si se bloqueara. Será que está viejuno (tiene muchos años y una versión de android antigua). Si alguien con una figura de Imaginators tiene a bien bajarse la aplicación, yo le diría por mp cómo leer el sector 0 de su figura y a partir de ahí yo podría calcular las 15 contraseñas restantes y dárselas para leer el contenido completo de su figura.
zantzue escribió:También he clonado el sensei Golden Queen y un cristal de fuego. Con el nuevo método ya no es tan complicado aunque hacen falta unos minutillos. Como de costumbre, clonar y usar; no hace falta tener que restaurar ni nada. A ver si se me ocurre algo para que podáis leer el sector cero de vuestras figuras con un móvil android con NFC y poder meterles mano. Seguiremos investigando...

Edito: Se supone que usando la aplicación TagInfo de GooglePlay deberíamos poder escanear nuestras figuras (leer al menos el tipo de chip, ATQA, SAK y la UID; la información de lectura que no requiere contraseñas). La información la he sacado de https://nfc.toys/#skylanders-and-android-phones. Mi móvil, no sé por qué, no termina de reconocer el tipo de chip. Es como si se bloqueara. Será que está viejuno (tiene muchos años y una versión de android antigua). Si alguien con una figura de Imaginators tiene a bien bajarse la aplicación, yo le diría por mp cómo leer el sector 0 de su figura y a partir de ahí yo podría calcular las 15 contraseñas restantes y dárselas para leer el contenido completo de su figura.


Yo tengo la aplicación pero no tengo figuras del imaginators [triston]
@Tito_CO
Ainss. ¡Qué pena!

Ya me han llegado estos chips formato moneda. Los he escaneado con el proxmark y son magic cards gen1a tal y como quería. Es decir, se puede cambiar tanto el contenido como la UID tantas veces como se quiera (a los gen2 se les puede cambiar la UID incluso mediante el móvil pero tan solo una vez y no es eso lo que quiero):

pm3 --> hf search
UID : 8B FD AC 3C
ATQA : 00 04
SAK : 08 [2]
TYPE : NXP MIFARE CLASSIC 1k | Plus 2k SL1 | 1k Ev1
[=] proprietary non iso14443-4 card found, RATS not supported
[+] Answers to magic commands (GEN 1a): YES
[+] Prng detection: WEAK

[+] Valid ISO14443-A Tag Found

He grabado el Skylander Golden Queen aprovechando que ayer además de hacer un clon guardé un archivo .eml listo para usar con el proxmark y funciona en el juego sin problemas. Por cierto, he encontrado estos portamonedas de 26mm de diámetro interior y quedan mejor que los de 27mm que he estado usando con los LEGO Dimensions. Luego tengo que ir a la imprenta a hacer pegatinas. A ver si mañana o pasado subo fotos.
Primera tanda de Superchargers. Todos funcionan correctamente. Mañana más.
Imagen


Edito: He completado y comprobado todos los personajes y vehículos de Superchargers; 70 en total. "Foto de familia":
Imagen


Edito: Primer mensaje actualizado con un método que vale para las figuras de cualquier juego, Imaginators incluido

Edito: Hasta ahora he estado utilizando el script tnp3clone para sacar las claves de los sectores pero se supone que vale para algo más que para eso. Tras varias semanas he conseguido atar cabos de qué debería ser cambiado en el script para que funcione tal y como debería. Necesitaba tres cambios; dos los he podido hacer yo directamente y el tercero no podía escribirlo porque no se escribir scripts .lua (aunque sé qué era lo que le faltaba al script por hacer). Le he propuesto los cambios a Iceman, los hemos implementado y ahora ya se le puede sacar todo el provecho:

1- Se graba en una magic card el bloque 0 de una figura original que tengamos (vale cualquiera de cualquier juego)
2- Utilizamos el script y le pasamos dos parámetros: el tipo y el subtipo de Skylander que queremos.

Y con ello nos genera, atención, cualquier Skylander que sea de Spyro´s Adventure, Giants, Swap Force, Trap Team o Superchargers (Imaginators no por tener checsums en diversos bloques). :D

Edito: Ahora mismo acabo de hacer una prueba. Tengo un cristal de fuego original de Imaginators. Sé que no se pueden resetear así que hice una copia de seguridad antes de usarlo (sigue estando sin usar). He grabado un clon del cristal, he creado un Skylander en el juego usando el clon, he creado una copia digital del clon con el Skylander que he creado y he comparado ambos archivos. Creo que con poner a cero los bloques que han cambiado bastaría para crear cristales sin usar. Es decir, si tenemos un cristal original que ya ha sido usado y no puede cambiar el tipo de Skylander, podemos hacer una copia .bin, editar/poner a cero ciertos bloques, grabar un clon de la copia editada y tendríamos un cristal sin usar en nuestra magic card. Creo que hasta se podrían editar los originales pero prefiero no hacer la prueba.
Eres un crack.

Espero que tu esfuerzo sirva para que mucha gente pueda beneficiarse de clonar las figuras

Gracias de nuevo
@Tito_CO
Gracias por el cumplido. Si alguien se anima, el camino ya está abierto así que le podría ayudar. Ahora mismo estoy pensando en hacerme con siete cristales más para Imaginators (agua, tierra, aire, magía, tecnología, vida y muertos) para tener un total de 8 (luz y oscuridad no los encuentro baratos), hacer clones a tutiplén y diseñar Skylanders con mis hijos sin tener que estar siempre con la misma clase de guerrero (se puede resetear la figura pero una vez que se elige la clase no se puede cambiar; el juego te avisa que es una decisión única). Bueno, no se puede cambiar con el juego. Con el proxmark3 me apostaría algo a que sí pero dejaré mis cristales originales sin estrenar (más allá de sacarlos de la caja).
@zantzue
Enhorabuena por el currazo, voy a probarlo yo también.

Por cierto donde has imprimido las pegatinas para las fichas nfc? no encuentra ninguna que puedan imprimir idseños distintos y a este tamaño pequeño :S
@ Sidecar942
¡Gracias! Las pegatinas las imprimo todas de una vez en un DIN A3. Imprimo 140 pegatinas (hasta se pueden meter más pero no he apurado tanto) y luego las corto con esto (elegir el modelo circular). Pago 1,20€ así que me sale a menos de 1 céntimo la pegatina [qmparto] .

Edito: He comprado 7 cristales más en Game. Mañana o pasado estan aquí. ¡Voy a hacer clones a tutiplén!

Edito: Estoy en pleno proceso de clonación. Acabo de clonar satisfactoriamente el cristal de no muertos (lo he comprobado "in game") y no solo eso; no ha hecho falta abrir la caja en donde viene así que lo tengo sin estrenar XD . El proxmark3 me los lee poniéndo la caja encima. Seguidamente clono los otros seis...¡Completado!

Edito: Ahora que el script ya funciona correctamente no solo para calcular las claves sino para generar cualquier skylanders de los primeros cinco juegos (hay que pasarle un bloque 0 de un original y no hacía correctamente los cálculos en el caso de utilizar un bloque 0 de las últimas figuras), le he propuesto a Iceman pasarle los volcados de mis 10 figuras (2 senseis y 8 cristales) para que les eche un vistazo a ver si descubre cómo son calculados los nuevos checksums de los Imaginators. Es decir, el objetivo sería modificar el script para que pueda generar skylanders de Imaginators también. Parece que ya tiene información al respecto pero no sabe si tendrá tiempo de mirarlo. Me ha dicho que puedo subir mis volcados a su foro. A ver si los puedo subir hoy y luego a cruzar los dedos. Estoy seguro de que es capaz de hacerlo y adaptar el script pero entre familia y trabajo me imagino que no será fácil sacar tiempo. Voy compartirlos con él para "ponerle la zanahoria delante" XD. Si lo hiciera, de todos modos, no generaría cualquier Imaginator sino solamente aquellos de los que hagamos volcados y compartamos con Iceman. ¡Comprad un proxmark3 y compartid vuestros volcados, malditos! [qmparto]

@ser18534 ¿No podrías instalar en tu móvil la aplicación TagInfo y ver si te lee el tipo de chip en tus senseis? Yo te diría la clave del primer sector y tras algunos pasos podríamos leer la figura completa. Otra opción más sencilla, aunque me imagino no querrás [ayay] , sería que me mandaras tus senseis (no tienes los cristales de luz y/o oscuridad, ¿verdad?) para que los pudiera ler y te los mandaría de vuelta por correo certificado y, aprovechando el envío, te enviaría clones de tus figuras en formato moneda con pegatina y algo más (ya te diría qué por mp). Estoy dispuesto a hacerme yo cargo de ambos envíos certificados, si te fias. Si te da cosa, no pasa nada. Cuantas más figuras consigamos, más opciones habría de mejorar el script del fork de Iceman.
Hola @zantzue !!! Voy siguiendo tus hazañas en este hilo, impresionante como han quedado los clones !!! [oki]

Antes tenía un Galaxy Note 3 con lector NFC que utilizaba con TAGMO para clonar Amiibos pero pasó a mejor vida [decaio] Miraré si alguno de los móviles que hay por casa tiene lector NFC para instalarle el TagInfo y leer los chips de los que tengo.

Por el tema de de enviarte Senseis (no tengo los cristales de luz ni oscuridad) sería aún más fácil y económico hacerlo de otra forma. Luego te comento por privado que me reclaman para ir a comer.
Me dejas intrigado. No se me ocurre ninguna forma más económica, la verdad...Por cierto, ya he subido mis volcados al foro del proxmark. A ver si Iceman saca tiempo y modifica el script.
zantzue escribió:Me dejas intrigado. No se me ocurre ninguna forma más económica, la verdad...Por cierto, ya he subido mis volcados al foro del proxmark. A ver si Iceman saca tiempo y modifica el script.


Ninguno de los móviles que tengo tiene lector NFC [decaio] , no sé si podría utilizar esto para realizar la lectura de los chips. En wallapop podría conseguir uno bien de precio.
Pues no sé si ese lector te serviría. He buscado un poco en Internet pero no encuentro nada. Y si te sirviera para usar con el móvil, todavía habría que ver si tu móvil puede leer el tipo de chip y la UID de tus figuras con él porque mi móvil viejuno se aturulla. Me lee perfectamente figuras de LEGO Dimensions, Disney Infinity, etc. pero la lectura de Skylanders se le atraganta.

Edito: Los videos de Youtube generan beneficios y no están permitidos en EOL. ¿Dónde puedo alojar un video para mostrároslo? No es nada especial. De hecho, todavía no he grabado nada. A lo mejor subo un video donde se ven los clones de los cristales y los senseis en acción para poneros lo dientes largos y a ver si así se anima alguien más a cacharrear conmigo.

Edito: Acabo de clonar sin abrir las cajas los senseis Blaster Tron, Crash Bandicoot y Dr. Neo Cortex. En los próximos días espero poder clonar más senseis.

Edito: Hoy he clonado otros dos senseis. @ser18534 Te estoy haciendo caso.

Edito: Hoy he clonado otros 8 senseis. Lo he intentado con los cofres pero no se pueden clonar sin abrir el envoltorio ya que tienen un recubrimiento metálico cawento Bueno, al final los he abierto y he clonado 9 cofres: 1 de oro, 2 de plata y 6 de bronce.
A ver si la semana que viene me llegan los chips que pedí (200 más) y clono más senseis. Ahora mismo tengo 22 senseis, 9 cristales (dos son dos modelos distintos de tecnología) y 19 cofres. La semana que viene espero clonar otros dos senseis más y le he pedido colaboración a un usuario de nfc-bank que tiene un acr122u al que le he enseñado algunas cosas por mp.

Edito: parece que también se pueden clonar con un acr122u pero como no tengo uno ni sé en qué consiste el proceso, no voy a explicar nada. El usuario me pidió ayuda porque no sabía cómo se podían usar ciertos archivos que hay en Internet con más de 400 skylanders de los primeros juegos. En esos archivos está todo menos las claves y yo sé cómo calcularlas e introducirlas en esos archivos.

Edito:
@ser18534 he convencido al forero del que hablaba antes a seguir tus sabios consejos; tú ya me entiendes. A ver si en una semana aumentamos el número de senseis.
zantzue escribió:A ver si la semana que viene me llegan los chips que pedí (200 más) y clono más senseis. Ahora mismo tengo 22 senseis, 9 cristales (dos son dos modelos distintos de tecnología) y 19 cofres. La semana que viene espero clonar otros dos senseis más y le he pedido colaboración a un usuario de nfc-bank que tiene un acr122u al que le he enseñado algunas cosas por mp.

Edito: parece que también se pueden clonar con un acr122u pero como no tengo uno ni sé en qué consiste el proceso, no voy a explicar nada. El usuario me pidió ayuda porque no sabía cómo se podían usar ciertos archivos que hay en Internet con más de 400 skylanders de los primeros juegos. En esos archivos está todo menos las claves y yo sé cómo calcularlas e introducirlas en esos archivos.

Edito:
@ser18534 he convencido al forero del que hablaba antes a seguir tus sabios consejos; tú ya me entiendes. A ver si en una semana aumentamos el número de senseis.


¿Eso significa que con el acr122u y los ficheros que tienes con las claves sería suficiente para poder clonar cualquier Skylander?

@zantzue, me alegra saber que te esta resultando cómodo el sistema ;) [beer]
@ ser18534 Según me dice el franchute de nfc-bank, así es. ¡Pero qué quieres que te diga! Es mucho más cómodo hacerlo con el proxmark3 porque hay un script que te introduce las claves en los bloques directamente. A ver, es algo que no he incluido en el tutorial porque no quiero líos en EOL pero someramente explicado: con el proxmark3, ahora que iceman ha implementado los cambios que le propuse, le das un bloque 0 de cualquier figura original (antes el script solamente valía para un bloque 0 de las primeras figuras) y te genera el clon de cualquier skylander de los primeros 5 juegos (todos menos Imaginators). Se puede incluso usar siempre el mismo bloque cero (con la misma UID) ya que en la base solamente puede haber una figura a la vez.

Con el acr122u lo que hace ese usuario es calcular las keys (creo que es programador) con un script en linux, me parece, y luego las introduce tal como le he enseñado yo en los 16 bloques correspondientes de los volcados de Maxlander que rulan por Internet. Y como decía Mayra Gómez Kemp, "hasta ahí puedo leer" (yo fui a la EGB). Tardas bastante más así. Yo puedo hacer clones como churros. Los únicos que no podía clonar eran los Imaginators y cada vez tengo más volcados propios. Como dije, tengo 22 senseis, dos más en camino y tres más de la dark edition que he reservado en una tienda. Por 20€ he decidido comprar ese pack ya que además trae tres cristales y un cofre de oro (el cristal de fuego lo tendré repetido, creo). Luego seguramente venderé uno de los starter packs que tengo. Ya os avisaré, si abro un hilo en compra-venta.

Edito: Te has puesto en contacto con él, ¿verdad? El usuario es "stef".

Edito: He puesto el anuncio en un hilo que ya tenía abierto en compra-venta; vendo un starter pack y otros 7 cristales originales a estrenar.

Edito: Reserva del starter pack dark edition cancelada en vista de que los he conseguido de otra manera.
zantzue escribió:
Edito: Te has puesto en contacto con él, ¿verdad? El usuario es "stef".



No, no he contactado con él ni soy usuario del foro que hay en nfc-bank ;)
@ser18534
Es que te ha mencionado por mp. Será que se ha pasado por aquí mirando dónde he escrito yo sobre el tema. Te contaría qué era lo que me decía/proponía pero ya carece de importancia porque tengo bomba informativa: hace media hora otro usuario de ese foro acaba de compartir conmigo lo que parece una colección casi completa de archivos .bin con imaginators. Faltan las claves pero eso no es problema. Con uno de esos archivos he probado a clonar Pain-Yatta, sensei que no tengo, y ha funcionado :D.
zantzue escribió:@ser18534
Es que te ha mencionado por mp. Será que se ha pasado por aquí mirando dónde he escrito yo sobre el tema. Te contaría qué era lo que me decía/proponía pero ya carece de importancia porque tengo bomba informativa: hace media hora otro usuario de ese foro acaba de compartir conmigo lo que parece una colección casi completa de archivos .bin con imaginators. Faltan las claves pero eso no es problema. Con uno de esos archivos he probado a clonar Pain-Yatta, sensei que no tengo, y ha funcionado :D.


Excelente noticia! Entonces, se puede decir que ya tienes la colección a full? Incluidos aquellos que nunca llegaron a España y de ediciones limitadas?
@ser18534
Ahora mismo tengo 43/44 senseis (falta Flare Wolf pero no importa mucho porque tengo a Hard-Boiled Flare Wolf), 2/2 Adventures Packs (Enchanted Elven Forest y Gryphon Park Observatory), 2 cofres azules, 3 de oro, 8 de plata y 10 de bronce. Todo eso ya clonado y comprobado in game. En los próximos días tengo que probar cristales. En la lista hay 22/31 cristales pero en total tendré más contando los míos porque, por ejemplo, en la lista hay un solo cristal de tecnología y yo tengo dos.Tengo que mirar qué modelos de cristales tengo y ver si tengo alguno que no está en la lista. Mínimo tengo 23 pero puedo tener 25 o más, a saber. Bueno, ha sido un día muy fructífero. Me voy a dormir que ya es tarde.
zantzue escribió:@ser18534
Ahora mismo tengo 43/44 senseis (falta Flare Wolf pero no importa mucho porque tengo a Hard-Boiled Flare Wolf), 2/2 Adventures Packs (Enchanted Elven Forest y Gryphon Park Observatory), 2 cofres azules, 3 de oro, 8 de plata y 10 de bronce. Todo eso ya clonado y comprobado in game. En los próximos días tengo que probar cristales. En la lista hay 22/31 cristales pero en total tendré más contando los míos porque, por ejemplo, en la lista hay un solo cristal de tecnología y yo tengo dos.Tengo que mirar qué modelos de cristales tengo y ver si tengo alguno que no está en la lista. Mínimo tengo 23 pero puedo tener 25 o más, a saber. Bueno, ha sido un día muy fructífero. Me voy a dormir que ya es tarde.

Por dios! ¿Tantos senseis hay? Pensaba que eran menos. En el anterior mensaje también me refería a los de ediciones anteriores.... por ejemplo, drobot (no lightcore) de la serie Giants nunca llegó a España. ¿Lo tienes?
@ser18534
Pues no me parecen "tantos" [+risas] . Piensa que de Superchargers entre personajes y vehículos tengo 70 clones y porque pasé de clonar trampas, ¡que si no...!. En los archivos de Maxlander (400+ skylanders), esos a los que les tengo que introducir las claves, aparecen ambos Drobot; normal y lightcore. En la lista del script (300+) aparece Drobot y ahora mismo no encuentro la versión lightcore por lo que parece que no está. Vamos, que sí lo tengo.
@zantzue ¿Existiría la posibilidad de que compartieras esos archivos .bin? ¿Se vulnerarían derechos de copyright?
@ser18534
Ya lo he pensado y creo que no habría problema ya que no tienen ninguna clave. Es decir, sin las claves no se pueden usar ni se tiene acceso a contenido en el juego (fases, mundos,ítems o los propios personajes). Tal y como están, son "inservibles". Cada uno ha de calcular sus propias claves pero antes habría que consultar con moderación. No quiero dar un paso en falso en EOL.
@zantzue lo intento comentar con algún moderador, a ver qué le parece la idea. Gracias por tus esfuerzos!
@[erick] @ser18534
OK. Pongo esto para abrir boca. Es un google drive que no es mío (lo compartieron ayer conmigo) donde hay cientos de skylanders, vehículos, trampas, cristales, items...3 de ellos son aportaciones mías. Tal y como digo arriba, tal cual no nos sirven de mucho ya que en esos archivos no hay claves. Hacen falta 16 claves para cada archivo y, salvo la del sector 0 que siempre es la misma, las otras 15 cambian de una UID a otra. Cuando tenga tiempo tengo que editar el primer mensaje para incluir un tutorial explicando en qué consiste el proceso (mantendré el de cómo clonar una figura propia que tengamos en casa por si alguien quiere clonar una figura que no esté en ese google drive).

Alguien se preguntará de dónde salen todos esos volcados. Le he preguntado al que ha compartido conmigo los archivos y me ha respondido lo siguiente:

"To dump .bin files I used a USB wired Skylanders portal, a Windows PC, the PC driver for portal and a software called Skydumper:
https://github.com/capull0/SkyDumper

There is a comprehensive video guide for using skydumper here:
https://www.youtube.com/watch?v=3WROrYrr1ho
Basically, in order to dump a figurine you connect the portal to your pc, and from a command prompt you run:
skydumper.exe -o test.bin
(where "test" is the name you want to give for your figurine, for example Flarewolf.bin)

It works for all games (incl. Imaginators)."

¿Tiene alguien a Flare Wolf? Aún tengo que ver el video en detalle pero con un ordenador, una base con cable USB y la figura cualquiera puede hacer un volcado. Es el único sensei que falta en la lista (faltaba Chain Reaction pero lo compartí yo).

Edito: he seguido el tutorial del video y hacer un volcado es de lo más sencillo. Es apto para torpes. Los volcados son sin claves así que son, entiendo, copias de seguridad para poder restaurar las figuras y también valen con un emulador de la base (no solamente vale para Disney Infinity; también vale para Skylanders). Animo encarecidamente a alguien con la figura Flare Wolf a seguir el tutorial del video y hacer un volcado. Si me lo facilita, se lo pasaría al dueño del google drive y además yo podría calcular las claves para ese volcado.
zantzue escribió:¿Tiene alguien a Flare Wolf?


Yo no, lo siento [beer]
90 respuestas
1, 2