[发明专利]一种针对机器人操作系统ROS消息的攻击方法有效
申请号: | 202011414417.4 | 申请日: | 2020-12-07 |
公开(公告)号: | CN112738022B | 公开(公告)日: | 2022-05-03 |
发明(设计)人: | 陈博;俞钡钡;杨望卓;岳凯 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | H04L9/40 | 分类号: | H04L9/40 |
代理公司: | 杭州斯可睿专利事务所有限公司 33241 | 代理人: | 王利强 |
地址: | 310014 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 机器人 操作系统 ros 消息 攻击 方法 | ||
1.一种针对机器人操作系统ROS消息的攻击方法,其特征在于,所述方法包括以下步骤:
步骤1:搭建基于机器人操作系统ROS的仿真实验环境:仿真平台包含两块NvidiaJetson TX2开发板,在TX2开发板中安装16.04版本的操作系统Ubuntu、Kinetic版本的机器人操作系统ROS以及Gazebo软件平台;
步骤2:将安装有机器人操作系统的两块TX2开发板构成主从式的分布式网络结构:两块Nvidia Jetson TX2开发板置于同一无线网络下进行组网,指定一块TX2开发板作为ROSMASTER,另一块则作为从机,获取两块TX2的IP地址,分别配置ROS_MASTER_URI以及ROS_IP;
步骤3:进行仿真实验:在ROS MASTER加载Gazebo环境,启动仿真平台,导入Turtlebot3-waffle机器人仿真模型,启动仿真,通过rosnode list和rostopic list命令,可获得当前机器人操作系统中已经启动的节点以及所包含的话题;在ROS从机启动上位机平台,控制Gazebo中Turtlebot3机器人的移动,以及实时反馈当前机器人的运动状态;
所述ROS上位机平台是一个基于QT的用户交互界面,基于话题通信,发布以及订阅话题,向机器人远程发送包含角速度线速度的控制信号;
步骤4:攻击者获取ROS MASTER设备的IP地址:攻击者接入基于机器人操作系统ROS的分布式网络中,进行网络嗅探,取得所有设备的IP地址,对所有IP地址进行端口扫描,找到ROS开放端口对应的IP地址即为设备ROS MASTER;
所述开放端口是指设定ROS_MASTER_URI时,默认开放端口:11311;
步骤5:拦截ROS MASTER与从机之间通过TCPROS传输的数据包,保存至攻击者系统本地,进行字段分析;
步骤6:在攻击者系统内,使用LUA语言,编写过滤器,设定控制信号数据包的拦截以及篡改规则,规则如下,查找含有关键数据字段“\x30”的数据包,作为拦截数据包;然后,对48个字节的控制信号数据包进行分割,分成线速度x向量、线速度y向量和z向量以及角速度x向量和y向量、角速度z向量三部分,线速度x向量为8字节,线速度y向量和z向量以及角速度x向量和y向量共32字节,角速度z向量为8字节,攻击者对8字节的两个部分数据段做出篡改,最后将字段首尾重新进行拼接,将篡改后的控制信号发送给机器人,使得机器人执行攻击者篡改后的恶意控制信号,运行状态发生改变,实现ROS消息数据的篡改攻击。
2.如权利要求1所述的一种针对机器人操作系统ROS消息的攻击方法,其特征在于,所述步骤4中,得到ROS MASTER的设备IP地址后,继续分析与该IP地址通过TCP协议传输数据的ROS从机IP地址,即可找到该仿真平台中向机器人发送控制信号的设备IP。
3.如权利要求1或2所述的一种针对机器人操作系统ROS消息的攻击方法,其特征在于,所述步骤6中,在物理环境中的ROS小车上进行试验,由QT上位机向ROS小车发送控制信号,攻击者按照上述攻击方法实施数据篡改攻击,实验效果为,过滤器处于运行状态时,ROS小车将收不到上位机发送的控制信号,一直处于执行攻击者篡改后的控制信号的状态,攻击者停止攻击后,ROS小车将恢复到执行未受攻击的控制信号的状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011414417.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种集尘器
- 下一篇:一种焊管成型用挤压辊弧形检测设备