Skip to content

Discovered Node Properties Don't Have to be Revealed for Property Dependent Precondition? #68

@forrestmckee

Description

@forrestmckee

I'm trying to setup an environment that first requires the agent to probe a remote system to learn a property. That property is a precondition to a different remote exploit on the system. In a variant of the manually solved notebook, I can bypass the precondition even though the property has yet to be discovered.

In other words, vulnerability A reveals PROPERTY and PROPERTY is the precondition to vulnerability B.
The attack sequence must be A->B.

This seems to be because in actions.py _check_prerequisites is dealing with the actual node properties instead of the discovered node properties.

If I try to instantiate a node with an empty properties list and then probe for the desired property, I hit the elif condition on line 329 of actions.py.

Am I misunderstanding the use case of a vulnerability with a ProbeSucceeded outcome, or is this a bug?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions