prowler-api
Pass
Audited by Gen Agent Trust Hub on Oct 2, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTIONDYNAMIC_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted external data related to cloud provider UIDs and scan findings which could be manipulated to influence agent behavior.
- Ingestion points: Ingests
provider_id,tenant_id, and scan finding data inapi/models.pyandtasks/tasks.pyduring asynchronous processing. - Boundary markers: Employs
rls_transaction()context managers and@set_tenantdecorators throughout the code (e.g.,assets/celery_patterns.py) to isolate tenant data at the database level. - Capability inventory: The skill utilizes
Bash,Write,Edit, andTasktools, allowing for file system modifications and shell command execution. - Sanitization: Instructions recommend explicit UID validation methods (e.g.,
validate_aws_uid) and strict UUID format checking usinguuid.UUID()before database queries. - [DYNAMIC_EXECUTION]: The skill documents and warns against dangerous dynamic execution patterns while using standard dynamic attribute access for validation.
- Evidence: In
assets/security_patterns.py, the code provides a warning against usingcurrent_app.send_task(user_provided_task_name, args=args), identifying it as a pattern for arbitrary code execution. - Evidence: The model
clean()method described inreferences/modeling-decisions.mdusesgetattr(self, f"validate_{self.provider}_uid")(self.uid)to dynamically select validation logic based on the provider type. - [COMMAND_EXECUTION]: The skill contains instructions for executing shell commands to manage the application backend and verify production readiness.
- Evidence:
SKILL.mdprovides shell commands for running the Django development server, Celery workers, and production deployment checks viauv run python manage.py check --deploy.
Audit Metadata