防护思路
点击放大

Roadside Guardian is a ROS 2 workspace designed to facilitate (V2X) communication, specifically focusing on Road-Side Unit (RSU) and Autonomous (Ego) interactions using Autoware. This project aims to demonstrate and experiment with cooperati, trajectory arbitration, and sensor spoofing scenarios.
It acts as a top-le workspace containing essential packages and dependencies for both the RSU side and the side.
The system bridges an Autonomous (running Autoware) and an RSU (running perception sensors like LiDAR and Camera). The RSU can detect objects in blind spots, compute localized coordinates, and share perception data or corrected trajectories with the . Additionally, the workspace includes experimental "sensor spoofing" mechanisms to test the 's response to unauthorized or faulty sensor injections.
The workspace is organized into two main domains: rsu and .
#### RSU (Infrastructure Side)
rsu_autoware_bridge: Contains bridge nodes that handle the communication of trajectories and perception data between the RSU and the . E and arbitrates trajectories based on V2X cooperative data.rsu_autoware_launcher: Custom launch configurations (autoware_launch_rsu) running the Autoware stack specifically structured for the RSU's planning or display modes.bbox2marker: An RViz2 helper utility that converts 3D bounding box detection data (/Detection3DArray) into markers (/MarkerArray) for easy debugging.#### (Ego Side)
autoware_launch_v2x, etc.): Configurations extending the standard autoware_launch tailored for the V2X interactions on the ego .sensor_publish_selector: A multiplexer node for sensor topics. It switches between the 's original sensor data (e.g., LiDAR point cloud, camera images) and fake sensor data depending on the spoofing trigger flag.sensor_spoofing_trigger: Monitors the 's kinematic state (odometry) and dynamically triggers a "spoofing" flag when the enters a specific geographical zone (e.g., past a defined Y-coordinate threshold).: Measures and publishes the round-trip or one-way communication latency between the and the RSU.vcs (), defined in .repos. Important dependencies include:rsu_preprocessor: Processes RSU LiDAR point clouds, performs ICP localization against a map, and broadcasts standard Autoware perception messages.fake_sensor_publisher: Plays back pre-recorded "fake" sensor data matching the 's current pose to spoof the perception stack.: An OpenC dashboard node to ego status, V2X latency, spoofing activity, and planned trajectories on a top-down minimap.mmdet3d_ros2 & mmdetection3d: Deep learning-based 3D object detection for the RSU's LiDAR.: Dri for the RSU's LiDAR.autoware_auto_msgs: Standard message definitions used by the Autoware stack.1. Clone this repository (which acts as the workspace root):
2. Import dependencies using vcs:
3. Install ROS dependencies:
4. Source your installed Autoware workspace and build the repository:
> Important: You MUST source your Autoware workspace (e.g., ~/autoware/install/setup.bash) before building this repository, as it depends on Autoware messages and libraries.
The workspace provides interacti scripts to easily launch different configurations for both the RSU and the .
setup-ros-env-rsu.sh)Before launching any nodes, you must configure your ROS 2 domain to prevent crosstalk and appropriately isolate the RSU and Ego networks. Note: You must source this script in *every* new terminal you open before running the subsequent commands.
You will be prompted to select a mode (, RSU, or Standalone). This correctly sets your ROS_DOMAIN_ID and ROS_LOCALHOST_ONLY en .
For both the (PIXKIT) and the RSU, you will need to open three separate terminals and run the following scripts in sequence (1 -> 2 -> 3).
#### Terminal 1: Establish Zenoh V2X Bridge (connect_zenoh.sh)
Use the connect_zenoh.sh script to establish the Zenoh-based bridge for cross-domain communication between the and the RSU:
You will be prompted to select a mode to connect as either the Ego or the RSU.
#### Terminal 2: Launch Autoware (launch_autoware.sh)
Use the launch_autoware.sh script to launch the core Autoware stack in different modes:
You will be prompted to select a mode:
1. PIXKIT Mode: Launches Autoware for the ego (PIXKIT).
2. RSU Planning Mode: Launches the Autoware planning stack on the RSU to calculate alternati based on cooperative data.
#### Terminal 3: Launch V2X Nodes (launch_v2x.sh)
Use the launch_v2x.sh script to launch the V2X, sensing, and bridge nodes that connect the RSU and the :
You will be prompted to select a mode:
1. PIXKIT Mode: Launches nodes, including the V2X bridge, sensor publisher selectors, spoofing trigger, latency monitor, and dashboard.
2. RSU Mode: Launches RSU-side nodes. This includes executing helper scripts (scripts/launch_vlp32.sh, scripts/launch_lidar_detection.sh for multi-sensor detection), the RSU preprocessor (rsu_preprocessor.launch.xml), and the RSU-side V2X bridge.
will automatically launch to the V2X communication latency, trajectory o, and sensor spoofing states in real-time.autoware_auto_msgs, whereas the RSU side uses the latest Autoware framework utilizing autoware_msgs.launch_autoware.sh, launch_v2x.sh, etc.) contain specific workspace and map paths (e.g., MAP_PATH or source ~/autoware/install/setup.bash). Please edit these .sh files and adjust the paths to match your local en before executing them.---
*Disclaimer: This repository is intended for research, testing, and simulation purposes regarding V2X communication and cybersecurity.*
The custom launch and configuration packages within this repository are heavily dependent on and based upon the open-source Autoware project.
By design, this repository does not duplicate the entire Autoware system. Instead, it employs a sparse, o architecture that contains only the specific launch files and parameter configurations modified for our Road-Side Unit (RSU) and V2X en. This ensures seamless integration and tracking with upstream Autoware updates.
In accordance with the original source material, all such modified packages and o configurations inherit and are distributed under the Apache License 2.0. Please refer to the respecti's package.xml and source files for specific copyright headers.
We would like to express our profound gratitude to the Autoware Foundation and Tier IV, Inc. for pro the robust, state-of-the-art baseline architecture that made this research and de possible.
开发语言:C++
Star 数:1
该项目属于防护思路方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕Roadside Guardian: A defensive V2X architecture for infrastructure-assisted autonomous driving security against sensor spoofing attacks.展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。
| 资源标题 | roadside-guardian - Roadside Guardian: A defensive V2X architecture fo |
| 所属分类 | 防护思路 |
| 发布作者 | admin |
| 发布时间 | 2026-10-06 00:27:26 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 134 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |