The iceman fork
===============
-[![Build Status](https://travis-ci.org/iceman1001/proxmark3.svg?branch=master)](https://travis-ci.org/iceman1001/proxmark3) [![Coverity Status](https://scan.coverity.com/projects/5117/badge.svg)](https://scan.coverity.com/projects/proxmark3_iceman_fork) [![Latest release] (https://img.shields.io/github/release/iceman1001/proxmark3.svg)] (https://github.com/iceman1001/proxmark3/releases/latest) [![Github Releases](https://img.shields.io/github/downloads/iceman1001/proxmark3/latest/total.svg)]()
+[![Build Status](https://travis-ci.org/iceman1001/proxmark3.svg?branch=master)](https://travis-ci.org/iceman1001/proxmark3) [![Coverity Status](https://scan.coverity.com/projects/5117/badge.svg)](https://scan.coverity.com/projects/proxmark3_iceman_fork) [![Latest release] (https://img.shields.io/github/release/iceman1001/proxmark3.svg)](https://github.com/iceman1001/proxmark3/releases/latest)
##This fork is HIGHLY experimental (or bleeding edge)
* other obscure patches like for the sammy-mode, (offline you know), tagidentifications, defaultkeys.
* Minor textual changes here and there.
* Simulation of Ultralight/Ntag.
- * Marshmellow's and my "RevEng" addon for the client. Ref: http://reveng.sourceforge.net/ Now using reveng1.31
+ * Marshmellow's and my "RevEng" addon for the client. Ref: http://reveng.sourceforge.net/ Now using reveng1.44
* J-Run alternative bruteforce Mifare nested auths.. (you need one other exe to make it work)
* A Bruteforce for T55XX passwords against tag.
* A Bruteforce for AWID 26, starting w a facilitycode then trying all 0xFFFF cardnumbers via simulation. To be used against a AWID Reader.
* Blaposts Crapto1 v3.3
* Icsom's legic script and legic enhancements
* Aczid's bitsliced bruteforce solver in 'hf mf hardnested'
-
-##Straight from the CHANGELOG
-=============================
- - 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 <addr> <value>' (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)
---
-Give me a hint, and I'll see if I can't merge in the stuff you have.
-
+##Why don't you merged with offical PM3 Master?
I don't actually know how to make small pull-request to github :( and that is the number one reason for me not pushing a lot of things back to the PM3 master.
+Me fiddling with the code so much, there is a nightmare in merging a PR. Luckily I have @marshmellow42 who takes some stuff and push PR's back.
+
+##Why don't you add nnnn or mmmm functionality?
+Give me a hint, and I'll see if I can't merge in the stuff you have.
##PM3 GUI
I do tend to rename and move stuff around, the official PM3-GUI from Gaucho will not work so well. *sorry*
##Development
This fork now compiles just fine on
- Windows/mingw environment with Qt5.6.1 & GCC 4.8
- - Ubuntuu 1404, 1510
- - Mac OS X (or before the hardnested BF solver at least)
+ - Ubuntu 1404, 1510, 1604
+ - Mac OS X / Homebrew
+ - Docker container
##Setup and build for UBUNTU
-GC made updates to allow this to build easily on Ubuntu 14.04.2 LTS or 15.10
+GC made updates to allow this to build easily on Ubuntu 14.04.2 LTS, 15.10 or 16.04
See https://github.com/Proxmark/proxmark3/wiki/Ubuntu%20Linux
-- Run
-`sudo apt-get install p7zip git build-essential libreadline5 libreadline-dev libusb-0.1-4 libusb-dev libqt4-dev perl pkg-config wget libncurses5-dev`
-
-Follow these instructions
-Get devkitARM release 41 from SourceForge (choose either the 64/32 bit depending on your architecture, it is assumed you know how to check and recognize your architecture):
-
-(64-bit) http://sourceforge.net/projects/devkitpro/files/devkitARM/previous/devkitARM_r41-x86_64-linux.tar.bz2/download
-(32-bit) http://sourceforge.net/projects/devkitpro/files/devkitARM/previous/devkitARM_r41-i686-linux.tar.bz2/download
-
-- Extract the contents of the .tar.bz2
-`tar jxvf devkitARM_r41-<arch>-linux.tar.bz2`
-
-- Create a directory for the arm dev kit
-`sudo mkdir -p /opt/devkitpro/`
-
-- Move the ARM developer kit to the newly created directory
-`sudo mv devkitARM /opt/devkitpro/`
+A nice and cool install script made by @daveio is found here:
+https://github.com/daveio/attacksurface/blob/master/proxmark3/pm3-setup.sh
-- Add the appropriate environment variable
-`export PATH=${PATH}:/opt/devkitpro/devkitARM/bin/`
-
-- Add the environment variable to your profile
-`echo 'PATH=${PATH}:/opt/devkitpro/devkitARM/bin/ ' >> ~/.bashrc`
+- Run
+`sudo apt-get install p7zip git build-essential libreadline5 libreadline-dev libusb-0.1-4 libusb-dev libqt4-dev perl pkg-config wget libncurses5-dev gcc-arm-none-eabi`
- Clone iceman fork
`git clone https://github.com/iceman1001/proxmark3.git`
- Get the latest commits
`git pull`
-- Install the blacklist rules
+- Install the blacklist rules
`make udev`
-- Clean and complete compilation
+- add user to dialout group (if you on a Linux/ubuntu/debian). If you do this one, you need to logout and login in again to make sure your rights got changed.
+`sudo adduser $USER dialout`
+
+- Clean and complete compilation
`make clean && make all`
- Flash the BOOTROM
[1.6.0] How to connect: https://youtu.be/0ZS2t5C-caI
[1.6.1] How to flash: https://www.youtube.com/watch?v=WXouhuGYEiw
-Recommendations:
-Use only container tag [1.6.4]
+Recommendations: Use only latest container.
## Building on Windows
`export PATH=$PATH:$DEVKITARM/bin`
### 6. Install Strawberry Perl
-Download and install: http://strawberry-perl.googlecode.com/files/strawberry-perl-5.10.1.1.msi
+Download and install: https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/strawberry-perl/strawberry-perl-5.10.1.3.msi
### 7. Build and run
Download and install Git for Windows: https://git-scm.com/download/win