
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
nasim
Advanced tools
Status: Stable release. No extra development is planned, but still being maintained (bug fixes, etc).
|docs|
Network Attack Simulator (NASim) is a simulated computer network complete with vulnerabilities, scans and exploits designed to be used as a testing environment for AI agents and planning techniques applied to network penetration testing.
The easiest way to install the latest version of NASim hosted on PyPi is via pip::
$ pip install nasim
To install dependencies for running the DQN test agent (this is needed to run the demo) run::
$ pip install nasim[dqn]
To get the latest bleeding edge version and install in development mode see the Install docs <https://networkattacksimulator.readthedocs.io/en/latest/tutorials/installation.html>_
To see NASim in action, you can run the provided demo to interact with an environment directly or see a pre-trained AI agent in action.
To run the tiny benchmark scenario demo in interactive mode run::
$ python -m nasim.demo tiny
This will then run an interactive console where the user can see the current state and choose the next action to take. The goal of the scenario is to compromise every host with a non-zero value.
See here <https://networkattacksimulator.readthedocs.io/en/latest/reference/scenarios/benchmark_scenarios.html>_ for the full list of scenarios.
To run the tiny benchmark scenario demo using the pre-trained AI agent, first ensure the DQN dependencies are installed (see Installation section above), then run::
$ python -m nasim.demo tiny -ai
Note: Currently you can only run the AI demo for the tiny scenario.
The documentation is available at: https://networkattacksimulator.readthedocs.io/
NASim implements the Gymnasium <https://github.com/Farama-Foundation/Gymnasium/tree/main>_ environment interface and so can be used with any algorithm that is developed for that interface.
See Starting NASim using gymnasium <https://networkattacksimulator.readthedocs.io/en/latest/tutorials/gym_load.html>_.
Jonathon Schwartz - Jonathon.schwartz@anu.edu.au
MIT_ © 2020, Jonathon Schwartz
.. _MIT: LICENSE
2023-05-14 (v 0.12.0) (MINOR release)
NASimEnv.get_minimum_actions -> NASimEnv.get_minumum_hops to better reflect what it does (thanks @rzvnbr for the suggestion).2023-03-13 (v 0.11.0) (MINOR release)
gymnasium (formerly Open AI gym) <https://github.com/Farama-Foundation/Gymnasium/>_ fromOpen AI gym (thanks @rzvnbr for the suggestion).2023-02-27 (v 0.10.1) (MICRO release)
2022-07-30 (v 0.10.0) (MINOR release)
Fixed typos (thanks @francescoluciano)
Updates to be compatible with latest version of OpenAI gym API (v0.25) (see Open AI gym API docs <https://www.gymlibrary.ml/content/api/>_ for details), notable changes include
gym.make API (see gym load docs <https://networkattacksimulator.readthedocs.io/en/latest/tutorials/gym_load.html>_ for details.)gym.make(env_id, new_step_api=True)2022-05-19 (v 0.9.1) (MICRO release)
2021-12-20 (v 0.9.0) (MINOR release)
2021-3-15 (v 0.8.0) (MINOR release)
2020-12-24 (v 0.7.5) (MICRO release)
2020-12-17 (v 0.7.4) (MICRO release)
2020-09-23 (v 0.7.3) (MICRO release)
2020-09-20 (v 0.7.2) (MICRO release)
agents/ql_agent.py and agents/ql_replay.pyAgents section to docs, along with other minor doc updates2020-09-20 (v 0.7.1) (MICRO release)
2020-09-20 (v 0.7.0) (MINOR release)
2020-08-02 (v 0.6.0) (MINOR release)
2020-07-31 (v 0.5.0) (MINOR release)
.. |docs| image:: https://readthedocs.org/projects/networkattacksimulator/badge/ :target: https://networkattacksimulator.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status :scale: 100%
FAQs
A simple and fast simulator for remote network pen-testing
We found that nasim demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.