mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-03-22 21:17:31 +08:00
CHG: added the possibility to "remagic" the new found Mifare Ultralight tags, which answers to chinese backdoor commands for uid change.
The script now deals with to different kind of tags. Mifare Classic 1k gen1 and Mifare Ultralight gen1 (7bytes uid) -Classic will get UID: 01 02 03 04 -Ultralight will get UID: 53 80 71 02 00 D9 80
This commit is contained in:
parent
8fd9bfb0e3
commit
6648776f2a
1 changed files with 49 additions and 20 deletions
|
@ -2,14 +2,15 @@ local getopt = require('getopt')
|
|||
|
||||
example = "script run remagic"
|
||||
author = "Iceman"
|
||||
|
||||
desc =
|
||||
[[
|
||||
This is a script that tries to bring back a chinese magic card (1k generation1)
|
||||
from the dead when it's block 0 has been written with bad values.
|
||||
or mifare Ultralight magic card which answers to chinese backdoor commands
|
||||
|
||||
Arguments:
|
||||
-h this help
|
||||
-h this help
|
||||
-u remagic a Ultralight tag w 7 bytes UID.
|
||||
]]
|
||||
---
|
||||
-- A debug printout-function
|
||||
|
@ -23,7 +24,6 @@ end
|
|||
function oops(err)
|
||||
print("ERROR: ",err)
|
||||
end
|
||||
|
||||
---
|
||||
-- Usage help
|
||||
function help()
|
||||
|
@ -32,31 +32,60 @@ function help()
|
|||
print(example)
|
||||
end
|
||||
|
||||
---
|
||||
-- The main entry point
|
||||
function main(args)
|
||||
|
||||
|
||||
-- Read the parameters
|
||||
for o, a in getopt.getopt(args, 'h') do
|
||||
if o == "h" then help() return end
|
||||
end
|
||||
|
||||
local _cmds = {
|
||||
local function cmdUltralight()
|
||||
return {
|
||||
--[[
|
||||
--]]
|
||||
[0] = "hf 14a raw -p -a -b 7 40",
|
||||
[1] = "hf 14a raw -p -a 43",
|
||||
[2] = "hf 14a raw -c -a A2005380712A",
|
||||
[3] = "hf 14a raw -p -a -b 7 40",
|
||||
[4] = "hf 14a raw -p -a 43",
|
||||
[5] = "hf 14a raw -c -a A2010200D980",
|
||||
[6] = "hf 14a raw -p -a -b 7 40",
|
||||
[7] = "hf 14a raw -p -a 43",
|
||||
[8] = "hf 14a raw -c -a A2025B480000",
|
||||
[9] = "hf 14a raw -c -a 5000",
|
||||
}
|
||||
end
|
||||
local function cmdClassic()
|
||||
return {
|
||||
--[[
|
||||
--]]
|
||||
[0] = "hf 14a raw -p -a -b 7 40",
|
||||
[1] = "hf 14a raw -p -a 43",
|
||||
[2] = "hf 14a raw -c -p -a A000",
|
||||
[3] = "hf 14a raw -c -p -a 01 02 03 04 04 98 02 00 00 00 00 00 00 00 10 01",
|
||||
[3] = "hf 14a raw -c -p -a 01020304049802000000000000001001",
|
||||
[4] = "hf 14a raw -c -a 5000",
|
||||
}
|
||||
end
|
||||
---
|
||||
-- The main entry point
|
||||
function main(args)
|
||||
|
||||
local i
|
||||
local cmds = {}
|
||||
local isUltralight = false
|
||||
|
||||
-- Read the parameters
|
||||
for o, a in getopt.getopt(args, 'hu') do
|
||||
if o == "h" then return help() end
|
||||
if o == "u" then isUltralight = true end
|
||||
end
|
||||
|
||||
core.clearCommandBuffer()
|
||||
|
||||
local i
|
||||
--for _,c in pairs(_cmds) do
|
||||
for i = 0, 3 do
|
||||
print ( _cmds[i] )
|
||||
core.console( _cmds[i] )
|
||||
if isUltralight then
|
||||
cmds = cmdUltralight()
|
||||
else
|
||||
cmds = cmdClassic()
|
||||
end
|
||||
|
||||
for i = 0, #cmds do
|
||||
if cmds[i] then
|
||||
print ( cmds[i] )
|
||||
core.console( cmds[i] )
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue