Security Audit
analyzing-time-series
github.com/https-deeplearning-ai/sc-agent-skills-filesTrust Assessment
analyzing-time-series received a trust score of 68/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 3 findings: 0 critical, 2 high, 1 medium, and 0 low severity. Key findings include Path Traversal for Input File Reading, Arbitrary File Write via Unsanitized Output Directory, Unpinned Dependencies in Skill Manifest.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The LLM Behavioral Safety layer scored lowest at 63/100, indicating areas for improvement.
Last analyzed on June 1, 2026 (commit 211cdd64). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings3
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | Path Traversal for Input File Reading The `scripts/diagnose.py` and `scripts/visualize.py` scripts accept a `data_filepath` argument which is directly passed to `pd.read_csv()` within `ts_utils.load_data`. An attacker could provide a path traversal sequence (e.g., `../../../etc/passwd`) to read arbitrary files from the filesystem. While `pd.read_csv` expects CSV format, it might still reveal sensitive data if the target file happens to be parseable or if error messages expose content. Validate and sanitize the `filepath` argument to ensure it is within an allowed, sandboxed directory (e.g., a temporary user-specific directory) and does not contain path traversal sequences. Use `pathlib.Path.resolve()` with a base directory check. | LLM | scripts/ts_utils.py:38 | |
| HIGH | Arbitrary File Write via Unsanitized Output Directory The `scripts/diagnose.py` and `scripts/visualize.py` scripts accept an `--output-dir` argument. This argument is used to construct paths for writing output files (e.g., `diagnostics.json`, `summary.txt`, `plots/*.png`). An attacker could provide a path traversal sequence (e.g., `../../../etc/`) to write files to arbitrary locations on the filesystem, potentially overwriting critical system files, creating malicious configuration files, or exfiltrating data by writing to publicly accessible locations. Validate and sanitize the `output_dir` argument to ensure it is within an allowed, sandboxed directory (e.g., a temporary user-specific directory) and does not contain path traversal sequences. Use `pathlib.Path.resolve()` with a base directory check. | LLM | scripts/diagnose.py:30 | |
| MEDIUM | Unpinned Dependencies in Skill Manifest The `SKILL.md` lists dependencies (`pandas`, `numpy`, `matplotlib`, `statsmodels`, `scipy`) without specifying exact versions. This introduces a supply chain risk where future updates to these libraries could introduce vulnerabilities, breaking changes, or unexpected behavior. It is best practice to pin dependencies to specific versions for reproducibility and security. Pin all dependencies to specific versions (e.g., `pandas==1.5.3`) to ensure reproducibility and mitigate risks from unexpected updates. Use a `requirements.txt` file with exact versions. | LLM | SKILL.md:100 |
Scan History
Embed Code
[](https://skillshield.io/report/018acdd5c04b40f8)
Powered by SkillShield