Repository navigation
v0.1.5
Pre-release
Pre-release
Added
-
Capability Graph Algorithm Upgrade:
- Edge Kind Classification: Added
EdgeKindenum (STRUCTURAL, CAPABILITY, UNKNOWN) to distinguish traversable capability edges from structural context - EdgeEvidence Model: Track policy provenance (policy_sid, policy_arn, permission, raw_statement) for audit trails
- Action-Specific IAM Edges: Replaced generic
MAY_ACCESSwith specific edge types:MAY_READ_SECRET(secretsmanager:GetSecretValue)MAY_READ_PARAMETER(ssm:GetParameter*)MAY_DECRYPT(kms:Decrypt)MAY_READ_S3_OBJECT(s3:GetObject)MAY_CREATE_LAMBDA(lambda:CreateFunction)
- Network Reachability Modeling: Added
CAN_REACHedges for:- Internet-facing assets (0.0.0.0/0, ::/0 ingress rules)
- SG-to-SG lateral movement (UserIdGroupPairs)
- CIDR containment inference for subnet reachability
- Condition Evaluation: Added
ConditionEvaluatorwith tri-state results (TRUE, FALSE, UNKNOWN) for IAM conditions - Explicit Deny Awareness: Detect permission boundaries, SCPs, and identity policy denies that may block access
- Edge Kind Classification: Added
-
Two-Phase Path Discovery:
- Phase A (Discovery): Capability-only traversal using
AttackerState(principals, network_identity, compromised_assets) - Phase B (Validation):
PathValidatorverifies network preconditions and IAM motifs - Confidence Scoring:
ConfidenceLevel(HIGH, MED, LOW) with specificconfidence_reasonexplanations:- HIGH: All preconditions verified
- MED: Some conditions UNKNOWN or explicit deny detected
- LOW: PassRole motif incomplete or multiple unknowns
- Phase A (Discovery): Capability-only traversal using
-
PassRole Privilege Escalation Detection:
CAN_PASS_TOedge creation for iam:PassRole permissions- PassRole motif validation (role → PassRole → Lambda trust policy)
- Confidence adjustment when target trust policy doesn't allow lambda.amazonaws.com
-
MCP Server - 6 New Tools: Expanded MCP toolset from 9 to 15 tools:
get_findings: Security findings with severity filteringget_assets: Assets with type/name filteringget_relationships: Relationships between assets with filteringexplain_path: Detailed hop-by-hop attack path breakdownexplain_finding: Detailed finding explanation with remediationget_terraform_snippet: Generate Terraform code for remediations
Changed
- PathFinder: Now traverses only CAPABILITY edges (ignores STRUCTURAL for attack path discovery)
- Entry Point Computation: Uses
CAN_REACHedges from "world" with port-based confidence (web=0.9, admin=0.7, db=0.6) - Risk Scoring: Combined edge weights with confidence multipliers for more accurate risk assessment
- CLI
analyze paths: Now displays confidence_level and confidence_reason, color-coded by confidence - JSON Output Schema: Includes
attack_chain_relationship_ids,context_relationship_ids,confidence_level,confidence_reason, and edge evidence - Backward Compatibility: Added edge_kind inference for legacy scan data via
--include-unknownflag get_attack_pathsMCP: Enhanced withmin_riskfilter,confidence_level, path length, and resolved asset nameslist_toolsMCP: Now returns all 15 tools organized by category
Documentation
- Updated README MCP section with complete tool table organized by category