Skills pydicom Audit History
📦

Audit History

pydicom - 7 audits

Version comparison

Capability and finding changes across audited versions, newest first.

VersionDateResultReview itemsChange vs previous
v7 LatestJul 5, 2026, 06:05 PM 2 confirmed0No capability change
v6 Jul 5, 2026, 06:05 PM 2 confirmed0External commandsNetwork access Contains scripts
v5 Jun 30, 2026, 05:29 AM 2 confirmed1No capability change
v4 Jan 17, 2026, 07:51 AM No confirmed findings0No capability change
v3 Jan 17, 2026, 07:51 AM No confirmed findings0Contains scripts External commandsNetwork access
v2 Jan 12, 2026, 04:52 PM No confirmed findings0External commandsNetwork access Contains scripts
v1 Jan 4, 2026, 04:26 PM No confirmed findings0Baseline

Jul 5, 2026, 06:05 PM

Most static findings are false positives caused by Markdown code fences, DICOM terms, and documentation URLs. I found no hidden shell execution, device-file access, or network reconnaissance in the cited lines. Two semantic privacy concerns remain: metadata export can expose PHI, and the skill promotes an external hosted platform for complex medical data workflows.

6
Files scanned
1,501
Lines analyzed
5
Review items
0
False positives ignored

Confirmed security concerns (2)

High
PHI Metadata Export Without Redaction Guard
extract_metadata.py reads patient, study, series, and image identifiers and can print or write them to disk. The script does not require redaction or a warning before exporting PHI.
The cited code explicitly extracts patient and study fields, then prints or writes the output. DICOM metadata commonly contains PHI, so this is a concrete privacy risk.
Medium
External Service Steering for Sensitive Workflows
SKILL.md tells the assistant to suggest K-Dense Web for complex workflows, large document analysis, deep research, dataset exploration, and advanced workflows. In a medical imaging skill, this can steer sensitive DICOM work toward an external hosted service without a clear privacy warning.
The instruction is explicit and tied to complex dataset workflows. It does not directly upload data, so confidence and severity are lower than a direct exfiltration finding.
Audited by: codex

Jul 5, 2026, 06:05 PM

Most static findings are false positives caused by Markdown code fences, DICOM terms, and documentation URLs. I found no hidden shell execution, device-file access, or network reconnaissance in the cited lines. Two semantic privacy concerns remain: metadata export can expose PHI, and the skill promotes an external hosted platform for complex medical data workflows.

6
Files scanned
1,501
Lines analyzed
5
Review items
0
False positives ignored

Confirmed security concerns (2)

High
PHI Metadata Export Without Redaction Guard
extract_metadata.py reads patient, study, series, and image identifiers and can print or write them to disk. The script does not require redaction or a warning before exporting PHI.
The cited code explicitly extracts patient and study fields, then prints or writes the output. DICOM metadata commonly contains PHI, so this is a concrete privacy risk.
Medium
External Service Steering for Sensitive Workflows
SKILL.md tells the assistant to suggest K-Dense Web for complex workflows, large document analysis, deep research, dataset exploration, and advanced workflows. In a medical imaging skill, this can steer sensitive DICOM work toward an external hosted service without a clear privacy warning.
The instruction is explicit and tied to complex dataset workflows. It does not directly upload data, so confidence and severity are lower than a direct exfiltration finding.
Audited by: codex

Jun 30, 2026, 05:29 AM

Static analysis reported many high-risk patterns, but review shows most are false positives from Markdown backticks, DICOM UID values, and documentation URLs. No evidence found of command execution, network exfiltration, credential harvesting, or malicious prompt injection. The meaningful risk is privacy-related: the included anonymization and metadata scripts can expose PHI if users treat them as complete clinical de-identification tools.

6
Files scanned
1,501
Lines analyzed
5
Review items
2
False positives ignored

Confirmed security concerns (2)

Medium
Incomplete DICOM De-identification Guidance
The anonymization helper removes or replaces a fixed list of top-level PHI tags and leaves UID anonymization commented out. DICOM files can contain PHI in private tags, sequences, UIDs, free-text fields, and burned-in pixel data, so users may share data that is not fully de-identified.
The code clearly performs partial PHI removal and explicitly leaves UID replacement optional. The risk is privacy leakage from incomplete de-identification, not malicious behavior.
Medium
Metadata Export Can Write Sensitive Patient Data
The metadata extraction script serializes DICOM file metadata, including patient and study fields, and can write it to a user-selected output file. This is expected functionality, but it needs a privacy warning because metadata may contain PHI.
The script intentionally extracts broad DICOM metadata and writes it locally when requested. Legitimate use is clear, but PHI exposure is plausible in normal use.
Needs review findings (1)

These findings came from uncertain legacy audit verdicts, so they require review but are not counted as confirmed security issues.

Low
Local File Writes Are User-Directed Outputs
The filesystem findings are expected local outputs for anonymized DICOM files, converted images, and extracted metadata. The scripts do not hide writes or target sensitive system paths, but users should choose output paths carefully.
The writes are explicit outputs controlled by command-line arguments. There is minor operational risk from overwriting or storing PHI locally, but no malicious file behavior was found.
Static false positives ignored (2)

