Back to skill

Security audit

Embedded Solution

Security checks for vulnerabilities and agentic risk

Overview

The skill is a hardware recommendation helper, but its catalog contains known mismatched component data and inconsistent verification rules, so it should be reviewed before use.

Use this only as a drafting aid unless you independently verify part data from official vendor datasheets. Do not rely on Renesas YAML entries marked needs-re-extraction, and be cautious with any recommendation sourced from mirrors or distributor pages. Install any optional Python dependencies in an isolated environment and expose API keys only when needed for a specific lookup.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
requirements.txt:8
Finding

Unbounded and Unverified Third-Party Dependencies

Content
View full analysis

Vulnerability Details

File Location: requirements.txt, lines 8–21
Vulnerability Type: Supply-chain exposure through non-reproducible dependency resolution
Risk Level: Medium

Vulnerable Code

text
firecrawl-py>=4.30
pydantic>=2.0
requests>=2.28
aiohttp>=3.8
httpx>=0.24
python-dotenv>=1.0
websockets>=10.0

# PDF + YAML I/O used by update_specs.py / upgrade_yaml_to_verified.py /
# verify_yaml_vs_datasheet.py / reextract_da_ble.py. Imported lazily with
# a friendly ImportError message in some scripts, but the user gets a
# clearer experience if these are installed up front.
pdfplumber>=0.10
PyYAML>=6.0

Technical Analysis

Every dependency is specified only with a minimum version and without an upper bound, exact lock, package hash, or signed provenance requirement. Consequently, installing the same Skill at different times can resolve to different package versions, including future major releases that were never audited with this project.

This is particularly relevant because several dependencies provide network access or process external content:

  • firecrawl-py, requests, aiohttp, httpx, and websockets communicate with external services.
  • python-dotenv may load API credentials from environment files.
  • pdfplumber and PyYAML parse externally sourced documents.
  • The comments explicitly indicate that firecrawl-py can operate with FIRECRAWL_API_KEY.

No typosquatted package, malicious package source, or currently malicious dependency was identified. The vulnerability is the absence of controls preventing an upstream compromise or unaudited future release from being installed automatically.

Attack Path

  1. An attacker compromises the release pipeline or maintainer account of one of the declared packages, or publishes a vulnerable future version satisfying the broad minimum-version constraint.
  2. A user follows the document ...[truncated 1864 chars]
Remediation
View remediation

Remediation Suggestions

  1. Generate and commit a reviewed lock file containing exact transitive versions, using a tool such as pip-tools, Poetry, or uv.
  2. Install dependencies from hashes:
    bash
    pip-compile --generate-hashes requirements.in
    python3 -m pip install --require-hashes -r requirements.txt
    
  3. Replace broad minimum-only constraints with tested compatible ranges in the source requirements, for example exact versions or constrained major versions.
  4. Separate optional networking integrations from core dependencies. Place Firecrawl and other optional fetch clients in an optional dependency group so offline catalogue use does not install unnecessary network-capable packages.
  5. Remove packages that are not required by files shipped in the release. The audited artifact contains no scripts/ directory even though comments attribute several dependencies to maintainer scripts.
  6. Use an isolated virtual environment rather than user-global installation, and avoid installing as root or into a shared system interpreter.
  7. Add automated dependency auditing with tools such as pip-audit or OSV-Scanner, and review updates before regenerating the lock file.
  8. Configure CI to accept packages only from an approved HTTPS index, disable untrusted extra indexes, and retain package provenance or software-bill-of-materials records.
  9. Limit API credentials to the minimum required scope and expose FIRECRAWL_API_KEY only to the specific process that needs it.
Vulnerability Patterns
  • 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
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (169)

Description-Behavior Mismatch

Critical
Category
Not specified by scanner
Confidence
100% confidence
Finding

