Este relatório não está traduzido para o idioma solicitado. O relatório canônico em inglês é exibido no lugar.

Avaliação de segurança versionada

ID do relatório: SA-1B5B6C49

7/7/2026, 7:17:28 PM

pdf avaliação de segurança v9

Relatório de Certificação de Segurança da Skill

Histórico de auditoria
Modelo de auditoria: codex Relatório histórico
Nome da skill
pdf
Versão
v9
Mantenedor
ArtemisAI
Cobertura
12 Arquivos analisados · 1,909 Linhas analisadas
Versão da política
Indisponível

Maior gravidade de descoberta confirmada

Médio

1 constatação de segurança confirmada requer atenção.

Contexto de instalação

Evidências históricas

Este relatório pode não descrever o artefato atualmente instalável. Abra a página atual da Skill para obter orientações de instalação.

Abra a página atual do Skill

Este relatório não bloqueia nem autoriza o manifesto ou o ZIP.

Most external-command detections were false positives caused by Markdown fences, inline code, comments, and JavaScript template literals. Real risk remains from local filesystem reads and writes, caller-provided output paths, and documented command-line PDF workflows; no prompt injection or data-exfiltration intent was found.

Posição do relatório

Relatório histórico

Abra o histórico de auditoria antes de usar este relatório para instalar.

Atestado de auditoria

Não atestável

A vinculação imutável exigida está incompleta.

Verificação humana

Não verificado

Nenhuma verificação humana está registrada para este relatório.

Cobertura

12 Arquivos analisados · 1,909 Linhas analisadas

26 itens exibidos para revisão

Limitações

Este relatório não alega execução em runtime ou sandbox e não prova a ausência de efeitos colaterais.

Cadeia de evidências

Siga as evidências desde a vinculação à origem até o contrato de instalação. As evidências disponíveis oferecem suporte à verificação; não são uma garantia de segurança.

  1. Fonte

    Vinculação indisponível

  2. Artefato

    Identidade incompleta

  3. Auditoria

    Concluído

  4. Contrato de instalação

    Abra o manifesto para verificar

    Abra o manifesto

Recursos observados

Observado significa que este relatório registrou evidências de suporte. Não registrado não prova que uma capacidade está ausente.

Contém scripts

Pode executar código incluído com o Skill.

Não registrado por esta auditoria

Acesso à rede

Pode conectar-se a serviços externos.

Observado em 3 locais de evidência

Acesso ao sistema de arquivos

Pode ler ou gravar arquivos locais.

Observado em 19 locais de evidência

Variáveis de ambiente

Pode ler valores do ambiente do processo.

Não registrado por esta auditoria

Comandos externos

Pode invocar comandos ou programas fora do Skill.

Observado em 62 locais de evidência

