baoyu-danger-gemini-web
Warn
Audited by Gen Agent Trust Hub on Sep 14, 2026
Risk Level: MEDIUMCOMMAND_EXECUTIONCREDENTIALS_UNSAFEPERSISTENCEEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The skill programmatically launches a web browser (Chrome, Chromium, or Microsoft Edge) to facilitate session hijacking for authentication purposes.
- Evidence: In
scripts/gemini-webapi/utils/load-browser-cookies.ts, thelaunch_chromefunction useschild_process.spawnto execute a browser with the--remote-debugging-portflag. - The executable path is determined by searching common system directories or can be overridden via the
GEMINI_WEB_CHROME_PATHenvironment variable. - [CREDENTIALS_UNSAFE]: The skill is designed to extract sensitive Google authentication cookies from the user's browser session.
- Evidence: The
fetch_google_cookies_via_cdpfunction inscripts/gemini-webapi/utils/load-browser-cookies.tsconnects to the browser's debug port via WebSocket to extract__Secure-1PSIDand__Secure-1PSIDTScookies. - These cookies provide full access to the user's Google Gemini account and are subsequently used to authenticate reverse-engineered API requests.
- [PERSISTENCE]: The skill maintains access to the user's account by storing extracted credentials and chat history in a persistent local directory.
- Evidence: Sensitive cookies are written to a
cookies.jsonfile, and chat sessions are stored as JSON files in a dedicatedsessions/directory within the user's application data folder (e.g.,~/Library/Application Support/baoyu-skills/gemini-web/). - [EXTERNAL_DOWNLOADS]: The skill downloads generated images from Google's content delivery networks to the local file system.
- Evidence: The
Image.savemethod inscripts/gemini-webapi/types/image.tsusesfetchto download images from URLs likegoogleusercontent.comand saves them to a local directory (defaulting totemp/). - [INDIRECT_PROMPT_INJECTION]: The skill presents an attack surface for indirect prompt injection by processing untrusted data from both user-supplied files and external API responses without rigorous sanitization.
- Ingestion points: The skill reads prompt content from files via the
--promptfilesflag and processes structured JSON responses from the Gemini Web API. - Boundary markers: The skill does not implement explicit delimiters or boundary markers to distinguish between instructions and data when interpolating content into the API request.
- Capability inventory: The skill has the capability to write to the file system (saving images and sessions) and perform network operations.
- Sanitization: While basic HTML entity decoding is performed in
scripts/gemini-webapi/types/candidate.ts, there is no validation or filtering of the content to prevent embedded instructions from influencing the agent's behavior.
Audit Metadata