Iceman Fork - Proxmark3
Find a file
2021-09-05 00:34:39 +02:00
.github Update checklist-for-release.md 2021-09-05 00:18:54 +02:00
.vscode more SANITIZE 2021-04-16 13:09:21 +02:00
armsrc change default standalone mode to LF_SAMYRUN 2021-09-04 22:13:54 +02:00
bootrom make style 2021-08-25 14:44:06 +03:00
client Fix segfault on 'rem <verylongline>' 2021-09-04 02:57:16 +02:00
common Fix clang-13 warnings about unused variables 2021-08-25 10:10:46 +02:00
common_arm Add fpga-xc3s100e and icopyx support 2021-08-21 23:45:46 +02:00
common_fpga make style 2021-08-25 14:44:06 +03:00
doc change default standalone mode to LF_SAMYRUN 2021-09-04 22:13:54 +02:00
docker remove docker debian oldstable 2021-09-05 00:18:08 +02:00
driver initial commit to be in sync the-soon-defunct repo pm3rdv40. 2018-08-12 21:54:31 +02:00
fpga-xc2s30 Add fpga-xc3s100e and icopyx support 2021-08-21 23:45:46 +02:00
fpga-xc3s100e make style 2021-09-03 23:05:45 +02:00
include make style 2021-08-25 14:44:06 +03:00
recovery bsd/gnu-safe file byte calc 2020-11-10 15:02:57 -05:00
tools Add fpga-xc3s100e and icopyx support 2021-08-21 23:45:46 +02:00
traces text 2021-09-03 19:14:04 +02:00
.coverity.conf.sample coverity tooling: use 2020.09 and fix tests 2021-05-14 01:33:37 +02:00
.gitattributes Add .dic to gitattributes for LF, remove existing CR 2019-05-12 20:37:51 +02:00
.gitignore Add code to automatically create and update command help text JSON. 2021-06-04 21:58:38 +02:00
.lsan_suppressions Add LeakSanitizer suppressions to skip libfontconfig warnings 2020-10-07 02:05:16 +02:00
appveyor.yml Fixes for ProxSpace v3.9 2021-04-09 16:59:11 +02:00
CHANGELOG.md change default standalone mode to LF_SAMYRUN 2021-09-04 22:13:54 +02:00
COMPILING.txt Update COMPILING.txt to point to the docs, update some instructions 2019-08-29 19:06:11 +02:00
CONTRIBUTING.md move HACKING to CONTRIBUTING to get it recognized by GH and proposed in new issues/PRs 2021-05-22 14:29:50 +02:00
covbuild.sh coverity tooling: use 2020.09 and fix tests 2021-05-14 01:33:37 +02:00
covconfig.sh coverity tooling: use 2020.09 and fix tests 2021-05-14 01:33:37 +02:00
covsubmit.sh Use /usr/bin/env in shebangs 2020-02-18 00:00:24 +00:00
LICENSE.txt remove tabs 2019-07-24 00:52:24 +02:00
Makefile Replace deprecated 'which' in scripts 2021-09-05 00:34:39 +02:00
Makefile.defs Update Makefile.defs 2021-08-22 21:49:49 +03:00
Makefile.host DEFLDFLAGS 2020-10-06 14:56:26 +02:00
Makefile.platform.sample change default standalone mode to LF_SAMYRUN 2021-09-04 22:13:54 +02:00
pm3 Replace deprecated 'which' in scripts 2021-09-05 00:34:39 +02:00
pm3-flash Use /usr/bin/env in shebangs 2020-02-18 00:00:24 +00:00
pm3-flash-all Use /usr/bin/env in shebangs 2020-02-18 00:00:24 +00:00
pm3-flash-bootrom Use /usr/bin/env in shebangs 2020-02-18 00:00:24 +00:00
pm3-flash-fullimage use env in shebangs in pm3-flash-fullimage and rest of tools 2020-02-19 16:13:17 +00:00
prox.png Restructure of RRG repo 2019-04-07 23:38:00 +01:00
rdv40.txt initial commit to be in sync the-soon-defunct repo pm3rdv40. 2018-08-12 21:54:31 +02:00
README.md readme 2021-08-22 01:31:10 +02:00

RRG / Iceman - Proxmark3

Releases Coverity Contributors
Latest release Coverity Status GitHub contributors
Actions OSX CI Actions Ubuntu CI Windows CI
MacOS Build and Test Ubuntu Build and Test Build status