This is a true vulnerability: the HS3003 spec file actually contains extensive RX72N microcontroller specifications, meaning the knowledge base can return a sensor part number with MCU capabilities, package data, memory sizes, and peripherals that do not belong to the product. In an embedded-solution skill, this is especially dangerous because users may rely on the output for chip selection, reference designs, and procurement, leading to invalid BOMs, failed designs, and unsafe engineering decisions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Critical
Category
Not specified by scanner
Confidence
100% confidence
Finding

This file is labeled as ISL88813, but nearly all substantive content describes an RX72N microcontroller, a fundamentally different product category. In an embedded-solution skill that must never fabricate or misstate part data, this creates a direct integrity failure that can mislead users into choosing incompatible chips, producing unsafe reference designs, or propagating false technical claims into procurement and firmware decisions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Critical
Category
Not specified by scanner
Confidence
100% confidence
Finding

The file is presented as RL78I1D, but both the source PDF and the populated specifications describe RX72N, a materially different device class. In this skill’s context, where users rely on accurate official specifications for chip selection and reference design matching, this mismatch can directly cause unsafe hardware choices, incompatible firmware assumptions, wrong package selection, and costly or hazardous design errors.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The policy explicitly accepts non-official sources such as distributor listings and mirrors as 'datasheet-equivalent,' which conflicts with the skill requirement that component specs must come from official vendor sources. In an embedded-part recommendation skill, this can propagate inaccurate or stale electrical, thermal, or lifecycle data into BOM or design advice, increasing the risk of design defects, wrong-part selection, or unsafe operating margins.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

This section explicitly says distributor listing pages are sufficient to upgrade link_status to verified, even while acknowledging those pages often do not provide deep specs. In this skill's context, that is dangerous because users depend on precise component parameters for chip selection and BOM design; 'verified' labeling based on stock pages can cause the system to present non-authoritative spec data as trustworthy.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The BOM candidates and rationale are presented as actionable recommendations while being derived from third-party observed designs rather than exclusively official vendor documentation. In an embedded-systems selection skill, this can mislead downstream users into choosing incompatible, discontinued, mischaracterized, or counterfeit-adjacent parts based on non-authoritative sourcing.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The verification section openly acknowledges use of a community mirror and planned addition of third-party URLs for support, directly conflicting with the official-vendor-only requirement. In this skill context, that increases the chance of fabricated, altered, or context-stripped specifications being treated as authoritative during hardware design decisions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The file explicitly frames the solution as based on third-party teardowns, marketplaces, and community schematics, which conflicts with the skill requirement that all component specs must come from official vendor sources. In an embedded-solution skill, this can cause the agent to recommend parts or constraints derived from unofficial, incomplete, or spoofable sources, increasing the risk of inaccurate BOMs and unsafe design guidance.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The file recommends specific power metering, AC/DC, and relay parts while explicitly labeling them as off-catalog Chinese-vendor components, meaning their specs are not backed by official vendor documentation. In a hardware-selection skill that promises all component specs come from official sources, this creates a real integrity and safety risk because users may rely on unverified mains-side components for certified line-powered designs.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The file establishes an official-vendor-only verification workflow, then later undermines it by treating a third-party distributor mirror as a canonical source. In this skill, which explicitly requires all component specs to come from official vendor sources, that contradiction can cause the agent to rely on untrusted or stale documents and present them as authoritative vendor data.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

This section explicitly endorses alcom.be/alcom.nl distributor mirrors as the canonical source because silabs.com is inaccessible from the environment. That directly conflicts with the skill requirement that all component specs must be fetched from official vendor sources, creating a supply-chain trust problem where altered, outdated, or mismatched datasheets could be treated as official evidence.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

This finding is a true vulnerability because the skill metadata explicitly requires component specifications to come from official vendor sources, yet this file documents verification and datasheet sourcing from third-party pages and a mirror PDF. In an embedded-solution skill, non-official semiconductor data can be stale, incomplete, tampered with, or mislabeled, which can directly lead to incorrect part selection, unsafe BOM recommendations, and invalid engineering decisions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

