jf-open-pro-cloud-record

Security checks across static analysis, malware telemetry, and agentic risk

Overview

This skill does what it claims, but it handles cloud-camera credentials and can send signed device requests to a user-controlled endpoint without hostname validation.

Review before installing. Only use this in an environment where you control JF_ENDPOINT, keep it set to the official JFTech regional hosts, and avoid exposing JF_APP_SECRET or JF_DEVICE_TOKEN to shared or untrusted agent sessions. Rotate the credentials if you suspect the endpoint or environment was modified.

SkillSpector (4)

By NVIDIA

Tainted flow: 'url' from os.getenv (line 131, credential/environment) → requests.post (network output)

Critical
Category
Data Flow
Content
if events:
        body["events"] = events
    
    response = requests.post(url, headers=headers, json=body, timeout=30)
    result = response.json()
    
    if result.get("code") != 2000:
Confidence
94% confidence
Finding
response = requests.post(url, headers=headers, json=body, timeout=30)

Tainted flow: 'url' from os.getenv (line 131, credential/environment) → requests.post (network output)

Critical
Category
Data Flow
Content
if multi_video:
        body["multiVideo"] = "1"
    
    response = requests.post(url, headers=headers, json=body, timeout=30)
    result = response.json()
    
    if result.get("code") != 2000:
Confidence
94% confidence
Finding
response = requests.post(url, headers=headers, json=body, timeout=30)

Tainted flow: 'url' from os.getenv (line 131, credential/environment) → requests.post (network output)

Critical
Category
Data Flow
Content
if alarm_event:
        body["alarmEvent"] = alarm_event
    
    response = requests.post(url, headers=headers, json=body, timeout=30)
    result = response.json()
    
    if result.get("code") != 2000:
Confidence
94% confidence
Finding
response = requests.post(url, headers=headers, json=body, timeout=30)

Lp3

Medium
Category
MCP Least Privilege
Confidence
87% confidence
Finding
The skill documentation instructs use of environment variables containing sensitive credentials and device tokens, and it describes direct network access to vendor cloud APIs, yet no explicit permissions are declared. This creates a transparency and policy-enforcement gap: users or platforms may not realize the skill can read secrets and make outbound requests, increasing the risk of credential misuse, unintended data access, or overbroad execution in agent environments.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal