ClawAudit verdict
stock-qdata
Downloads A-share historical OHLCV data from the QMT quantitative trading platform local API; all operations are local data downloads from an already-installed trading platform matching the stated purpose.
⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.
Automated static analysis — not a human review. ClawAudit flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.
Permission integrity
package_install
Findings (11)
Pipe to python — executes piped content as Python code
main.py · prose · downgraded · | python
HTTP request to bare IP address — common in malicious payloads
SKILL.md · prose · downgraded · http://127.0.0.1
subprocess execution — runs system commands from Python
main.py · prose · downgraded · subprocess.run(
subprocess with shell=True — command injection vector
monitor.py · prose · downgraded · subprocess.Popen([qmt_path], shell=True
Uses exec() — may execute shell commands
static/socket.io.min.js · prose · downgraded · exec(
Opens WebSocket connection
monitor.py · prose · downgraded · websocket
Python os.environ.get — reads environment variable
monitor.py · prose · downgraded · os.environ.get(
Python threading.Timer — deferred execution
monitor.py · prose · downgraded · threading.Timer(
String.fromCharCode — can build strings to evade detection
static/socket.io.min.js · prose · downgraded · String.fromCharCode
Uses XMLHttpRequest — network access
static/socket.io.min.js · prose · downgraded · XMLHttpRequest
Popular HTTP library — network access
static/socket.io.min.js · prose · downgraded · got
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class B/D). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.
Permissions & capabilities
No declared permissions — minimal attack surface.
package_install Is this flag fair?
Thanks — recorded.