PROXMARK3 INSTALLATION AND OVERVIEW

FAQ's & Updates Installation Use of the Proxmark
What has changed? Setup and build for Linux Compilation Instructions
Development Important notes on ModemManager for Linux users Validating proxmark client functionality
Maintainers Homebrew (Mac OS X) & Upgrading HomeBrew Tap Formula First Use and Verification
Proxmark3 GUI Setup and build for Windows Commands & Features
Pre-compiled binaries Blue shark manual
Donations Command Cheat sheet
Advanced compilation parameters More cheat sheets
Troubleshooting Complete client command set
JTAG T5577 Introduction Guide
MacPorts (Mac OS X, experimental)

Notes / helpful documents

Notes
Notes on UART Notes on Termux / Android Notes on paths
Notes on frame format Notes on tracelog / wireshark Notes on EMV
Notes on external flash Notes on loclass Notes on Coverity Scan Config & Run
Notes on file formats used with Proxmark3 Notes on MFU binary format Notes on FPGA & ARM
Developing standalone mode Wiki about standalone mode Notes on Magic cards
Notes on Color usage Makefile vs CMake Notes on Cloner guns
Notes on cliparser usage Notes on clocks Notes on DESFire usage

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

  • RDV1, RDV2, RDV3 easy
  • Ryscorp green PCB version
  • Radiowar black PCB version
  • numerous Chinese adapted versions of the RDV3 easy (kkmoon, PiSwords etc)

Not supported

  • ⚠ Proxmark Evolution (EVO)
    • Note: unknown pin assignments.
  • ⚠ Ryscorp Proxmark3 Pro
    • Note: device has different fpga and unknown pin assignments.
  • ⚠ iCopy-X
    • Note: experimental support, currently incompatible with iCopy-X GUI as Proxmark client commands are now using cliparser.
    • Note: see also icopyx-community repos for upstream sources, reversed hw etc.

Unknown support status

  • ⚠ VX
    • Note: unknown device hw

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:

  • added flash memory 256kb
  • added smart card module
  • added FPC connector for peripherals such as Bluetooth+battery addon
  • improved antennas
    • swappable
    • LF Q factor switch
    • LF 125/134 frequency switch
  • tiny PCB form factor
  • ABS case

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.

  • richer CLI with use of colors / emojis
  • help text system implemented everywhere
  • hints system
  • user preference settings
  • extensive testing with continuous integration build systems on Linux, OSX and Windows, and regular usage of static analysis tools like
    • Coverity Scan
    • Cppcheck
    • GCC and Clang aggressive enforcement of diagnostic flags
  • auto detection of serial ports and seamless integration with Bluetooth addon
  • reconnect to device from inside client
  • Supports tearoff attacks
  • the most comprehensive compiled known keys dictionaries
  • Slimed down usb communications with NG-frames
  • the most compiled public known key recovery software
  • the fastest implementations of said software
  • support multiple fileformats for dump files (BIN/EML/JSON)
  • interoperability of said fileformats with libnfc, MFC tool app etc
  • Supports more RFID based protocols than ever
  • Easy install for package maintainers, distro maintainers
  • More documentation

All of this and more is what makes this repo different from any other Proxmark3 firmware / client software. It is truely bleeding edge in that sense of available functionality and experience with it. With all extensive testing its also quite more stable than any other Proxmark3 repo.

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

We don't maintain any precompiled binaries in this repo. There is community effort over at the Proxmark3 forum where package maintainer @gator96100 has set up a AWS bucket with precompiled Proxspace (MinGW) binaries which are recompiled every night and with that also up-to-date. We link to these files here as to make it easier for users. If you are having troubles with these files, we suggest to read the homepage of his proxmark builds or read the sticky thread at forum

Proxmark3 RDV4 devices

Generic Proxmark3 devices

Official channels

Where do you find the community?

Maintainers ( package, distro )

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

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

Proxmark3 GUI

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

Donations

Nothing says thank you as much as a donation.

If you feel the love, do feel free to become a Iceman patron.

If you are using @gator96100 's Proxspace with pre-compiled binaries do consider buy him a coffee for his efforts.

Citation

Use this bibtex to cite this repository globally:

@misc{proxmark3rrg,
  author = {C. {Herrmann} and P. {Teuwen} and O. {Moiseenko} and M. {Walker} and others},
  title = {{Proxmark3 -- RRG / 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}