在Ubuntu环境下配置Proxmark3(PM3)使用环境
参考资料:PM3官方Wiki
因为国内网络上大多是在Kali系统上使用PM3的教程(链接1、链接2、链接3),而这些教程的步骤对于Ubuntu系统并不完全适用。所以写下本文,记录我个人的安装经历。
本教程与官方Wiki相比省略了部分步骤,仅验证过在全程root用户操作时可行,建议按照官方英文教程进行安装
官方Wiki中的刷写固件步骤(Flashing XXX)非必须且风险较大,除非有需求,否则不要轻易刷固件,容易变砖
一、安装必要软件包
在终端中依次执行以下命令
sudo apt update
sudo apt 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 libstdc++-arm-none-eabi-newlib libpcsclite-dev pcscd
对比在Kail系统下执行的命令,可发现Ubuntu环境下需要添加libstdc++-arm-none-eabi-newlib、p7zip等安装包。其中libstdc++-arm-none-eabi-newlib是编译PM3源码时所必需的,用于交叉编译ARM程序的C++库。缺失该安装包会导致后续编译过程中频繁出现找不到头文件的错误。猜测Kali系统中已包含该安装包
二、下载、编译PM3源码
在终端中依次执行以下命令
git clone https://github.com/Proxmark/proxmark3.git
cd proxmark3
git pull
make clean && make all
完成之后当前目录下会出现一个叫proxmark3的文件夹,里面包含了编译好的PM3固件,PM3主程序等文件
若要将PM3安装到其它目录下,则执行以下命令
git clone https://github.com/Proxmark/proxmark3.git [指定目录]
cd [指定目录]
git pull
make clean && make all
不建议直接下载PM3的zip源码使用,因为很可能出现问题
三、运行PM3
连接PM3硬件,在终端中输入dmesg | grep -i usb,查看PM3所在端口
若终端显示如下内容(出现Product: proxmark3以及USB ACM device)则说明PM3硬件连接成功
[ 1456.372962] usb 6-1: New USB device found, idVendor=9ac4, idProduct=4b8f, bcdDevice= 0.01
[ 1456.372980] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1456.372990] usb 6-1: Product: proxmark3
[ 1456.372999] usb 6-1: Manufacturer: proxmark.org
[ 1456.411452] cdc_acm 6-1:1.0: ttyACM0: USB ACM device
记录下端口号(ttyACM?),依次执行
cd client
./proxmark3 /dev/ttyACM0
其中ttyACM0用刚才的端口号替换
成功运行PM3后的界面如下,其中含有PM3的固件信息、硬件信息,同时最后会等待输入PM3的相关命令
root@orangepizeroplus:~/proxmark3/client# ./proxmark3 /dev/ttyACM0
Prox/RFID mark3 RFID instrument
bootrom: ……
os: ……
fpga_lf.bit built for……
fpga_hf.bit built for……
SmartCard Slot: not available
uC: AT91SAM7S……
Embedded Processor: ARM7TDMI
Nonvolatile Program Memory Size: ……
Second Nonvolatile Program Memory Size: None
Internal SRAM Size: 64K bytes
Architecture Identifier: AT91SAM7S……
Nonvolatile Program Memory Type: Embedded Flash Memory
proxmark3>
如果在端口号正确的情况下出现ERROR: invalid serial port,则需要拔插数据线重新连接PM3然后再试
2019.06.26
在Ubuntu环境下配置Proxmark3(PM3)使用环境的更多相关文章
- Linux环境下配置JDK,java环境
1.查看Linux自带的JDK是否已安装 # java -version 2. 查看JDK信息 # rpm -qa | grep java 显示: java-x.x.x-gcj-compat-x.x. ...
- Ubuntu下配置C/C++开发环境
在 Ubuntu 下配置 C/C++ 开发环境 转自:白巴的临时空间 Submitted by 白巴 on 2009-04-27 19:52:12. 学习笔记 虽然 Ubuntu 的版本已经是9.04 ...
- Ubuntu 12.04环境下配置Postgresql和phppgadmin
Ubuntu 12.04环境下配置Postgresql 9.1 和phppgadmin 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/zjianb ...
- Ubuntu环境下配置GCC
Ubuntu网络环境下安装GCC及其头文件步骤: 1.Ubuntu环境下配置GCC 刚装好的GCC什么都不能编译,因为没有一些必须的头文件,所以要安装build-essential,安装了这个包会安装 ...
- 在Ubuntu环境下配置NIMH MEG Core Facility之CTF Tools
在Ubuntu环境下配置NIMH MEG Core Facility之CTF Tools 网站有提示: The install script won't work, but you can copy ...
- Ubuntu环境下配置Android Studio【转】
本文转载自:https://www.jianshu.com/p/1f6295f9c955 之前学习Android开发的时候,一直跟各种教程一样,使用的是Eclipse+ADT,主要是比较方便,容易上手 ...
- wsl环境下配置ubuntu16.04
wsl环境下配置ubuntu16.04 在公司同事的安利下,终于给自己用了8年的老笔记本(戴尔XPS L502X)换上了固态硬盘(WD500G,SATA3接口) 当然,系统重装了一遍,所有的软件也都没 ...
- 在Windows下配置Linux远程开发环境
在Windows下配置Linux远程开发环境 欢迎光临我的个人博客 https://source.chens.life/Configure-Linux-remote-development-envir ...
- 【经验之谈】Windows环境下配置WordPress
前言 wordpress全球著名的开放博客平台,拥有成千上万个各式插件和不计其数的主题模板样式,使用php和mysql搭建,下面说下载windows环境下配置wordpress,经验之谈. 安装 关于 ...
随机推荐
- SolrCloud 高可用集群搭建
1.1 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候 ...
- python实现fibonacci数列的三种方法
第一种:递归法 def fibo(n): if n < 3: return 1 return fibo(n-1) + fibo(n-2) print(fibo(6)) 第二种:循环 def fi ...
- 08. Go 语言包(package)
Go 语言包(package) Go 语言的源码复用建立在包(package)基础之上.Go 语言的入口 main() 函数所在的包(package)叫 main,main 包想要引用别的代码,必须同 ...
- Hive参数调优
调优 Hive提供三种可以改变环境变量的方法,分别是: (1)修改${HIVE_HOME}/conf/hive-site.xml配置文件: 所有的默认配置都在${HIVE_HOME}/conf/hiv ...
- [译]Vulkan教程(02)概况
[译]Vulkan教程(02)概况 这是我翻译(https://vulkan-tutorial.com)上的Vulkan教程的第2篇. This chapter will start off with ...
- 用 Python 图像识别打造一个小狗分类器
项目介绍 小狗分类器可以做什么? 通过这个分类器,你只需要上传照片,就可以得到小狗的品种,以及更多的信息. 这就是所谓的「机器学习」,让机器自己去“学习”.我们今天要做的这个分类任务,是一个“监督 ...
- Vue小练习 02
用table标签渲染下面的数据, 最后一列为总分, 第一列为排名 scores = [ {name: 'Bob', math: 97, chinese: 89, english: 67}, {name ...
- sublime插件开发教程3
今天就看下api的使用方法 中文的api文档 https://mux.alimama.com/posts/549.html#sublime.View sublime模块 方法 返回值 描述 set_t ...
- 解决“var/log/sysstat/sa21: 没有那个文件或目录 请检查是否允许数据收集”
想使用sar查看一些系统的一些活动信息,发现报错.记录一下 使用apt install sysstat后第一次 报错 /var/log/sysstat/sa21: 没有那个文件或目录 请检查是否允许数 ...
- go语言之if语句和switch语句和循环语句
1.if语句 package main import ( "fmt" "io/ioutil" ) func main() { //流程控制 //使用常量定义一个 ...