This file is labeled as HS3001 but contains RX72N MCU data throughout, which is a manifest-to-content mismatch. In this skill’s context, such poisoned component metadata can directly mislead downstream recommendations into suggesting the wrong class of device entirely, undermining design correctness and potentially causing procurement, electrical, and firmware integration failures.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file’s own note admits the part name was changed to HS3001 while the actual specifications still belong to RX72N. In an embedded-solution skill that must rely on official vendor data and never fabricate parameters, this creates a high-risk integrity failure that can cause incorrect chip selection, BOMs, firmware assumptions, and reference design recommendations.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file is named and labeled as HS3002, but the actual content describes the RX72N high-performance MCU, including CPU, flash, RAM, and package data unrelated to HS3002. In an embedded-solution skill, this is especially dangerous because users may rely on these structured specs for chip selection, vendor comparison, reference design matching, and BOM generation, leading to fundamentally unsafe or unusable design decisions.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file explicitly acknowledges that the part identifier was corrected to HS3002 while the body still contains RX72N MCU specifications, creating a direct part-to-spec mismatch. In this skill, which is supposed to recommend real embedded components from official vendor data and never fabricate parameters, this can cause users or downstream agents to select an entirely wrong device class and design incorrect hardware, firmware, or BOMs.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The note explicitly states that the filename/part field was corrected to HS3003 while the body still contains RX72N MCU data, confirming a known data integrity failure. In this skill, which promises vendor-accurate component recommendations and forbids fabrication, a mislabeled spec file can cause the agent to recommend a completely wrong class of component, propagating false technical guidance into BOMs and design decisions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

This artifact violates the skill's core safety requirement that component specifications come from official vendor sources and not be fabricated or mismatched. In embedded-system design, wrong voltage, package, peripheral, memory, or interface data can cause incorrect part selection, board re-spins, firmware incompatibility, or safety-relevant hardware failures.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file declares part ISL88705 but points to an RX72N datasheet, which is a direct provenance mismatch at the top of the artifact. Because the skill promises official vendor-sourced specifications, this mismatch undermines trust boundaries and can propagate false technical data into chip selection, BOM design, and reference recommendations.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The note explicitly acknowledges that the file is labeled as ISL88705 while still containing RX72N specifications, confirming a known data-integrity failure. In this skill, that can cause the agent to recommend or compare the wrong component using authoritative-looking but incorrect vendor data, leading to unsafe design or procurement decisions.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The recovery note explicitly admits that the file identifier was corrected to ISL88813 while the embedded specifications still describe RX72N, meaning the record is internally inconsistent and unsafe to consume. In this skill, downstream recommendation logic depends on accurate vendor-backed component specs, so this mismatch can cause selection of the wrong device class, incorrect BOMs, and invalid design decisions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill’s safety model depends on using official vendor specifications, but this file undermines that guarantee by presenting one component name with another component’s data. In embedded design, such mismatches can propagate into BOM selection, voltage/interface compatibility errors, package selection mistakes, and invalid design guidance, making the skill materially unsafe.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

This file explicitly admits that the part label was changed to ISL9205 while the body still contains RX72N MCU specifications. In a skill that promises official vendor-based component recommendations, this creates a direct integrity failure that can cause the agent to recommend the wrong device class, electrical characteristics, package, or firmware assumptions to users.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
100% confidence
Finding

This file claims to represent ISL9238 but contains RX72N MCU specifications, including CPU, flash, peripherals, and RX72N-specific datasheet identifiers. In an embedded-solution skill, this is dangerous because it can directly mislead chip selection, reference design matching, firmware assumptions, and BOM generation with authoritative-looking but incorrect vendor data.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The note explicitly admits the file was mislabeled and that the current spec contents still belong to RX72N, yet the artifact remains named and structured as ISL9238 data. In this skill, which is supposed to recommend embedded parts and requires official-source accuracy, leaving a known-corrupt spec file in place can cause downstream selection, BOM, and design decisions to use the wrong component family entirely.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.