Back to skill

Security audit

Baidu Search For Free

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent Baidu search and page-fetching skill, but it uses an unsafe HTTPS setting and broad triggers that deserve review before installation.

Install only if you are comfortable with search queries being sent to Baidu and result pages being fetched from third-party sites. The main issue to fix before normal use is the unconditional TLS certificate bypass; it should use normal certificate verification by default, with any insecure mode made explicit and opt-in. The activation wording should also be narrowed to clear Baidu-search or Chinese-web retrieval requests.

Vulnerability Patterns
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (3)

Intent-Code Divergence

Medium
Confidence
98% confidence
Finding
The script explicitly disables TLS certificate verification with verify=False while presenting itself as a normal web-fetching utility. This allows man-in-the-middle interception and tampering of fetched content, so users may receive attacker-controlled data while believing it came from the requested HTTPS site.

Vague Triggers

Medium
Confidence
94% confidence
Finding
The trigger list includes broad phrases like '抓取网页' and '解析网页', which are common web-browsing tasks and can cause the skill to activate in situations beyond explicit Baidu search requests. That can unintentionally route user requests into this skill's search-and-fetch workflow, increasing the chance of unnecessary external requests, unexpected scraping behavior, or use of Baidu-specific tooling when the user did not clearly opt in.

Unsafe Defaults

Medium
Category
Tool Misuse
Content
try:
        # 禁用 SSL 验证(某些环境可能需要)
        response = requests.get(url, headers=headers, timeout=timeout, verify=False)
        response.raise_for_status()
        response.encoding = response.apparent_encoding
Confidence
99% confidence
Finding
Using verify=False disables server certificate validation for HTTPS requests, defeating a core protection of TLS. In this skill context, the script fetches arbitrary user-supplied URLs and returns parsed content, so an attacker on the network or behind a hostile proxy could spoof sites or alter page contents consumed downstream.

Static analysis

Detected: suspicious.insecure_tls_verification

HTTPS certificate verification is disabled.

Warn
Code
suspicious.insecure_tls_verification
Location
scripts/fetch_url.py:54