Back to skill

Security audit

Sahaba Ijma

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent Dorar.net search helper, but a crafted search query can be interpreted as local Python code before the search runs.

Review before installing. The Dorar.net network lookup itself is expected, but only use this skill with trusted search terms until the query encoding is fixed to pass input as an argument or environment value instead of embedding it in Python code.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (5)

External Script Fetching

High
Category
Supply Chain
Content
ENCODED=$(python3 -c "import urllib.parse; print(urllib.parse.quote('$QUERY'))")

RESULT=$(curl -s -L \
  -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
  -H "Accept: application/json, text/javascript, */*" \
  -H "Referer: https://dorar.net/" \
Confidence
90% confidence
Finding
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Natural-Language Policy Violations

Medium
Confidence
90% confidence
Finding
The skill's natural-language documentation is entirely in Arabic, including usage and output descriptions, with no indication that the language requirement is optional or limited to a region-specific audience. Under the policy, forcing a specific language without user opt-in is a locale/language policy violation.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The script transmits the user-supplied search query to dorar.net via an HTTP request without any notice, consent prompt, or indication in output that data is being sent off-host. This creates a privacy issue because users may enter sensitive religious, personal, or research queries assuming the tool is local, and those queries are disclosed to a third party.

Context-Inappropriate Capability

Low
Confidence
83% confidence
Finding
With no manifest or declared purpose available, the parser appears to primarily consume stdin JSON/HTML and emit cleaned text. Accessing `DORAR_QUERY` from the environment introduces an additional capability—reading process environment state—that is not clearly required for the visible parsing behavior, since it is only used to construct a printed link.

Intent-Code Divergence

Low
Confidence
77% confidence
Finding
The comment says 'Get query from environment or use empty,' implying a deliberate fallback choice among possible sources, but the code does not attempt to obtain the query from parsed input or any other source. Instead, it exclusively reads `DORAR_QUERY` from the environment and otherwise leaves it empty, which overstates the implemented behavior.

Static analysis

No suspicious patterns detected.