Proxmark developers community

Research, development and trades concerning the powerful Proxmark3 device.

Remember; sharing is caring. Bring something back to the community.


"Learn the tools of the trade the hard way." +Fravia

You are not logged in.

#1 2016-09-21 08:50:05

Exploitagency
Contributor
Registered: 2015-11-10
Posts: 24
Website

Guide for Compiling on Kali 2016 Rolling

Added to the Wiki: https://github.com/Proxmark/proxmark3/wiki/Kali%20Linux
It may be easier on the eyes to view it there.

This is a guide for compiling the Proxmark3 firmware on the Linux Distribution: Kali Rolling-Edition. It has been verified working as of Kali 2016.2 Release.

---Compiling Firmware---
Open a terminal: Download and install the essentials to build Proxmark3 from source:

sudo apt-get install git build-essential libreadline5 libreadline-dev gcc-arm-none-eabi libusb-0.1-4 libusb-dev libqt4-dev ncurses-dev perl pkg-config

Check out the latest revision of the Proxmark project:

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

Open the recently cloned Proxmark3 repository

cd proxmark3

Now compile the bootrom, OS and software.

make clean && make

---Plug in the Proxmark3---
Connect the Proxmark3 to an empty USB port. Open a terminal and run:

dmesg|grep -i usb

You will get similar to one of the two following outputs that will affect the next few steps.

If it shows up as a HID device like below then Jump to Upgrading Proxmark3 to CDC Bootloader

[ 5414.961137] usb 2-2.2: new full speed USB device number 11 using uhci_hcd
May  3 15:53:43 proxtest mtp-probe: checking bus 2, device 11: "/sys/devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-2/2-2.2"
[ 5422.297626] generic-usb 0003:9AC4:4B8F.0008: hiddev0,hidraw2:
USB HID v1.00 Device [ProxMark-3 RFID Instrument] on usb-0000:02:00.0-2.2/input0

If it shows up as a CDC device like below then Jump to Upgrading Proxmark3 Firmware

[10416.461687] usb 2-1.2: new full-speed USB device number 12 using ehci_hcd
[10416.555093] usb 2-1.2: New USB device found, idVendor=2d2d, idProduct=504d
[10416.555105] usb 2-1.2: New USB device strings: Mfr=1, Product=0, SerialNumber=0
[10416.555111] usb 2-1.2: Manufacturer: proxmark.org
[10416.555814] cdc_acm 2-1.2:1.0: This device cannot do calls on its own. It is not a modem.
[10416.555871] cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device

---Upgrading Proxmark3 to CDC Bootloader---
Unplug the Proxmark3.

Make sure you are in the "proxmark3" directory and issue the following commands.

cd client/hid-flasher
make

Hold down the button on the Proxmark3 and continue to hold it down. Attach the Proxmark3 to an empty USB port still holding down the button and issue the following command:

./flasher -b ../../bootrom/obj/bootrom.elf

Release the button. And go back to the main Proxmark3 directory.

cd ../..

Note: This can be a real chore to upgrade to the CDC bootloader when using a virtual machine. I recommend using a real install or booting from a live DVD or USB drive.

You can now skip forward to Upgrading Proxmark3 Firmware!

---Upgrading Proxmark3 Firmware---
Make sure you are in the "proxmark3" directory and issue the following commands:

cd client
./flasher /dev/ttyACM0 ../armsrc/obj/fullimage.elf
cd ..

The flasher program will detect your Proxmark3 and reboot it. Once it reboots and starts back up in the proper mode the flasher will detect the Proxmark3 again and then start flashing the firmware. You may have to run "dmesg" and check what serial port your Proxmark3 is connected to and replace "ttyACM0" if you encounter issues. Also try unplugging and plugging the USB cable back in and running the command again. WARNING! Do not unplug the USB cable or cancel the command while it is actually upgrading the firmware. It may take a little while for the flasher to actually detect the Proxmark3 after rebooting, typically less than a minute.

---Accessing Proxmark3 Client---
Make sure you are in the "proxmark3" directory.

cd client
./proxmark3 /dev/ttyACM0

If all went well you should get some information about the firmware and memory usage as well as the following prompt:

proxmark3>

You are now ready to use your newly upgraded Proxmark3!

Last edited by Exploitagency (2016-09-30 08:05:37)


Assorted Pre-compiled firmware collection with Easy Flasher tool: https://github.com/exploitagency/github-proxmark3-standalone-lf-emulator
Bitcoin: 1Fu1pd5BuzjmthMXBa6LzByfa7X2VFUyrw

Offline

#2 2016-09-21 10:17:15

iceman
Administrator
Registered: 2013-04-25
Posts: 4,794
Website

Re: Guide for Compiling on Kali 2016 Rolling

Great post!

I've a question,   for ubuntu I can do the following to get the gcc-arm- build env.  Can't Kali do the same?

sudo apt-get install gcc-arm-none-eabi  

or as the wiki says:
sudo apt-get install p7zip git build-essential libreadline5 libreadline-dev gcc-arm-none-eabi libusb-0.1-4 libusb-dev libqt4-dev ncurses-dev perl pkg-config wget

冰人

modhex(hkhehghthbhudcfcdchkigiehgduiehg)

