이 보고서는 요청한 언어로 번역되지 않았습니다. 대신 정규 영어 보고서를 표시합니다.

버전별 보안 평가

보고서 ID: SA-98E33E14

10/26/2026, 8:38:18 PM

brewpage-publish 보안 평가 v5

스킬 보안 인증 보고서

감사 이력
스캐너 버전 3.0.0 감사 모델: codex 이전 보고서
스킬 이름
brewpage-publish
버전
v5
유지관리자
kochetkov-ma
적용 범위
6 스캔된 파일 · 1,086 분석된 줄 수
정책 버전
skillstore-security-audit-policy-v1

확인된 발견 사항 중 가장 높은 심각도

높음

확인된 보안 발견 사항 4건에 주의가 필요합니다.

설치 컨텍스트

과거 증거

이 보고서는 현재 설치 가능한 아티팩트를 설명하지 않을 수 있습니다. 설치 지침은 현재 Skill 페이지를 여십시오.

현재 Skill 페이지 열기

이 보고서는 매니페스트 또는 ZIP을 차단하거나 승인하지 않습니다.

The static alerts match documentation, defensive exclusions, and expected publishing operations rather than demonstrated malicious behavior. Context review found unsafe history destinations, conflicting token-disclosure instructions, unattended privacy defaults, and unbounded ZIP inspection. No evidence found of deliberate credential theft or encoded executable payloads.

보고서 위치

이전 보고서

이 보고서를 사용하여 설치하기 전에 감사 기록을 여세요.

감사 증명

증명 대체됨

더 새로운 증명이 존재합니다.

사람 검증

검증되지 않음

이 보고서에 대해 기록된 사람의 검증이 없습니다.

적용 범위

6 스캔된 파일 · 1,086 분석된 줄 수

검토를 위해 표시된 항목 4개

제한 사항

이 보고서는 런타임 또는 샌드박스 실행을 주장하지 않으며 부작용이 없음을 증명하지 않습니다.

증거 체인

소스 바인딩부터 설치 계약까지 증거를 따르십시오. 사용 가능한 증거는 검증을 뒷받침하지만 안전을 보장하지는 않습니다.

  1. 출처

    커밋 및 경로 바인딩됨

  2. 아티팩트

    콘텐츠 및 트리 해시가 바인딩됨

  3. 감사

    완료

  4. 설치 계약

    확인을 위해 매니페스트 열기

    매니페스트 열기

관찰된 기능

관찰됨은 이 보고서가 뒷받침하는 증거를 기록했음을 의미합니다. 기록되지 않음은 기능이 없다는 것을 증명하지 않습니다.

스크립트 포함

Skill에 포함된 코드를 실행할 수 있습니다.

이 감사에서 기록되지 않음

네트워크 접근

외부 서비스에 연결될 수 있습니다.

14개의 증거 위치에서 관찰됨

파일 시스템 접근

로컬 파일을 읽거나 쓸 수 있습니다.

27개의 증거 위치에서 관찰됨

환경 변수

프로세스 환경에서 값을 읽을 수 있습니다.

2개의 증거 위치에서 관찰됨

외부 명령어

Skill 외부의 명령 또는 프로그램을 호출할 수 있습니다.

50개의 증거 위치에서 관찰됨

위험 발견 사항

확인된 보안 우려 사항은 여전히 검토가 필요한 항목과 분리됩니다.

확인된 보안 우려 사항 (4)

RISK-001 높음
Owner-token history follows repository-controlled paths
History writes follow symlinks, and chmod failures are ignored. A crafted checkout can redirect owner tokens outside the intended private history file.
The code checks -f but never rejects symlinked history files or parent directories. Redirection and chmod follow these paths before token append.
RISK-002 높음
Recovery guidance conflicts with owner-token confidentiality
The recovery note says "report the new URL and owner token", contradicting the explicit prohibition on conversational token disclosure. Following it could expose management credentials.
Both conflicting instructions appear verbatim in the skill. Exposure depends on agent interpretation; the script does not itself print owner tokens in normal results.
RISK-003 중간
Unanswered privacy prompts permit unprotected publication
Missing namespace and password answers default to an unlisted link without authentication. Unattended runs can publish selected content without explicit access-policy approval.
The workflow explicitly treats no answer as permission to use an unlisted namespace and no password. Publication is intended, but privacy consent fails open.
RISK-004 중간
Archive integrity checks lack local resource limits
Supplied ZIP files undergo decompression testing before upload without a timeout or expansion cap. A malicious archive can exhaust local CPU or stall inspection.
unzip -tq processes archive contents synchronously with no timeout. maxBuffer limits captured output, not decompression work or expanded bytes.

개선 조치

이 감사에서 제안된 수정 사항이 기록되었습니다. 이를 적용하는 것은 유지 관리자의 책임입니다.

  1. FIX-001
    높음
    The old-publication recovery guidance contradicts the prohibition on printing owner tokens.
    Remove the instruction to report the owner token; require recovery replies to contain only the URL and local history location.
  2. FIX-002
    높음
    Token-history destinations can follow symlinks and permission failures do not stop publication.
    Reject symlinked history paths and parents, create history atomically with mode 0600, and abort if ownership or permission checks fail.
  3. FIX-003
    중간
    Adding a gitignore entry does not protect history that is already tracked.
    Detect tracked history with git ls-files and refuse token storage until the file is removed from the index.
  4. FIX-004
    중간
    Missing answers permit publication without password protection.
    Require explicit access-policy approval before upload; allow unattended publication only through a separately supplied, deliberate authorization flag.
  5. FIX-005
    중간
    ZIP integrity testing can consume unbounded local processing time.
    Reject oversized archives before testing, enforce entry and expansion budgets with a structured ZIP parser, and apply child-process timeouts.

전문가 증거

변경 불가능한 대상 ID, 스캐너 메타데이터, 제외된 일치 항목 및 소스 수준 증거.

아티팩트 주체

Marketplace 커밋
98e33e143b9d10591d1a0a45cf7515e6a50429e6
콘텐츠 해시
c8abc29f3e57aefe8ab9b8dd5742dc6c9d7ba66affe74c1464a12bd61a2bddfc
트리 해시
1707afcafed0ce833cb8e64e59ee92d637707d17f72af438dd7009da6580f5e8
Skill 경로
skills/kochetkov-ma/brewpage-publish
감사 페이로드 해시
3c48a5a7d1f12f1973644ebc9150dd25

분석 메타데이터

감사 모델: codex

분석 상태: 완료

범위는 기록된 파일, 줄, 메서드 및 증거로 제한됩니다. 런타임 또는 샌드박스 실행은 주장하지 않습니다.

검증 및 내보내기

매니페스트와 잠금 파일은 설치 아티팩트를 암호화 해시에 바인딩합니다. 이 무결성 주장은 보안 평가와는 별개입니다.

감사 증명: superseded