constant-time-testing

ISSUES FOUND max severity CRITICALSkillSpector Caution 0 registry trailofbits last scanned 1 scan

12 findings (8 critical, 2 medium, 2 low), mainly hardcoded secrets, policy violation, transitive trust abuse. Most recent scan 2026-02-08.

The constant-time-testing skill appears to be an educational resource about timing side-channel vulnerabilities in cryptographic code. The skill contains no executable scripts and consists only of instructional markdown content explaining timing attacks, common vulnerability patterns, and testing methodologies. However, there are two security concerns: (1) MEDIUM severity - The skill references five Python files that are not included in the package, creating potential transitive trust risks if these files are expected from external or user-provided sources; (2) LOW severity - Missing optional metadata fields reduce transparency. The instructional content itself does not contain prompt injection attempts, malicious directives, or deceptive descriptions. If the referenced files are purely illustrative examples rather than actual dependencies, the primary risk is reduced, but this should be clarified in the documentation.

Scanner's overall assessment (LLM analyzer)

Second scanner: NVIDIA SkillSpector

SkillSpector found no issues but could not fully inspect the package, usually because SKILL.md refers to a file that is not present, so it fails closed to CAUTION instead of SAFE. Read it as "not fully checked", not as a finding. How the two scanners compare across the whole corpus: Two scanners, one corpus.

What this skill does

Constant-time testing detects timing side channels in cryptographic code. Use when auditing crypto implementations for timing vulnerabilities.

Package
1 file, 21 KB
SKILL.md
2497 words, 12+ sections
Code
None. Instructions only.

SKILL.md covers: Constant-Time Testing · Background · Key Concepts · Why This Matters · Common Constant-Time Violation Patterns · Example: Modular Exponentiation Timing Attacks · When to Use · Quick Reference · Constant-Time Tooling Categories · 1. Formal Tools · 2. Symbolic Tools · 3. Dynamic Tools

Findings

CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: leak secret

SKILL.md:53

**Integer division and shift operations** leak secrets on certain CPU architectures and compiler configurations.
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: leak │ ← │ Track secret

SKILL.md:192

1. **Start with dudect** - Quick statistical check for timing differences
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: Leak Secret

SKILL.md:499

- [Trail of Bits: Constant-Time Programming](https://www.youtube.com/watch?v=vW6wqTzfz5g) - Overview of constant-time programming principles and tools
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: leak secret

SKILL.md:499

- [Trail of Bits: Constant-Time Programming](https://www.youtube.com/watch?v=vW6wqTzfz5g) - Overview of constant-time programming principles and tools
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: leak secrets

SKILL.md:53

**Integer division and shift operations** leak secrets on certain CPU architectures and compiler configurations.
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: leak │ ← │ Track secret

SKILL.md:192

1. **Start with dudect** - Quick statistical check for timing differences
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: Leak Secrets

SKILL.md:499

- [Trail of Bits: Constant-Time Programming](https://www.youtube.com/watch?v=vW6wqTzfz5g) - Overview of constant-time programming principles and tools
Remediation: Review and remove credential harvesting pattern
CRITICAL CREDENTIAL HARVESTING detected by YARA Hardcoded Secretsstatic

Detects potential exposure of sensitive information like API keys, passwords, tokens, and certificates: leak secret

SKILL.md:499

- [Trail of Bits: Constant-Time Programming](https://www.youtube.com/watch?v=vW6wqTzfz5g) - Overview of constant-time programming principles and tools
Remediation: Review and remove credential harvesting pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: Execute code

SKILL.md:162

Execute code with various inputs, measure elapsed time, and detect inconsistencies. Tests actual implementation including compiler optimizations and architecture.
Remediation: Review and remove transitive trust abuse pattern
MEDIUM Missing Referenced Files Create Transitive Trust Risk Prompt Injectionllm

The SKILL.md instructions reference five Python files (tool.py, implementation.py, OpenSSL.py, scratch.py, cryptographic.py) that are not included in the skill package. If these files are expected to be provided by users or fetched from external sources, the skill could execute untrusted code or follow malicious instructions embedded in those files. This creates a transitive trust vulnerability where the skill delegates trust to external content without validation.

Files referenced in instructions: tool.py, implementation.py, OpenSSL.py, scratch.py, cryptographic.py - All marked as 'not found'
Remediation: 1. Bundle all required files within the skill package, OR 2. Add explicit validation and sandboxing for user-provided files, OR 3. Clearly document that these are example filenames and add warnings about analyzing untrusted code, OR 4. Remove references to specific filenames if they are just examples
LOW Skill does not specify a license Policy Violationstatic

Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.

SKILL.md

Remediation: Add 'license' field to SKILL.md frontmatter (e.g., MIT, Apache-2.0)
LOW Missing Optional Metadata Fields Social Engineeringllm

The skill manifest is missing optional metadata fields: license, compatibility, and allowed-tools. While these fields are not required per the agent skills specification, their absence reduces transparency about the skill's intended usage constraints and compatibility. The 'allowed-tools' field would help users understand which agent capabilities the skill expects to use.

SKILL.md

license: Not specified, compatibility: Not specified, allowed-tools: Not specified
Remediation: Add optional metadata fields to improve transparency: 1. Specify license (e.g., MIT, Apache-2.0), 2. Document compatibility (e.g., 'Works in Claude.ai, Claude Code, API'), 3. Declare allowed-tools (e.g., [Read, Python] if the skill needs to read files and execute Python for timing analysis)

What is in the package

FileKindSize
SKILL.mddoc21 KB

External hosts referenced

github.com cr.yp.to crocs-muni.github.io crypto.stanford.edu eprint.iacr.org link.springer.com paulkocher.com clang.llvm.org post-apocalyptic-crypto.org www.usenix.org www.youtube.com

Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.

Package contents recorded 2026-10-22 at commit a50696e20581. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.

What we checked

What we did not check

Sources