Class AttackEdge

java.lang.Object
edu.kit.ipd.sdq.attacksurface.graph.AttackEdge

public class AttackEdge extends Object
Class describing an edge in the attack graph. It connects two architectural elements and represents an attack of the root element to the target element. It stores the reason for the attack. The reason can either be a Vulnerability, a list of credentials (represented by UsageSpecification) or a deployment relationship (represented by implicit). Additionally it contains the AttackVector, which is how the elements are connected. The attack vector is similar to the CVSS defintion. An AttackEdge is considered equal if its attributes are equals.
  • Constructor Summary

    Constructors
    Constructor
    Description
    AttackEdge(org.palladiosimulator.pcm.core.entity.Entity root, org.palladiosimulator.pcm.core.entity.Entity target, org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.Vulnerability cause, List<? extends org.palladiosimulator.pcm.confidentiality.context.system.UsageSpecification> credentials)
     
    AttackEdge(org.palladiosimulator.pcm.core.entity.Entity root, org.palladiosimulator.pcm.core.entity.Entity target, org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.Vulnerability cause, List<? extends org.palladiosimulator.pcm.confidentiality.context.system.UsageSpecification> credentials, boolean implicit, org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.AttackVector vector)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
     
    final org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.Vulnerability
     
    final List<? extends org.palladiosimulator.pcm.confidentiality.context.system.UsageSpecification>
     
    final org.palladiosimulator.pcm.core.entity.Entity
     
    final org.palladiosimulator.pcm.core.entity.Entity
     
    final org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.AttackVector
     
    int
     
    final boolean
     
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • AttackEdge

      public AttackEdge(org.palladiosimulator.pcm.core.entity.Entity root, org.palladiosimulator.pcm.core.entity.Entity target, org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.Vulnerability cause, List<? extends org.palladiosimulator.pcm.confidentiality.context.system.UsageSpecification> credentials)
    • AttackEdge

      public AttackEdge(org.palladiosimulator.pcm.core.entity.Entity root, org.palladiosimulator.pcm.core.entity.Entity target, org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.Vulnerability cause, List<? extends org.palladiosimulator.pcm.confidentiality.context.system.UsageSpecification> credentials, boolean implicit, org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.AttackVector vector)
  • Method Details

    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • getCause

      public final org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.Vulnerability getCause()
    • getCredentials

      public final List<? extends org.palladiosimulator.pcm.confidentiality.context.system.UsageSpecification> getCredentials()
    • getRoot

      public final org.palladiosimulator.pcm.core.entity.Entity getRoot()
    • getTarget

      public final org.palladiosimulator.pcm.core.entity.Entity getTarget()
    • getVector

      public final org.palladiosimulator.pcm.confidentiality.attackerSpecification.attackSpecification.AttackVector getVector()
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • isImplicit

      public final boolean isImplicit()
    • toString

      public String toString()
      Overrides:
      toString in class Object