gitlab
Fail
Audited by Gen Agent Trust Hub on Sep 29, 2026
Risk Level: CRITICAL
Full Analysis
- Subprocess Execution for Project Resolution: The skill uses
subprocess.check_outputinscripts/gitlab.pyto resolve the target GitLab project from the local Git configuration. This is implemented using an argument list withshell=False, preventing shell injection. The output is further validated against path traversal patterns before being used in API requests. - Hardened OAuth Implementation: The skill implements OAuth 2.0 using both Authorization Code (PKCE) and Device Authorization flows. The loopback listener for callbacks validates the
Hostheader and usessecrets.compare_digestfor anti-forgerystatechecks. It also includes validation logic to prevent UI-based misdirection during device login. - Credential Redaction and Sanitization: A comprehensive redaction mechanism is implemented in
scripts/gitlab.pyusing multiple regex patterns to scrub access tokens, private tokens, and other secrets from stdout, stderr, and audit logs. Structured JSON output is also recursively sanitized to remove sensitive fields. - Secure Credential Persistence: In
scripts/_gitlab_credentials.py, OAuth profiles are stored in a dedicated directory with POSIX mode0700and files with mode0600. The skill usesos.openwithO_NOFOLLOWand verifies file ownership and permissions before reading or writing credentials. It also implements a fail-closed policy on Windows systems where these granular permissions cannot be enforced. - Transport Security: The skill utilizes a custom
urllib.requestopener that includes a_NoRedirecthandler. This prevents short-lived tokens from being leaked to third-party hosts via HTTP 30x redirects. All API traffic is enforced over TLS except for explicitly allowed loopback development environments. - Fail-Closed Audit Logging: An optional audit logging feature is provided which follows a fail-closed, write-ahead pattern. The skill attempts to record the operation before execution; if the audit sink is unavailable, the operation is aborted.
Recommendations
- CRITICAL: 2 file(s) identified as malware by FileRep - DO NOT USE
- Contains 2 malicious URL(s) - DO NOT USE
Audit Metadata