Offline

#3 2016-09-21 10:21:25

Exploitagency
Contributor
Registered: 2015-11-10
Posts: 24
Website

Re: Guide for Compiling on Kali 2016 Rolling

You are absolutely correct.  The wiki method works on Kali 2016.2 Rolling ISO(just tested on a live iso).  Compiling.txt needs to be updated then in the official repo.  I bet that is where people are having issues.

The line below is verified to be working on Kali 2016.2 Rolling ISO:

sudo apt-get install p7zip git build-essential libreadline5 libreadline-dev gcc-arm-none-eabi libusb-0.1-4 libusb-dev libqt4-dev ncurses-dev perl pkg-config wget
cd into proxmark3 directory
make

I finished the wiki article and updated this thread as well.
https://github.com/Proxmark/proxmark3/wiki/Kali%20Linux

Last edited by Exploitagency (2016-09-30 08:07:09)


Assorted Pre-compiled firmware collection with Easy Flasher tool: https://github.com/exploitagency/github-proxmark3-standalone-lf-emulator
Bitcoin: 1Fu1pd5BuzjmthMXBa6LzByfa7X2VFUyrw

Offline

#4 2016-11-04 04:12:42

myblackhatch
Contributor
Registered: 2016-10-21
Posts: 5

Re: Guide for Compiling on Kali 2016 Rolling

I was going to start a new thread but I think this might be helpful here aswell.

I followed the directions on the kali guide and I am getting this error

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'libncurses5-dev' instead of 'ncurses-dev'
Package gcc-arm-none-eabi is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'gcc-arm-none-eabi' has no installation candidate

I am about 4 months into using Debian "kali" as my main OS and this is the first time I have encountered "no installation candidate" any advice?

Offline

#5 2016-11-06 02:44:18

myblackhatch
Contributor
Registered: 2016-10-21
Posts: 5

Re: Guide for Compiling on Kali 2016 Rolling

myblackhatch wrote:

I was going to start a new thread but I think this might be helpful here aswell.

I followed the directions on the kali guide and I am getting this error

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'libncurses5-dev' instead of 'ncurses-dev'
Package gcc-arm-none-eabi is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'gcc-arm-none-eabi' has no installation candidate

I am about 4 months into using Debian "kali" as my main OS and this is the first time I have encountered "no installation candidate" any advice?

Found the file here

http://repo.kali.org/kali/pool/main/g/gcc-arm-none-eabi/

To install it requires binutils-arm-none-eabi

sudo apt-get install binutils-arm-none-eabi

Then
dpkg -i      (your newly downloaded gcc-arm-none-eabi file)

Good to go.

Offline

#6 2016-11-16 12:56:21

Exploitagency
Contributor
Registered: 2015-11-10
Posts: 24
Website

Re: Guide for Compiling on Kali 2016 Rolling

EDIT: UPDATE!  It appears the package has been moved back into the main repo.  So people can disregard these last few posts and troubleshooting tips unless it happens again.  Just be sure to at minimum run "apt-get update" before following the install guide for Kali in the wiki.  PS: Sorry for chiming in late.  I don't check all of my accounts as often as I should.
---------------OLD MESSAGE BELOW---------------------
Yeah, this is unfortunate they removed the package from the main repo.  It is needed for several projects.  I urge everyone to contact OffSec-Kali and mention it.  I was waiting to see if they put the package back up before I modify the wiki.

It is still available in this snapshot if you want to use apt-get to install it.
http://archive.linux.duke.edu/kalilinux/kali/dists/kali-last-snapshot/

Add this to sources.list file(/etc/apt/sources.list)
## Kali-last-snapshot
deb http://http.kali.org/kali kali-last-snapshot main contrib non-free

OR if it doesn't work try this(maybe its just in the Duke mirror)
Add this to sources.list file(/etc/apt/sources.list)
## Kali-last-snapshot
deb http://archive.linux.duke.edu/kalilinux/kali/dists/kali-last-snapshot/ main contrib non-free

Thanks for posting an alternative for people as well, this will come in handy when the snapshot is updated!

Last edited by Exploitagency (2016-11-20 16:41:19)


Assorted Pre-compiled firmware collection with Easy Flasher tool: https://github.com/exploitagency/github-proxmark3-standalone-lf-emulator
Bitcoin: 1Fu1pd5BuzjmthMXBa6LzByfa7X2VFUyrw

Offline

#7 2018-01-28 19:04:25

maako
Contributor
Registered: 2018-01-27
Posts: 2

Re: Guide for Compiling on Kali 2016 Rolling

Seems like they are gone again..

root@kali:~#   sudo apt-get install git build-essential libreadline5 libreadline-dev gcc-arm-none-eabi libusb-0.1-4 libusb-dev libqt4-dev ncurses-dev perl pkg-config
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package pkg-config is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

Package libusb-dev is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  libusb-0.1-4

E: Unable to locate package libreadline-dev
E: Unable to locate package gcc-arm-none-eabi
E: Package 'libusb-dev' has no installation candidate
E: Unable to locate package ncurses-dev
E: Package 'pkg-config' has no installation candidate

Offline

Board footer

Powered by FluxBB