/** * TrustExploitationGuard (L17) * * Detects and prevents human-agent trust exploitation attacks. * Implements ASI09 from OWASP Agentic Applications 2026. * * Threat Model: * - ASI09: Improper Human-Agent Trust Placement * - Trust boundary violations * - Permission escalation * - Goal hijacking * - Unauthorized autonomous actions * * Protection Capabilities: * - Trust boundary enforcement * - Permission escalation detection * - Goal consistency monitoring * - Action authorization verification * - Human-in-the-loop enforcement */ export interface TrustExploitationGuardConfig { /** Maximum trust level (0-100) */ maxTrustLevel?: number; /** Actions requiring human approval */ humanApprovalRequired?: string[]; /** Maximum autonomous actions before requiring human check-in */ maxAutonomousActions?: number; /** Enable goal consistency monitoring */ monitorGoalConsistency?: boolean; /** Trust decay rate per hour (0-100) */ trustDecayRate?: number; /** Enable permission escalation detection */ detectPermissionEscalation?: boolean; /** Sensitive action categories */ sensitiveActions?: string[]; /** Initial goal for consistency checking */ initialGoal?: string; } export interface AgentAction { /** Action identifier */ action_id: string; /** Action type (e.g., "file_write", "api_call", "data_access") */ action_type: string; /** Target resource */ target: string; /** Requested permissions */ permissions?: string[]; /** Agent's stated reason for action */ reason?: string; /** Current goal the action serves */ goal?: string; /** Is this action autonomous or human-requested */ autonomous: boolean; /** Timestamp */ timestamp: number; /** Additional metadata */ metadata?: Record; } export interface TrustContext { /** Current trust level (0-100) */ trust_level: number; /** Session ID */ session_id: string; /** Actions performed this session */ action_history: AgentAction[]; /** Current goal */ current_goal: string; /** Initial goal (for consistency) */ initial_goal: string; /** Granted permissions */ granted_permissions: Set; /** Last human interaction timestamp */ last_human_interaction: number; /** Autonomous actions since last check-in */ autonomous_actions_count: number; } export interface TrustExploitationResult { allowed: boolean; reason: string; violations: string[]; request_id: string; analysis: { trust_level: number; trust_change: number; permission_escalation: boolean; goal_deviation: boolean; requires_human_approval: boolean; autonomous_action_count: number; trust_boundary_violated: boolean; }; recommendations: string[]; human_approval_required?: boolean; approval_reason?: string; } export declare class TrustExploitationGuard { private config; private contexts; private readonly TRUST_EXPLOITATION_PATTERNS; private readonly DEFAULT_SENSITIVE_ACTIONS; constructor(config?: TrustExploitationGuardConfig); /** * Validate an agent action */ validateAction(action: AgentAction, sessionId: string, requestId?: string): TrustExploitationResult; /** * Record human interaction (resets autonomous count, boosts trust) */ recordHumanInteraction(sessionId: string, action?: "approve" | "deny" | "check_in"): void; /** * Grant permission to agent */ grantPermission(sessionId: string, permission: string): void; /** * Revoke permission from agent */ revokePermission(sessionId: string, permission: string): void; /** * Set initial goal for consistency monitoring */ setInitialGoal(sessionId: string, goal: string): void; /** * Get current trust level */ getTrustLevel(sessionId: string): number; /** * Reset session context */ resetSession(sessionId: string): void; private createContext; private applyTrustDecay; private calculateGoalSimilarity; private generateRecommendations; }