web-search
Pass
Audited by Gen Agent Trust Hub on Oct 25, 2026
Risk Level: SAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The skill spawns local browser processes (Chrome, Brave, Edge, or Chromium) to perform web automation. It also uses
execFileSyncto detect browser versions andtaskkill(on Windows) or process signals (on Unix) to manage the lifecycle of the browser daemon. - [EXTERNAL_DOWNLOADS]: The skill makes network requests to search engines and arbitrary external URLs requested by the user to retrieve web content. These operations are performed via the headless browser or a fallback HTTP client (
undici). - [INDIRECT_PROMPT_INJECTION]: The skill possesses an indirect injection surface as it ingests untrusted data from the web and provides it to the agent.
- Ingestion points: External web content is retrieved in
lib/fetch.jsandlib/search.js. - Boundary markers: The main entry point
web-search.jsuses clear visual separators (=======) and Markdown headers to distinguish fetched content from agent instructions. - Capability inventory: The skill has the ability to spawn browser processes and perform local file system operations for caching results.
- Sanitization: The skill uses the
defuddlelibrary to convert raw HTML into clean Markdown, stripping potentially dangerous executable scripts. Additionally, content is truncated by default to prevent large injections from overwhelming the context. - [DATA_EXPOSURE]: Search result sets are cached locally in standard cache directories (e.g.,
~/.cache/web-search). The implementation inlib/search-cache.jsfollows best practices by ensuring the directory is private (mode0o700), files are owned by the current user, and path traversal is prevented via strict regex validation of result-set IDs.
Audit Metadata