Git Product home page Git Product logo

Comments (5)

forrestmckee avatar forrestmckee commented on May 18, 2024 1

@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.

blumu avatar blumu commented on May 18, 2024

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.

forrestmckee avatar forrestmckee commented on May 18, 2024

@blumu I've created a quick notebook example that demonstrates what I'm talking about.

Find the environment here

from cyberbattlesim.

blumu avatar blumu commented on May 18, 2024

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:

reward += discovered_nodes_value
reward += newly_discovered_nodes * NODE_DISCOVERED_REWARD

We should add the value of any owned node, just like we do for the connect action:

return ActionResult(reward=float(target_node_data.value) if was_previously_owned_at is None else 0.0,

from cyberbattlesim.

blumu avatar blumu commented on May 18, 2024

@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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.