
Prova de conceito demonstrando uma bypass de permissão no framework de segurança ROS 2 SROS2, permitindo assinatura não autorizada de tópicos via arquivos de permissões modificados.
Ambiente de teste de segurança ROS 2 DDS, baseado no ROS 2 Foxy.
Este projeto demonstra uma vulnerabilidade de bypass de permissão no framework de segurança ROS 2 SROS2. Ao modificar arquivos de permissão assinados, um atacante pode fazer com que um nó se inscreva em tópicos aos quais não deveria ter acesso.
docker build -t dds-test .
docker run -it dds-test ./poc.sh
O script poc.sh executa os seguintes passos:
ros2 security para gerar chaves e certificados para o talker e listenerchatter e o listener para apenas subscrever o tópico something_elsechatterDockerfile - Configuração do ambiente ROS 2 Foxypoc.sh - Script de demonstração PoCConstruir e executar o ambiente de vulnerabilidade Docker

Executar PoC

Execução do PoC
Explicação dos arquivos de configuração:

Situação Normal
O listener não consegue ouvir as mensagens publicadas pelo taker
Iniciar Ataque

Resultado
O listener consegue ouvir as mensagens publicadas pelo taker