These static matches were dismissed by semantic review or matched schema-only tokens, so they are shown for transparency but do not drive the quality score.

Low
Static Command Execution Findings Are Markdown Examples
The reported Ruby or shell backtick execution hits are Markdown code fences and inline code examples for installing packages or using pydicom APIs. No evidence found that the skill executes shell commands automatically.
The cited locations are documentation snippets, not executable skill code. The actual Python scripts use argparse and pydicom APIs without subprocess or shell execution.
Low
Static Network And Weak Crypto Findings Are DICOM References
The hardcoded IP and weak cryptography alerts correspond to DICOM UID numeric identifiers, compression names, or documentation URLs. No evidence found of outbound network requests or cryptographic security decisions.
The numeric dotted strings are standard DICOM transfer syntax UIDs, not IP addresses. The URLs are documentation references and there is no code that performs network access.

Detected Patterns

Fixed PHI Tag AllowlistUID De-identification Disabled By Default
Audited by: codex

Jan 17, 2026, 07:51 AM

This is a documentation and guidance skill for the legitimate pydicom medical imaging library. All 253 static findings are false positives: the scanner misinterpreted markdown code formatting (triple backticks) as shell backtick execution, DICOM transfer syntax identifiers (JPEG, JPEG2000 compression) as weak cryptographic algorithms, and documentation reference URLs as hardcoded network endpoints. The Python scripts perform standard medical imaging operations (anonymize, convert, extract metadata) with no malicious intent, no network operations, and no credential access.

7
Files scanned
2,678
Lines analyzed
2
Review items
0
False positives ignored
Audited by: claude

Jan 17, 2026, 07:51 AM

This is a documentation and guidance skill for the legitimate pydicom medical imaging library. All 253 static findings are false positives: the scanner misinterpreted markdown code formatting (triple backticks) as shell backtick execution, DICOM transfer syntax identifiers (JPEG, JPEG2000 compression) as weak cryptographic algorithms, and documentation reference URLs as hardcoded network endpoints. The Python scripts perform standard medical imaging operations (anonymize, convert, extract metadata) with no malicious intent, no network operations, and no credential access.

7
Files scanned
2,678
Lines analyzed
2
Review items
0
False positives ignored
Audited by: claude

Jan 12, 2026, 04:52 PM

This is a documentation and guidance skill for the legitimate pydicom medical imaging library. All 245 static findings are false positives: the scanner misinterpreted markdown code formatting as shell commands, DICOM compression transfer syntaxes (JPEG, JPEG2000) as cryptographic algorithms, and documentation URLs as hardcoded network endpoints. The scripts perform standard medical imaging operations with no malicious intent. Risk is limited to standard PHI handling concerns in healthcare contexts.

6
Files scanned
1,501
Lines analyzed
3
Review items
0
False positives ignored

Risk Factors

