开发板:飞凌LS1028A Ubuntu20.04版本
虚拟机:VMWare Ubuntu20.04版本
1. Scapy介绍
Scapy是一个强大的,用Python编写的交互式数据包处理程序,它能让用户发送、嗅探、解析,以及伪造网络报文,从而用来侦测、扫描和向网络发动攻击。Scapy可以轻松地处理扫描(scanning)、路由跟踪(tracerouting)、探测(probing)、单元测试(unit tests)、攻击(attacks)和发现网络(network discorvery)之类的传统任务。它可以代替hping
,arpspoof
,arp-sk
,arping
,p0f
甚至是部分的Nmap
,tcpdump
和tshark
的功能。
本文安装Spacy目的为使开发板可以在不动内核的情况下发送指定MAC地址以及VLAN ID的数据帧,在此之前探索过pktgen、socket编程通信等多种方法。就目前的测试经历来看,基于Python的Spacy使用起来最为便捷。
2. Python3环境搭建
(1)确认是否安装Python3
Scapy安装需要Python环境,需确认Linux中是否安装Python3对应版本以及pip工具:
root@forlinx:~# python3 --version
root@forlinx:~# pip3 --version
输入上面两条命令,查看是否有输出python的版本信息,如果没有那么说明还没有安装python环境。
(2)Python3安装
安装之前,请先确认自己的板卡是否能联网。可以ping百度的网址:
root@forlinx:~# ping www.baidu.com
ping通之后如下图所示
若不能则无法使用apt命令,需先进行连通外网调试,详情见前篇文章。
然后运行如下命令:
# 在板卡上执行如下命令,需要联网
# 第一次使用apt需要更新
sudo apt update
# 安装python3
sudo apt -y install python3
# 安装pip工具
sudo apt -y install python3-pip
(3)确认安装是否完成
3. Scapy安装教程
(1)安装Scapy:
使用pip工具安装
pip install scapy
一些扩展功能安装,可选:
pip install matplotlib pyx cryptography
(2)启动Scapy
root@forlinx:~# scapy
本文可选的一些库没装上,因此有一些功能不可用,但基础发包功能可满足。
至此Scapy已于开发板及虚拟机正常加载,输入ctrl+d退出可当前模式。
具体发包过程于后续文章进行测试。