检测加油站刷卡器窃密器:树莓派仪表盘扫描器
打造实时仪表盘小工具,检测加油站信用卡窃密器
信用卡欺诈持续猖獗,尤其在加油站,磁条卡易受简单廉价的窃密器攻击。窃密器套在读卡槽上,记录数据并转发给 POS 系统——本质是“中间人攻击”。
2023 年,SparkFun Electronics 的 Nathan Seidle 深度分析了从加油泵缴获的窃密器,并发布配套 Android/iOS App,扫描这些设备独特的蓝牙签名。虽实用,但许多用户更倾向永久部署、持续监控的环境感知方案。
1. 硬件
套件由两部分组成:树莓派 Zero W 和 Adafruit SSD1306 OLED 显示屏。OLED 支持 I²C 和 SPI,我们用 SPI 以获得更快传输。按官方 SparkFun 接线指南 接线。线材要短且柔韧——28AWG 单芯或多股线均可。
2. 配置 Raspbian
为实现无显示器/键盘的无头安装,用 Pi Bakery 预配置好家庭网络和 SSH 访问的 Raspbian 镜像,免去初始设置时的显示器键盘。
3. 安装 Python 与库
sudo apt update
sudo apt install -y python3 python3-pip python3-dev bluetooth libbluetooth-dev git
sudo pip3 install pybluez
sudo pip3 install RPi.GPIO
sudo pip3 install Adafruit_BBIO
sudo apt install -y python3-imaging python3-smbus
克隆并安装 SSD1306 驱动:
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
cd Adafruit_Python_SSD1306
sudo python3 setup.py install
4. 窃密器扫描软件
克隆开源扫描器:
cd ~
git clone https://github.com/photoresistor/raspi_skimscan
cd raspi_skimscan
python3 raspi_skimscan.py
屏幕显示“Scanning…”并每 10 秒更新。测试时将手机蓝牙设备名改为 HC-05,扫描器应将其标记为潜在窃密器。
设为可执行并配置开机自启:
sudo chmod +x raspi_skimscan.py
sudo nano /etc/rc.local
在 exit 0 前插入:
sudo python3 /home/pi/raspi_skimscan/raspi_skimscan.py &
5. 组装
从 GitHub 仓库 下载外壳文件并 3D 打印。将 OLED 安装在顶板,少许热熔胶固定,树莓派放底板。用 M2.5×10mm 圆头螺丝合合两半。
将成品固定在车辆仪表盘或中控台显眼但不分心处。用任何能提供至少 1A 的 5V USB 电源供电。
制造工艺