Home

Awesome

Iceman Fork - Proxmark3

The Proxmark3 is the swiss-army tool of RFID, allowing for interactions with the vast majority of RFID tags on a global scale. Originally built by Jonathan Westhues, the device is now the goto tool for RFID Analysis for the enthusiast. Iceman repository is considered to be the pinnacle of features and functionality, enabling a huge range of extremely useful and convenient commands and LUA scripts to automate chip identification, penetration testing, and programming

Latest ReleaseCoverityContributors
Latest releaseCoverity StatusGitHub contributors
Actions OSX CIActions Ubuntu CIActions Windows CI
MacOS Build and TestUbuntu Build and TestWindows Build and Test

Table of Contents

PROXMARK3 INSTALLATION AND OVERVIEW

InstallationUse of the Proxmark3
Linux - Setup and BuildCompilation Instructions
Linux - Important notes on ModemManagerValidating Proxmark3 Client Functionality
macOS - Homebrew & Upgrading HomeBrew Tap FormulaFirst Use and Verification
macOS - MacPortsCommands & Features
macOS - Setup and Build
Windows - Setup and Build
Termux / Android - Setup and Build
iOS - Setup and Build
Blue Shark ManualCommand Cheat Sheet
Advanced Compilation ParametersMore Cheat Sheets
TroubleshootingComplete Client Command Set
JTAGT5577 Introduction Guide

Notes / helpful documents

Notes
Notes on UARTNotes on Termux / AndroidNotes on paths
Notes on frame formatNotes on tracelog / wiresharkNotes on EMV
Notes on external flashNotes on loclassNotes on Coverity Scan Config & Run
Notes on file formats used with Proxmark3Notes on MFU binary formatNotes on FPGA & ARM
Developing standalone modeWiki about standalone modeNotes on Magic UID cards
Notes on Color usageMakefile vs CMakeNotes on Cloner guns
Notes on cliparser usageNotes on clocksNotes on MIFARE DESFire
Notes on CIPURSENotes on NDEF type4aNotes on downgrade attacks

How to build?

Proxmark3 RDV4

See the instruction links in the tables above to build, flash and run for your Proxmark3 RDV4 device.

Generic Proxmark3 platforms

In order to build this repo for generic Proxmark3 platforms we urge you to read Advanced compilation parameters

We define generic Proxmark3 platforms as following devices.

Supported

Not supported

Experimental support

Unknown support status

When it comes to these new unknown models we are depending on the community to report in if this repo works and what they did to make it work.

256KB flash memory size of generic Proxmark3 platforms

Note: You need to keep a eye on how large your ARM chip built-in flash memory is. With 512KB you are fine but if its 256KB you need to compile this repo with even less functionality. When running the ./pm3-flash-all you can see which size your device have if you have the bootloader from this repo installed. Otherwise you will find the size reported in the start message when running the Proxmark3 client ./pm3.

OBS! Read the 256KB flash memory advisory

What has changed?

Proxmark3 RDV4 hardware modifications:

This repo vs official Proxmark3 repo:

See the Changelog file which we try to keep updated.

In short this repo gives you a completely different user experience when it comes to Proxmark3.

Development

Note: This is a bleeding edge repository. The maintainers actively is working out of this repository and will be periodically re-structuring the code to make it easier to comprehend, navigate, build, test, and contribute to, so DO expect significant changes to code layout on a regular basis.

👉 Remember! If you intend to contribute to the code, please read the coding style notes first. We usually merge your contributions fast since we do like the idea of getting a functionality in the Proxmark3 and weed out the bugs afterwards.

The public roadmap is an excellent start to read if you are interesting in contributing.

Supported operative systems

This repo compiles nicely on

Precompiled binaries

See Proxmark3 precompiled builds

Proxmark3 GUI

The official PM3-GUI from Gaucho will not work. Not to mention is quite old and not maintained any longer.

Official channels

Where do you find the community?

Maintainers

To all distro, package maintainers, we tried to make your life easier.

make install is now available and if you want to know more.

This document will be helpful for you

Citation

Use this bibtex to cite this repository globally:

@misc{proxmark3,
  author = {C. {Herrmann} and P. {Teuwen} and O. {Moiseenko} and M. {Walker} and others},
  title = {{Proxmark3 -- Iceman repo}},
  howpublished = {\url{https://github.com/RfidResearchGroup/proxmark3}},
  keywords = {rfid nfc iceman proxmark3 125khz 134khz 13.56mhz},
}

If you need to refer to a specific state of the repository, use a commit number or a date of access, e.g.:

  note = {Accessed: commit 12327f71a27da23831901847886aaf20e8ad3ca0}
  note = {Accessed: 2021-01-01}

Copyright and licensing terms

Each contribution is under the copyright of its author. See AUTHORS.

The Proxmark3 source code is covered by the following licensing terms, usually referred as GPLv3 or later.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

A copy of the GPLv3 is available in LICENSE.

Some dependencies may be under other free licensing terms compatible with the Proxmark3 licensing terms, see their respective description.