microsoft/CyberBattleSim

An experimentation and research platform to investigate the interaction of automated agents in an abstract simulated network environments.

What it solves

CyberBattleSim provides a controlled, abstract environment to research how automated agents interact within computer networks. By simulating enterprise network structures and cyber-attack scenarios, it allows researchers to study how agents learn to navigate networks and how defenders can mitigate threats, all within a safe, non-real-world environment.

How it works

The platform uses a Python-based interface compatible with OpenAI Gym, enabling the use of reinforcement learning algorithms. The simulation features a network of nodes with planted vulnerabilities. An attacker agent attempts to gain ownership of the network by exploiting these vulnerabilities, while a defender agent monitors activity and attempts to evict the attacker by re-imaging compromised nodes. Researchers can define custom network topologies and measure performance based on the number of steps taken to reach a goal or cumulative rewards earned.

Who it’s for

This platform is designed for security researchers and machine learning practitioners interested in experimenting with reinforcement learning in the context of cybersecurity. It is intended for those looking to benchmark different AI agents against specific network configurations or to study the evolution of autonomous cyber-defensive strategies.

Highlights

  • Highly abstract simulation that prevents direct application to real-world systems, ensuring safe research.
  • Native support for reinforcement learning through an OpenAI Gym interface.
  • Includes baseline agents and tools for benchmarking performance across different network topologies.
  • Extensible architecture allowing users to define custom vulnerabilities, network layouts, and defender behaviors.

Related

  • Project
  • Project
  • Project
  • Project