All notable changes to this project will be documented in this file. This project uses the changelog in accordance with keepchangelog. Please use this to write notable changes, which is not the same as git commit log...
- Modified 'install.sh' script to work in macOS and Linux (@TomHarkness)
- Modified 'update.sh' and 'proxmark.sh' script to work in macOS and Linux (@joanbono)
- Added more default keys (@j8048188) (@iceman)
- Added 'sc list/info/raw/reader/upgrade' - (RDV40) smart card module functionality (@iceman)
- Fix 'download eml buffer' (@drandreas)
- Changed 'exclusion of floatingpoint lib' (@pwpiwi)
- Changed 'lua scripts bit32 calls' (@iceman)
- Changed 'hw version' (@pwpiwi), adapted to iceman fork ( @iceman)
- Added 'amiibo functionality' (@jamchamb), adapted to iceman fork ( @iceman)
- Fix 'hf legic' (RDV40) adaptations to FPGA HF enhanched reading distance (@iceman) Thanks to @drandreas!
- Added 'script run mifare_acces' - script to decode Mifare classic accessbits (@Neuromancer)
- Added 'mem load/save/wipe' - commands to upload / download to new RDV40 onboard flashmemory (@iceman)
- Added 'script run mifareplus" - script to communicate with a mifare plus tag (@dceliano)
- Added FlashMemory functionality (RDV40) (Thanks @willok)
- Fix 'hf mfu dump' - partial reads lead to corrupt data (Thanks @elafargue for pointing it out)
- Changed 'hf mfu dump / read' - now retries five times. (@jamchamb)
- Added
hf list mf
- deciphers crypto1 stream and works with first authentication and weak nested authentications (@Merlok) - Adjusted
lf cmdread
to respond to client when complete and the client will then automatically calldata samples
(@marshmellow42) - Added a bitbang mode to
lf cmdread
if delay is 0 the cmd bits turn off and on the antenna with 0 and 1 respectively (@marshmellow42) - dump / restore now uses custom filenames (@brianpow)
- Removed 'hf mf sniff' , (@iceman), use HF 14A SNIFF instead
- Added 'hf iclass lookup' (@iceman)
- Added 'hf iclass chk' (@iceman)
- Fixed ADC mux all closed push-pull state (@iceman)
- Fix 'hf mf darkside' - speed fixes (@pwpiwi)
- Fix 'hw tune' - now compensates for 3% error in output, also measure full 140v using ADC channel 5 and 7. (@iceman)
- Updated loclass gpl license (@holiman)
- Fix Antenna on after changed FPGA Mode. (@iceman)
- Added 'hf mf nack' - Mifare NACK bug detection (@iceman) (@doegox)
- Fix 'hf mf mifare' - zero parity works, no more double runs for normal darkside (@iceman)
- Added 'hf mf fchk' - the fastest check keys implementation tothisday (@iceman)
- Fix 'hf iclass' - more stable demod (@iceman)
- Added 'hf iclass chk' - check keys from default_iclass_keys.dic file (@iceman)
- Fix 'hf 15 dump' - no more crc faults (@iceman)
- Fix 'hf 15 read' - no more crc faults (@iceman)
- Fix 'hf 15 readmulti' - no more crc faults (@iceman)
- Changed proxmark command line parameter
flush
to-f
or-flush
(@merlokk) - Added to proxmark command line parameters
w
- wait 20s for serial port (@merlokk) - Added to proxmark command line parameters
c
andl
- execute command and lua script from command line (@merlokk) - Added to proxmark ability to execute commands from stdin (pipe) ((@merlokk)
- Added new standalone mode "HF Mifare ultra fast sniff/sim/clone - aka VIGIKPWN" (@cjbrigato)
- Added to
hf 14a apdu
- exchange apdu via iso1443-4 (@merlokk) - Added to
hf 14a apdu
- apdu and tlv results parser (@merlokk) - Added 'hf emv' commands (@merlokk)
- lots of bug fixes (many many)
- Changed driver file proxmark3.inf to support both old and new Product/Vendor IDs (piwi)
- Changed start sequence in Qt mode (fix: short commands hangs main Qt thread) (Merlok)
- proxmark3 client can reconnect to device without restart (iceman)
- lots of bug fixes (many many)
- trace/securakey-64169.pm3 - trace of a scecurakey (atyppo)
- 'hf mf decrypt' - got some longer input and helptext parameter (iceman)
- Updated the Reveng 1.51 sourcecode to 1.52 from Reveng project homepage (iceman)
- 'hf 14a read' - disconnects when failing to read tag (iceman)
- 'hf mf csave' - renamed parameter 'i' to 'o' as in output (iceman)
Notes on this release this version includes a merge with the PM3 offical v3.0.1 code, a.k.a the "Monster merge" There is a lot of changes, command breaking changes, which is the cause for the JUMP in version number. It is set to v3.0.0 to show that it is on par with PM3 Offical v3 release.
- Updated 'mkversion.pl' to write a date based on file when repo is downloaded as a zip file from github (iceman)
- Update 'readme.md' to fit GitHubs markup(joanbono)
- Added 'script run ul_uid', try to change UID on a magic UL-card. (iceman)
- Fixed 'hf snoop' bug, of wrong bool value (ikarus23)
- Fixed fullimage.s19, wrong offsets (doegox)
- Updated '77-mm-usb-device-blacklist.rules' for the pid/vid (iceman)
- 'hf 14a sim' now follows Mifare UL-EV1 protocol better (iceman)
- Updated 'fpga_hf.bit' file (piwi)
- Added more card detections to 'hf mfu info' (iceman)
- Fixed 'hf mfu restore/dump' to use the right struct values in special data in dumpfile. (iceman)
- Added 'hf mfu restore r' new parameter to use the new pwd for all further auths needed when executing (iceman)
- Added 'default_keys_dic2lua.awk' script to generate default_keys file in client/lualibs (iceman)
- Fixes to lots of lua scripts, among others
- 'mifare_autopwn', now uses PRNG detection (iceman)
- 'mfkeys', fixed bug which only tested the first key (iceman)
- 'dumptoemul', removed last newline (iceman)
- ...
- Added USB/SERIAL communication enhancements (micolous)
- Change 'hf 14a cuids', to be interrupted with keyboard press (iceman)
- Change debugstatements for LF to show which function more unified (iceman)
- Added 'script run calc_di' , to calculate some Mifare keys (iceman)
- Fixed iclass commands never shut down antenna afterwards (iceman)
- Change 512kb detection when flashing (iceman)
- Fixed compilation GCC4.9 or higher detection (winguru)
- Fixed compiler warnings in Ubuntu 17.04 (iceman)
- Ripped out 'standalone' code into separete folder to be continued. (iceman)
- 'hf mf nested', added key validation to entered key (merlokk)
- 'hf mf hardnested', added key validation to enterd key (iceman)
- Change a lot of help texts (iceman)
- Fixed 'hf mf chk' - keyblock bug, limited keys to 256. (iceman)
- Change 'hf mf dump' retries three times now before giving up (marshmellow)
- Fixed 'mfu authentication', with pack-len error (iceman)
- 'Script list', change sortorder to alphabetic order (iceman)
- Change 'hf mfu gen' to read taguid (iceman)
- Change 'hf mfu pwdgen' to read taguid (iceman)
- Added 'hf mf setmod' sets Mifare Classic EV1 load modulation strength to card (angelsl)
- Added 'hf 14a read' Mifare PRNG detection based on @doegox LIBNFC impl (iceman)
- Added 'hf mf nonces', collects Mifare Classic nonces for analysing of PRNG (iceman)
- Added new CSNS in 'hf iclass sim 2' attack (iceman)
- Added more default keys (iceman)
- Added analyse nuid, enable creation of Mifare NUID (iceman)
- Updated the Reveng 1.44 sourcecode to 1.51 from Reveng project homepage (iceman)
- script run formatMifare - got an option to execute the generate strings (iceman)
- Fix 'hf mf cgetsc' (iceman)
- Fix 'hf legic info' (iceman)
- Change version output (iceman)
- Added PAC/Stanley detection to lf search (marshmellow)
- Added lf pac demod and lf pac read - extracts the raw blocks from a PAC/Stanley tag (marshmellow)
- Added hf mf csave commands compatibity for 4k (Fl0-0)
- Added data fsktonrz, a fsk cleaning/demodulating routine for weak fsk signal. Note: follow this up with a
data rawdemod nr
to finish demoding your signal. (marshmellow) - Added lf em 410xbrute, LF EM410x reader bruteforce attack by simulating UIDs from a file (Fl0-0)
- Compiles on OS X
- Compiles with gcc 4.9
- Compiles for non-Intel CPUs
- Added lf hitag write 24, the command writes a block to hitag2 tags in crypto mode (henjo)
- Added the improved 'hf mf hardnested', an attack working for hardened Mifare cards (EV1, Mifare Plus SL1)
- Added experimental testmode write option for t55xx (danger) (marshmellow)
- Added t55xx p1detect to
lf search
chip detections (marshmellow) - Added lf t55xx p1detect, detect page 1 of a t55xx tag based on E015 mfg code (marshmellow)
- Added lf noralsy demod, read, clone, sim commands (iceman)
- Added lf jablotron demod, read, clone, sim commands (iceman)
- Added lf nexwatch read - reads a nexwatch tag from the antenna
- Added lf paradox read - reads a paradox tag from the antenna
- Added lf fdx sim (iceman)
- Added lf fdx clone - clones an fdx-b animal tag to t55x7 or q5 (iceman)
- Added lf fdx read - reads a fdx-b tag from the antenna (iceman)
- Added lf gproxii read - reads a gproxii tag from the antenna (marshmellow)
- Added lf indala read - reads an indala tag from the antenna (marshmellow)
- Added lf visa2000 demod, read, clone, sim commands (iceman)
-
hf mf dump - added retry loops to try each read attempt up to 3 times. makes getting a complete dump easier with many antennas. (marshmellow)
-
Added markers in the graph around found Sequence Terminator after askmandemod. (marshmellow)
-
Added data mtrim command to trim out samples between start and stop. (marshmellow)
-
Added data setgraphmarkers command to set two extra markers on the graph (marshmellow)
-
added json support in lua (vitorio)
-
added a buspirate settings file for at91sam7s512 (adamlaurie)
-
lf read
timeouts is now depended on what threshold level you set inlf config
(marshmellow) -
hf mf sim
fixed a bug which made sim fail auths. (iceman) -
hf 14a read
added magic tag generation 1a and 1b detection (iceman) -
correctly using stdtypes.h printf and scanf format string macros (PRIx64 et al) (pwpivi)
-
fix linker warning re missing entry point when linking fullimage.elf (pwpivi)
-
small changes to lf psk and fsk demods to improve results when the trace begins with noise or the chip isn't broadcasting yet (marshmellow)
-
NOTE CHANGED ALL
lf em4x em*
cmds to simplerlf em
- example:lf em4x em410xdemod
is nowlf em 410xdemod
-
Renamed and rebuilt
lf em readword
&& readwordpwd tolf em 4x05read
- it now demods and outputs the read block (marshmellow/iceman) -
Renamed and rebuilt
lf em writeword
&& writewordpwd tolf em 4x05write
- it now also reads validation output from the tag (marshmellow/iceman) -
Fixed bug in lf sim and continuous demods not turning off antenna when finished
-
Added lua script path fixes (pwpivi)
-
lf search
- Added EM4x05/EM4x69 chip detection (marshmellow) -
Added lf em 4x05dump command to read and output all the blocks of the chip (marshmellow)
-
Added lf em 4x05info command to read and display information about the chip (marshmellow)
-
lf em4x em4x50***
refactoring of em4x50 commands. (iceman)
- Serial speedup, if possible 408600baud otherwise default to 115200baud (iceman)
hf emv
- Added Peter Fillmore's EMV branch now compiles on iceman fork. See seperate issue. (iceman)hf 14a reader
- Aztek detection. (iceman)standalone mode
- added more detection of tags and refactored (iceman)script run ufodump
- dumps an Aztek tag. (iceman)script run hard_autopwn
- runs hardnested attack against all sectors on tag (iceman)- Added lf cotag read, and added it to lf search (iceman)
- Added hitag2 read UID only and added that to lf search (marshmellow)
lf search
- check for if signal is only noice (marshmellow)hf 14a reader
- fixed a bug when card has sak 0x00 but still is not UL/NTAG etc. (iceman)hf mf sim
/hf 14a sim
- use random nonce. (micolous)hw tune
- only prints out if voltage is detected from antenna. (iceman)hf iclass decrypt
- only decrypt Application1 (iceman)lf t55xx detect
- when finding multiple possible config blocks, see if a known configblock exists and select. (iceman)
-
lf animal
- FDX-B animal commands (iceman) -
Fixed bugs in
lf sim
and other lf continuous demods not turning off antenna when finished (marshmellow) -
hf iclass write
- fixed bugs, added crc. (?) -
hf iclass dump
- changed layout in dump (iceman) -
Changed - debug statements are more clear (iceman)
-
lf search
- fixed the silent option when acquire data. (iceman) -
lf search
- added presco, visa2000, noralsy detection (iceman) -
lf precso
- fixed some bitsgeneration in precso bits (iceman) -
Added
lf noralsy
- adds demod/clone/sime of Noralsy LF tags. (iceman) -
Added
lf visa2000
- adds demod/clone/sim of Visa2000 lF tags. (iceman) -
Added
hf mf key_brute
- adds J-Runs 2nd phase bruteforce ref: https://github.com/J-Run/mf_key_brute (iceman) -
Added
lf jablotron
- adds demod/clone/sim of Jablotron LF tags. (iceman) -
Added
lf t55xx recoverpw
- adds a new password recovery using bitflips and partial flips if password write went bad. (alexgrin) -
hf legic
- added improved legic data mapping. (jason) -
hf mf mifare
- added possibility to target key A|B (douniwan5788) -
Added
analyse lcr
- added a new main command group, to help analysing bytes & bits & nibbles. (iceman) -
Added
lf nedap
- added identification of a NEDAP tag. (iceman) -
lf viking clone
- fixed a bug. (iceman) -
Added bitsliced bruteforce solver in
hf mf hardnested
(Aczid) -
hf mf chk
speedup (iceman) -
hf 14a/mf sim x
attack mode, now uses also moebius version of mfkey32 to try finding the key. (iceman) -
hf 14a sim
Added emulation of Mifare cards with 10byte UID length. (iceman) -
hf mf sim
Added emulation of Mifare cards with 10byte UID length. (iceman) -
Added
lf guard clone/sim
(iceman) -
Added
lf pyramd clone/sim
(iceman) -
trying to fix
hf 14b
command to be able to read CALYPSO card. (iceman) -
hf legic load
, it now loads faster and a casting bug is gone. (iceman) -
Added
hf legic calccrc8
added a method to calculate the legic crc-8 value (iceman) -
hf legic decode
fixed the output overflow bugs, better printing (iceman) -
Coverity Scan fixes a lot of resource leaks, etc (iceman)
-
Added
lf presco *
commands started (iceman) -
Added
lf hid wiegand
added a method to calculate WIEGAND in different formats, (iceman) -
hf mf chkkeys
better printing, same table output as nested, faster execution and added Adam Lauries "try to read Key B if Key A is found" (iceman) -
hf mf nested
better printing and added Adam Lauries "try to read Key B if Key A is found" (iceman) -
hf mf mifare
fixing the zero parity path, which doesn't got called. (iceman) -
Updated the @blapost's Crapto1 implementation to v3.3 (blapost)
-
hf mf c*
updated the calling structure and refactored of the chinese magic commands (iceman, marshmellow) -
Started to add Peter Fillmore's EMV fork into Iceman fork. ref: https://github.com/peterfillmore/proxmark3 (peter fillmore, iceman)
-
Added Travis-CI automatic build integration with GitHub fork. (iceman)
-
Updated the Reveng 1.30 sourcecode to 1.31 from Reveng project homepage (iceman)
-
Updated the Reveng 1.31 sourcecode to 1.40 from Reveng project homepage (iceman)
-
Added possibility to write direct to a Legic Prime Tag (MIM256/1024) without using values from the 'BigBuffer' -> 'hf legic writeRaw ' (icsom)
-
Added possibility to decrease DCF values at address 0x05 & 0x06 on a Legic Prime Tag DCF-value will be pulled from the BigBuffer (address 0x05 & 0x06) so you have to load the data into the BigBuffer before with 'hf legic load <path/to/legic.dump>' & then write the DCF-Values (both at once) with 'hf legic write 0x05 0x02' (icsom)
-
Added script
legic.lua
for display and edit Data of Legic-Prime Tags (icsom) -
Added the experimental HITAG_S support (spenneb)
-
Added topaz detection to
hf search
(iceman) -
Fixed the silent mode for 14b to be used inside
hf search
(iceman)
- Added a LF ASK Sequence Terminator detection option to the standard ask demod - and applied it to
lf search u
,lf t55xx detect
, anddata rawdemod am s
(marshmellow) lf awid bruteforce <facilitycode>
- Simple bruteforce attack against a AWID reader.lf t55xx bruteforce <start password> <end password> [i <*.dic>]
- Simple bruteforce attack to find password - (iceman and others)lf viking clone
- clone viking tag to t55x7 or Q5 from 4byte hex ID inputlf viking sim
- sim full viking tag from 4byte hex ID inputlf viking read
- read viking tag and output IDlf t55xx wipe
- sets t55xx back to factory defaults- Added viking demod to
lf search
(marshmellow) data askvikingdemod
demod viking id tag from graphbuffer (marshmellow)lf t55xx resetread
added reset then read command - should allow determining start of stream transmissions (marshmellow)lf t55xx wakeup
added wake with password (AOR) to allow lf search or standard lf read after (iceman, marshmellow)hf mf eload u
added an ultralight/ntag option. (marshmellow)hf iclass managekeys
to save, load and manage iclass keys. (adjusted most commands to accept a loaded key in memory) (marshmellow)hf iclass readblk
to select, authenticate, and read 1 block from an iclass card (marshmellow)hf iclass writeblk
to select, authenticate, and write 1 block to an iclass card (or picopass) (marshmellow + others)hf iclass clone
to take a saved dump file and clone selected blocks to a new tag (marshmellow + others)hf iclass calcnewkey
- to calculate the div_key change to change a key - (experimental) (marshmellow + others)hf iclass encryptblk
- to encrypt a data block hex to prep for writing that block (marshmellow)- ISO14443a stand-alone operation with ARM CFLAG="WITH_ISO14443a_StandAlone". This code can read & emulate two banks of 14a tag UIDs and write to "magic" cards (Craig Young)
- AWID26 command context added as 'lf awid' containing realtime demodulation as well as cloning/simulation based on tag numbers (Craig Young)
- Added 'hw status'. This command makes the ARM print out some runtime information. (holiman)
- Added 'hw ping'. This command just sends a usb packets and checks if the pm3 is responsive. Can be used to abort certain operations which supports abort over usb. (holiman)
- Added
data hex2bin
anddata bin2hex
for command line conversion between binary and hexadecimal (holiman) - Added 'hf snoop'. This command take digitalized signal from FPGA and put in BigBuffer. (pwpiwi + enio)
- Added Topaz (NFC type 1) protocol support ('hf topaz reader', 'hf list topaz', 'hf 14a raw -T', 'hf topaz snoop'). (piwi)
- Added option c to 'hf list' (mark CRC bytes) (piwi)
- Added
[l] <length>
option to data printdemodbuffer - Adjusted lf awid clone to optionally clone to Q5 tags
- Adjusted lf t55xx detect to find Q5 tags (t5555) instead of just t55x7
- Adjusted all lf NRZ demods - works more accurately and consistently (as long as you have strong signal)
- Adjusted lf pskindalademod to reduce false positive reads.
- Small adjustments to psk, nrz, and ask clock detect routines - more reliable.
- Adjusted lf em410x em410xsim to accept a clock argument
- Adjusted lf t55xx dump to allow overriding the safety check and warning text (marshmellow)
- Adjusted lf t55xx write input variables (marshmellow)
- Adjusted lf t55xx read with password safety check and warning text and adjusted the input variables (marshmellow & iceman)
- Adjusted LF FSK demod to account for cross threshold fluctuations (898 count waves will adjust the 9 to 8 now...) more accurate. (marshmellow)
- Adjusted timings for t55xx commands. more reliable now. (marshmellow & iceman)
lf cmdread
adjusted input methods and added help text (marshmellow & iceman)- changed
lf config t <threshold>
to be 0 - 128 and will trigger on + or - threshold value (marshmellow) hf iclass dump
cli options - can now dump AA1 and AA2 with different keys in one run (does not go to multiple pages for the larger tags yet) (marshmellow)- Revised workflow for StandAloneMode14a (Craig Young)
- EPA functions (
hf epa
) now support both ISO 14443-A and 14443-B cards (frederikmoellers) - 'hw version' only talks to ARM at startup, after that the info is cached. (pwpiwi)
- Added
r
option to iclass functions - allows key to be provided in raw block 3/4 format
- Added
hf 14b raw -s
option to auto select a 14b std tag before raw command - Changed
hf 14b write
tohf 14b sriwrite
as it only applied to sri tags (marshmellow) - Added
hf 14b info
tohf search
(marshmellow) - Added compression of fpga config and data, BOOTROM REFLASH REQUIRED (piwi)
- Implemented better detection of mifare-tags that are not vulnerable to classic attacks (
hf mf mifare
,hf mf nested
) (piwi)
- Add
hf 14b reader
to find and print general info about known 14b tags (marshmellow) - Add
hf 14b info
to find and print info about std 14b tags and sri tags (using 14b raw commands in the client) (marshmellow) - Add PACE replay functionality (frederikmoellers)
- t55xx write timing (marshmellow)
- Added ultralight/ntag tag type detection to
hf 14a read
(marshmellow) - Improved ultralight dump command to auto detect tag type, take authentication, and dump full memory (or subset specified) of known tag types (iceman1001 / marshmellow)
- Combined ultralight read/write commands and added authentication (iceman1001)
- Improved LF manchester and biphase demodulation and ask clock detection especially for reads with heavy clipping. (marshmellow)
- Iclass read,
hf iclass read
now also reads tag config and prints configuration. (holiman) - bootrom needs to be flashed, due to new address boundaries between os and fpga, after a size optimization (piwi)
- Fixed EM4x50 read/demod of the tags broadcasted memory blocks. 'lf em4x em4x50read' (not page read) (marshmellow)
- Fixed issue #19, problems with LF T55xx commands (iceman1001, marshmellow)
- Fixed various problems with iso14443b, issue #103 (piwi, marshmellow)
- Added
hf search
- currently tests for 14443a tags, iclass tags, and 15693 tags (marshmellow) - Added
hf mfu info
Ultralight/NTAG info command - reads tag configuration and info, allows authentication if needed (iceman1001, marshmellow) - Added Mifare Ultralight C and Ultralight EV1/NTAG authentication. (iceman1001)
- Added changelog
- Added
data fdxbdemod
- Demodulate a FDX-B ISO11784/85 Biphase tag from GraphBuffer aka ANIMAL TAG (marshmellow, iceman1001)
- LF sim operations now abort when new commands arrive over the USB - not required to push the device button anymore.
- Mifare simulation,
hf mf sim
(was broken a long time) (pwpiwi) - Major improvements in LF area and data operations. (marshmellow, iceman1001)
- Issues regarding LF simulation (pwpiwi)
- iClass functionality: full simulation of iclass tags, so tags can be simulated with data (not only CSN). Not yet support for write/update, but readers don't seem to enforce update. (holiman).
- iClass decryption. Proxmark can now decrypt data on an iclass tag, but requires you to have the HID decryption key locally on your computer, as this is not bundled with the sourcecode.