Itens de revisão de capacidade (25)
Médio
Node.js fs operations
const existingPdfBytes = fs.readFileSync('input.pdf');
The reference example reads local PDF files from disk. This is expected for PDF work, but local reads should be limited to user-approved paths.
Médio
Node.js fs operations
fs.writeFileSync('modified.pdf', pdfBytes);
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Node.js fs operations
fs.writeFileSync('created.pdf', pdfBytes);
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Node.js fs operations
const pdf1Bytes = fs.readFileSync('doc1.pdf');
The reference example reads local PDF files from disk. This is expected for PDF work, but local reads should be limited to user-approved paths.
Médio
Node.js fs operations
const pdf2Bytes = fs.readFileSync('doc2.pdf');
The reference example reads local PDF files from disk. This is expected for PDF work, but local reads should be limited to user-approved paths.
Médio
Node.js fs operations
fs.writeFileSync('merged.pdf', mergedPdfBytes);
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Synchronous file operations
const existingPdfBytes = fs.readFileSync('input.pdf');
The reference example reads local PDF files from disk. This is expected for PDF work, but local reads should be limited to user-approved paths.
Médio
Synchronous file operations
fs.writeFileSync('modified.pdf', pdfBytes);
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Synchronous file operations
fs.writeFileSync('created.pdf', pdfBytes);
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Synchronous file operations
const pdf1Bytes = fs.readFileSync('doc1.pdf');
The reference example reads local PDF files from disk. This is expected for PDF work, but local reads should be limited to user-approved paths.
Médio
Synchronous file operations
const pdf2Bytes = fs.readFileSync('doc2.pdf');
The reference example reads local PDF files from disk. This is expected for PDF work, but local reads should be limited to user-approved paths.
Médio
Synchronous file operations
fs.writeFileSync('merged.pdf', mergedPdfBytes);
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open("batch_merged.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open(output_file, 'w', encoding='utf-8') as f:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open("cropped.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open(f"chunk_{start_idx//chunk_size}.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open(json_output_path, "w") as f:
The helper script writes to an output path supplied by the caller. This is legitimate PDF processing, but it can overwrite user-accessible files if paths are not constrained.
Médio
Python file write/append
with open(output_pdf_path, "wb") as f:
The helper script writes to an output path supplied by the caller. This is legitimate PDF processing, but it can overwrite user-accessible files if paths are not constrained.
Médio
Python file write/append
with open(output_pdf_path, "wb") as output:
The helper script writes to an output path supplied by the caller. This is legitimate PDF processing, but it can overwrite user-accessible files if paths are not constrained.
Médio
Python file write/append
with open("merged.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open(f"page_{i+1}.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open("rotated.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open("watermarked.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Médio
Python file write/append
with open("encrypted.pdf", "wb") as output:
The example writes PDF or text output to the local filesystem. This is expected for the skill, but it can overwrite files if an agent uses unsafe output paths.
Baixo
Python glob/pattern matching
pdf_files = glob.glob(os.path.join(input_dir, "*.pdf"))
The example enumerates PDF files from a caller-provided directory. This can expose filenames or process unintended documents if used without path review.

Descobertas de risco

As preocupações de segurança confirmadas são separadas dos itens que ainda precisam de revisão.

Preocupações de segurança confirmadas (1)

RISK-001 Médio
Command-Line PDF Tool Execution Requires Confirmation
The skill documentation directs agents to run local helper scripts and PDF utilities with user-provided file paths. This is useful functionality, but it should require user confirmation and path review before execution.
The cited files explicitly instruct use of Python helper scripts and shell PDF tools. The intent is legitimate PDF processing, but command execution with caller-controlled paths is a real operational risk.

Medidas corretivas

As correções sugeridas foram registradas por esta auditoria. Aplicá-las é responsabilidade da pessoa responsável pela manutenção.

  1. FIX-001
    Médio
    Helper scripts accept caller-provided output paths.
    Write outputs only inside a dedicated workspace, reject absolute paths and parent-directory traversal, and ask before overwriting files.
  2. FIX-002
    Médio
    The skill instructs agents to run local PDF utilities and helper scripts.
    Require explicit user confirmation before command execution and show the exact command, input paths, and output paths first.
  3. FIX-003
    Baixo
    Reference examples write files in the current working directory.
    Document that examples should run on copies of files and should write to a new output folder.

Evidência especializada

Identidade imutável do sujeito, metadados do scanner, correspondências descartadas e evidências no nível da origem.

Sujeito do artefato

Commit do Marketplace
Indisponível
Hash do conteúdo
Indisponível
Hash da árvore
Indisponível
Caminho do Skill
Indisponível
Hash da carga de auditoria
Indisponível

Metadados da análise

Modelo de auditoria: codex

Estado da análise: Concluído

O escopo limita-se aos arquivos, linhas, métodos e evidências registrados. Nenhuma execução em runtime ou sandbox é alegada.

Verificar e exportar

O manifesto e o arquivo de bloqueio vinculam os artefatos de instalação a hashes criptográficos. Esta alegação de integridade é separada da avaliação de segurança.

Atestado de auditoria: not_attestable