proxmark3/doc/md/Installation_Instructions/Windows-Installation-Instructions.md
2022-02-26 17:15:32 +01:00

8 KiB

Windows Installation instructions

Table of Contents

There are two ways to install, build and use Proxmark3 on Windows:

  • Using Gator96100 ProxSpace, a package to assist in your Windows installation of MinGW
  • Using native WSL 1, if you're running a Windows 10 version recent enough (FCU 1709 or later)

We have listed three ways to use these two setups (dev environment vs pre-compiled binaries)


Installing dev-environment with ProxSpace

^Top

Video Installation guide

^Top

note: this video is out-of-date but still informative Windows Installation tutorial

Driver Installation ( Windows 7 )

^Top

note: for Windows 7 you will this step. On a later Windows edition skip this.

Install required drivers for your Windows installation. You may need admin privileges to do this.
Step by step guides are online such as RyscCorps.

Download ProxSpace repo

^Top

Download the Gator96100 ProxSpace package from https://github.com/Gator96100/ProxSpace/releases

Extract 'ProxSpace' to a location path without spaces.

Good example

D:\OneDrive\Documents\GitHub

Bad example

C:\My Documents\My Projects\proxspace
                  ^

If you're running Windows in a Virtualbox guest, make sure not to install ProxSpace on a vbox shared drive. (It's ok later to move the /pm3 subfolder to a shared drive and edit the *.bat)

Launch ProxSpace

^Top

Run runme64.bat.

You'll get a Bash prompt and your home directory should become the ProxSpace pm3 sub-directory.

Please note you will need to use / in paths as you are using Bash.

Clone the Iceman repository

^Top

cd
git clone https://github.com/RfidResearchGroup/proxmark3.git
cd proxmark3

If you're a contributing developer, you probably want to be able to use make style. If so, you've to install astyle:

pacman -S mingw-w64-x86_64-astyle

Compile and use the project

^Top

To use the compiled client, the only differences are that executables end with .exe (e.g. proxmark3.exe) and that the Proxmark3 port is one of your comX ports where "X" is the com port number assigned to proxmark3 under Windows, so commands like proxmark3 /dev/ttyACMX become proxmark3.exe comX.

Done!

^Top

Now you're ready to follow the compilation instructions.

Installing pre-compiled binaries with ProxSpace

^Top

There are a community effort by @gator96100 to make up-to-date precompiled version of the official repository and this repository. www.proxmarkbuilds.org

It has excellent instructions to follow.

Installing dev-environment with WSL 1

^Top

WSL 1 requires to run on Windows 10 version 1709 or above. Previous windows versions didn't have support for COM ports.

Stay away from WSL 2

^Top

Microsoft introduced WSL 2 starting on Windows 10 version 2004 with Hyper-V powering its virtualization; As of 2020-08-13, WSL 2 does not support USB and Serial.

More about WSL

^Top

Install WSL 1 with e.g. the standard Ubuntu. You can follow the guide on Microsoft Docs but be careful to follow WSL 1 specific instructions! When they recommend you to restart, you must restart.

For WSL configuration, see Manage and configure Windows Subsystem for Linux.

Make sure your WSL can launch Windows processes to get the pm3 scripts working (cf interop in the WSL settings).

X Server Installation

^Top

If you want to run the graphical components of the Proxmark3 client, you need to install a X Server such as in the list below, and launch it, e.g. by executing XLaunch.

Windows Terminal Installation

^Top

Microsoft has recently released a new terminal for their OS. It is much better experience than old cmd.exe so we strongly recommend installing it. It is also open sourced (see github.com/microsoft/terminal). You can download and install from GitHub or Microsoft Store.

Dependencies

^Top

Enter WSL prompt (wsl or Start Windows Terminal with wt) and from there, follow the Linux Installation Instructions for Ubuntu, summarized here below:

Make sure your WSL guest OS is up-to-date first:

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get auto-remove -y

Install dependencies:

sudo apt-get install --no-install-recommends git ca-certificates build-essential pkg-config \
libreadline-dev gcc-arm-none-eabi libnewlib-dev libbz2-dev libpython3-dev qtbase5-dev

note If you don't need the graphical components of the Proxmark3 client, you can skip the installation of qtbase5-dev.
If you don't need support for Python3 scripts in the Proxmark3 client, you can skip the installation of libpython3-dev.

Clone the Iceman repository

^Top

git clone https://github.com/RfidResearchGroup/proxmark3.git

Compile and use the project

^Top

To use the compiled client, the only difference is that the Proxmark3 port is translated from your comX port where "X" is the com port number assigned to proxmark3 under Windows, to a /dev/ttySX, so commands become:

proxmark3 /dev/ttyACM0  =>  proxmark3 /dev/ttySX

Depending on the Windows version, you might need to give permission to the current user to access /dev/ttySX: (change X to your port number)

ls -al /dev/ttySX
groups|grep dialout

If group ownership is dialout and your user is member of dialout group, all is fine. Else you'll have to provide access to /dev/ttySX: (Unfortunately the access rights of the port won't survive and will have to be fixed again next time.)

sudo chmod 666 /dev/ttySX

If you installed an X Server and compiled the Proxmark3 with QT5 support, you've to export the DISPLAY environment variable:

export DISPLAY=:0

And add it to your Bash (or your preferred shell) profile for the next times:

echo "export DISPLAY=:0" >> ~/.bashrc

Note that it may take a quite long time for a freshly plugged Proxmark3 to be visible on a WSL /dev/ttySX port.

Done!

^Top

Now you're ready to follow the compilation instructions.