Trust Assessment
pdf received a trust score of 72/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 5 findings: 0 critical, 0 high, 4 medium, and 0 low severity. Key findings include Arbitrary File Write via Unsanitized Output Path, Monkey Patching of Third-Party Library.
The analysis covered 4 layers: manifest_analysis, llm_behavioral_safety, static_code_analysis, dependency_graph. All layers scored 70 or above, reflecting consistent security practices.
Last analyzed on February 11, 2026 (commit 1ed29a03). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings5
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| MEDIUM | Arbitrary File Write via Unsanitized Output Path The script constructs an output file path using user-provided input (sys.argv[2]) without apparent sanitization. A malicious actor could provide a path containing directory traversal sequences (e.g., `../../sensitive_file`) or an absolute path to overwrite or create files in arbitrary locations on the filesystem. This could lead to data corruption, denial of service, or privilege escalation if sensitive system files are targeted. Sanitize the `output_dir` argument to ensure it is a safe, relative path within an intended output directory. Consider using `os.path.abspath()` combined with checks to ensure the resolved path remains within a designated safe directory, or restrict output to a temporary directory. | Unknown | scripts/convert_pdf_to_images.py:17 | |
| MEDIUM | Arbitrary File Write via Unsanitized Output Path The script constructs an output file path using user-provided input (sys.argv[4]) without apparent sanitization. A malicious actor could provide a path containing directory traversal sequences (e.g., `../../sensitive_file`) or an absolute path to overwrite or create files in arbitrary locations on the filesystem. This could lead to data corruption, denial of service, or privilege escalation if sensitive system files are targeted. Sanitize the `output_path` argument to ensure it is a safe, relative path within an intended output directory. Consider using `os.path.abspath()` combined with checks to ensure the resolved path remains within a designated safe directory, or restrict output to a temporary directory. | Unknown | scripts/create_validation_image.py:20 | |
| MEDIUM | Arbitrary File Write via Unsanitized Output Path The script constructs an output file path using user-provided input (sys.argv[3]) without apparent sanitization. A malicious actor could provide a path containing directory traversal sequences (e.g., `../../sensitive_file`) or an absolute path to overwrite or create files in arbitrary locations on the filesystem. This could lead to data corruption, denial of service, or privilege escalation if sensitive system files are targeted. Sanitize the `output_pdf_path` argument to ensure it is a safe, relative path within an intended output directory. Consider using `os.path.abspath()` combined with checks to ensure the resolved path remains within a designated safe directory, or restrict output to a temporary directory. | Unknown | scripts/fill_fillable_fields.py:70 | |
| MEDIUM | Arbitrary File Write via Unsanitized Output Path The script constructs an output file path using user-provided input (sys.argv[3]) without apparent sanitization. A malicious actor could provide a path containing directory traversal sequences (e.g., `../../sensitive_file`) or an absolute path to overwrite or create files in arbitrary locations on the filesystem. This could lead to data corruption, denial of service, or privilege escalation if sensitive system files are targeted. Sanitize the `output_pdf_path` argument to ensure it is a safe, relative path within an intended output directory. Consider using `os.path.abspath()` combined with checks to ensure the resolved path remains within a designated safe directory, or restrict output to a temporary directory. | Unknown | scripts/fill_pdf_form_with_annotations.py:90 | |
| INFO | Monkey Patching of Third-Party Library The script modifies the behavior of a third-party library (`pypdf`) by monkey-patching `DictionaryObject.get_inherited`. While this specific patch appears to address a compatibility issue with PDF field options, monkey-patching can introduce unexpected behavior, make code harder to maintain, and potentially bypass security checks or assumptions made by the original library if not done with extreme care. It's a non-standard practice that could have unforeseen side effects. If possible, avoid monkey-patching by using official API extensions, contributing the fix upstream, or finding alternative ways to achieve the desired behavior without modifying library internals. If absolutely necessary, ensure the patch is thoroughly tested and documented for its security implications. | Unknown | scripts/fill_fillable_fields.py:76 |
Scan History
Embed Code
[](https://skillshield.io/report/f1b9abd58eeb6060)
Powered by SkillShield