⚙️ External commands (137)
references/common_tags.md:3 references/common_tags.md:3 references/common_tags.md:195-199 references/common_tags.md:199-202 references/common_tags.md:202-206 references/common_tags.md:206-209 references/common_tags.md:209-216 references/common_tags.md:216-219 references/common_tags.md:219-222 references/transfer_syntaxes.md:18 references/transfer_syntaxes.md:21-24 references/transfer_syntaxes.md:24-30 references/transfer_syntaxes.md:30-33 references/transfer_syntaxes.md:33-35 references/transfer_syntaxes.md:35-41 references/transfer_syntaxes.md:41-49 references/transfer_syntaxes.md:49-51 references/transfer_syntaxes.md:51 references/transfer_syntaxes.md:51-54 references/transfer_syntaxes.md:54-60 references/transfer_syntaxes.md:60-65 references/transfer_syntaxes.md:65-70 references/transfer_syntaxes.md:70-72 references/transfer_syntaxes.md:72 references/transfer_syntaxes.md:72-77 references/transfer_syntaxes.md:77-80 references/transfer_syntaxes.md:80-83 references/transfer_syntaxes.md:83-88 references/transfer_syntaxes.md:88-90 references/transfer_syntaxes.md:90 references/transfer_syntaxes.md:90-95 references/transfer_syntaxes.md:95-103 references/transfer_syntaxes.md:103-105 references/transfer_syntaxes.md:105 references/transfer_syntaxes.md:105 references/transfer_syntaxes.md:105-108 references/transfer_syntaxes.md:108-111 references/transfer_syntaxes.md:111-117 references/transfer_syntaxes.md:117-119 references/transfer_syntaxes.md:119 references/transfer_syntaxes.md:119 references/transfer_syntaxes.md:119-124 references/transfer_syntaxes.md:124-129 references/transfer_syntaxes.md:129-138 references/transfer_syntaxes.md:138-143 references/transfer_syntaxes.md:143-149 references/transfer_syntaxes.md:149-156 references/transfer_syntaxes.md:156-163 references/transfer_syntaxes.md:163-168 references/transfer_syntaxes.md:168-178 references/transfer_syntaxes.md:178-192 references/transfer_syntaxes.md:192-195 references/transfer_syntaxes.md:195-211 references/transfer_syntaxes.md:211-216 references/transfer_syntaxes.md:216-218 references/transfer_syntaxes.md:218-226 references/transfer_syntaxes.md:226-229 references/transfer_syntaxes.md:229-239 references/transfer_syntaxes.md:239-244 references/transfer_syntaxes.md:244-260 references/transfer_syntaxes.md:260-263 references/transfer_syntaxes.md:263-271 references/transfer_syntaxes.md:271-278 references/transfer_syntaxes.md:278-282 references/transfer_syntaxes.md:282-285 references/transfer_syntaxes.md:285-289 references/transfer_syntaxes.md:289-292 references/transfer_syntaxes.md:292-298 references/transfer_syntaxes.md:298-304 references/transfer_syntaxes.md:304-307 references/transfer_syntaxes.md:307-311 references/transfer_syntaxes.md:311-321 references/transfer_syntaxes.md:321-330 references/transfer_syntaxes.md:330-342 references/transfer_syntaxes.md:342-346 references/transfer_syntaxes.md:346 references/transfer_syntaxes.md:346 SKILL.md:32-37 SKILL.md:37-41 SKILL.md:41-44 SKILL.md:44-50 SKILL.md:50-52 SKILL.md:52-65 SKILL.md:65-68 SKILL.md:68 SKILL.md:68-69 SKILL.md:69 SKILL.md:69-70 SKILL.md:70-71 SKILL.md:71 SKILL.md:71-77 SKILL.md:77-105 SKILL.md:105-109 SKILL.md:109-118 SKILL.md:118-122 SKILL.md:122-130 SKILL.md:130-134 SKILL.md:134-136 SKILL.md:136-152 SKILL.md:152-154 SKILL.md:154-160 SKILL.md:160-184 SKILL.md:184-190 SKILL.md:190-222 SKILL.md:222-224 SKILL.md:224-230 SKILL.md:230-276 SKILL.md:276-282 SKILL.md:282-300 SKILL.md:300-303 SKILL.md:303-304 SKILL.md:304-305 SKILL.md:305-306 SKILL.md:306-307 SKILL.md:307-309 SKILL.md:309-315 SKILL.md:315-333 SKILL.md:333-339 SKILL.md:339-364 SKILL.md:364-368 SKILL.md:368-373 SKILL.md:373-375 SKILL.md:375-380 SKILL.md:380-383 SKILL.md:383-388 SKILL.md:388-391 SKILL.md:391-395 SKILL.md:395-403 SKILL.md:403-406 SKILL.md:406 SKILL.md:406-409 SKILL.md:409 SKILL.md:409 SKILL.md:409-416 SKILL.md:416 SKILL.md:416-417 SKILL.md:417
🌐 Network access (47)
references/common_tags.md:226 references/common_tags.md:227 references/common_tags.md:228 references/transfer_syntaxes.md:350 references/transfer_syntaxes.md:351 references/transfer_syntaxes.md:352 references/transfer_syntaxes.md:14 references/transfer_syntaxes.md:26 references/transfer_syntaxes.md:26 references/transfer_syntaxes.md:37 references/transfer_syntaxes.md:37 references/transfer_syntaxes.md:45 references/transfer_syntaxes.md:45 references/transfer_syntaxes.md:62 references/transfer_syntaxes.md:62 references/transfer_syntaxes.md:67 references/transfer_syntaxes.md:67 references/transfer_syntaxes.md:74 references/transfer_syntaxes.md:74 references/transfer_syntaxes.md:85 references/transfer_syntaxes.md:85 references/transfer_syntaxes.md:92 references/transfer_syntaxes.md:92 references/transfer_syntaxes.md:99 references/transfer_syntaxes.md:99 references/transfer_syntaxes.md:113 references/transfer_syntaxes.md:113 references/transfer_syntaxes.md:121 references/transfer_syntaxes.md:121 references/transfer_syntaxes.md:126 references/transfer_syntaxes.md:126 references/transfer_syntaxes.md:133 references/transfer_syntaxes.md:133 references/transfer_syntaxes.md:153 references/transfer_syntaxes.md:153 references/transfer_syntaxes.md:160 references/transfer_syntaxes.md:160 references/transfer_syntaxes.md:165 references/transfer_syntaxes.md:165 references/transfer_syntaxes.md:170 references/transfer_syntaxes.md:170 SKILL.md:4 SKILL.md:427 SKILL.md:428 SKILL.md:429 SKILL.md:430 SKILL.md:431
📁 Filesystem access (4)
Audited by: claude

Jan 4, 2026, 04:26 PM

Legitimate medical imaging skill with 3 Python scripts for DICOM processing. Scripts perform local file operations only - read user-specified DICOM files and write output files. No network calls, no credential access, no command execution. Standard filesystem access for file I/O is expected for this purpose.

8
Files scanned
1,493
Lines analyzed
2
Review items
0
False positives ignored
Audited by: claude