Comments (5)
@forrestmckee You can cherry pick the fix from this branch:
https://github.com/microsoft/CyberBattleSim/tree/wiblum/71
It will need some more testing before merging into the
main
branch, but I've verified that it fixes the problem on your repro notebook. Let me know if that works for you.
Sorry for the delay.
Yes, this fixed the issue for me. Thanks!
from cyberbattlesim.
That would not be a correct behavior. The agent should be rewarded the node value no matter how it got access to it (either via a remote vulnerability or an authenticated connection). Note that it only gets the reward the first time it gets access to it, subsequent attempts to own a node that's already owned by the attacker yield no reward.
We can take a look at it if you have a repro to share.
from cyberbattlesim.
@blumu I've created a quick notebook example that demonstrates what I'm talking about.
Find the environment here
from cyberbattlesim.
Thank you for sharing the repro! So that's indeed a bug. The code that's handling remote exploits does not include the value of the node in the returned reward, it only accounts for discovered nodes:
CyberBattleSim/cyberbattle/simulation/actions.py
Lines 353 to 354 in 41a5753
We should add the value of any owned node, just like we do for the connect
action:
from cyberbattlesim.
@forrestmckee You can cherry pick the fix from this branch:
https://github.com/microsoft/CyberBattleSim/tree/wiblum/71
It will need some more testing before merging into the main
branch, but I've verified that it fixes the problem on your repro notebook. Let me know if that works for you.
from cyberbattlesim.
Related Issues (20)
- Dockerfile not working HOT 7
- ModuleNotFoundError: No module named 'cyberbattle' HOT 2
- E: Unable to locate package python3.9 HOT 1
- Question about rewards in chain environment HOT 2
- Key for how the simulation is working HOT 1
- simplenv bidirectional? HOT 3
- Example agent doesn't work with conda install HOT 8
- python 3.11 not working - ValueError: mutable default <class 'cyberbattle.simulation.model.FirewallConfiguration'> HOT 9
- ValueError: mutable default <class 'cyberbattle.simulation.model.FirewallConfiguration'> for field firewall is not allowed: use default_factory HOT 3
- DQL still learning at evaluation time HOT 1
- Internal Node Id Dependent on Order of Action Execution HOT 1
- Unable to install dependencies HOT 12
- Action_space dimensions formally too large HOT 1
- Play the environment with other RL algorithms HOT 14
- A question about 'pretty_print_internal_action' HOT 2
- Making reward non-zero, what is the reason? HOT 1
- Something wrong with the node's last owned time and last reimaged time? HOT 1
- Consider designing defender as RL agent HOT 3
- init.sh doesn't work HOT 2
- How to setup machine/program for use HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cyberbattlesim.