Dieser Bericht ist nicht in der angeforderten Sprache verfügbar. Stattdessen wird der maßgebliche englische Bericht angezeigt.

Versionierte Sicherheitsbewertung

Berichts-ID: SA-ABF73724

7/5/2026, 8:57:41 AM

citation-management Sicherheitsbewertung v7

Zertifizierungsbericht zur Skill-Sicherheit

Audit-Verlauf
Auditmodell: codex Historischer Bericht
Skillname
citation-management
Version
v7
Betreuer
davila7
Abdeckung
14 Gescannte Dateien · 8,180 Analysierte Zeilen
Richtlinienversion
Nicht verfügbar

Höchster bestätigter Schweregrad eines Befunds

Mittel

3 bestätigte Sicherheitsbefunde erfordern Aufmerksamkeit.

Installationskontext

Historische Nachweise

Dieser Bericht beschreibt möglicherweise nicht das derzeit installierbare Artefakt. Öffnen Sie die aktuelle Skill-Seite für Installationshinweise.

Aktuelle Skill-Seite öffnen

Dieser Bericht blockiert oder autorisiert weder das Manifest noch die ZIP-Datei.

Most static findings are false positives from Markdown code fences, sample URLs, placeholder API-key text, and citation-key variables. Confirmed risks are controlled but real: scripts make outbound academic API requests, can overwrite output files, and include optional Google Scholar proxy support. No prompt injection attempt or hidden obfuscated payload was found in the reviewed files.

Position melden

Historischer Bericht

Öffnen Sie den Auditverlauf, bevor Sie diesen Bericht zur Installation verwenden.

Audit-Nachweis

Nicht bescheinigungsfähig

Die erforderliche unveränderliche Bindung ist unvollständig.

Menschliche Überprüfung

Nicht überprüft

Für diesen Bericht ist keine menschliche Überprüfung verzeichnet.

Abdeckung

14 Gescannte Dateien · 8,180 Analysierte Zeilen

22 Elemente zur Überprüfung angezeigt

Einschränkungen

Dieser Bericht beansprucht keine Laufzeit- oder Sandbox-Ausführung und beweist nicht das Fehlen von Nebenwirkungen.

Beweiskette

Folgen Sie den Nachweisen von der Quellenbindung bis zum Installationsvertrag. Verfügbare Nachweise unterstützen die Überprüfung; sie sind keine Sicherheitsgarantie.

  1. Quelle

    Bindung nicht verfügbar

  2. Artefakt

    Identität unvollständig

  3. Prüfung

    Vollständig

  4. Installationsvertrag

    Manifest zur Überprüfung öffnen

    Manifest öffnen

Beobachtete Funktionen

„Beobachtet“ bedeutet, dass dieser Bericht unterstützende Nachweise erfasst hat. Nicht erfasst bedeutet nicht, dass eine Fähigkeit nicht vorhanden ist.

Enthält Skripte

Kann mit dem Skill enthaltenen Code ausführen.

Durch dieses Audit nicht erfasst

Netzwerkzugriff

Kann eine Verbindung zu externen Diensten herstellen.

An 76 Nachweisstellen beobachtet

Dateisystemzugriff

Kann lokale Dateien lesen oder schreiben.

An 6 Nachweisstellen beobachtet

Umgebungsvariablen

Kann Werte aus der Prozessumgebung lesen.

An 24 Nachweisstellen beobachtet

Externe Befehle

Kann Befehle oder Programme außerhalb des Skills aufrufen.

An 97 Nachweisstellen beobachtet

Elemente der Fähigkeitsprüfung (19)
Mittel
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
The converter writes the requested output path with write mode and can overwrite an existing file. This is user-directed CLI behavior, but it is a real file-clobbering risk.
Mittel
Hardcoded URL
url = 'http://export.arxiv.org/api/query'
The extractor uses the arXiv export API over HTTP for arXiv metadata. This is intended functionality, but plaintext transport can expose queried identifiers.
Mittel
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
The extractor writes the requested output path with write mode and can overwrite an existing file. This is expected for an export tool, but it should confirm destructive writes.
Mittel
Python file write/append
with open(output_file, 'w', encoding='utf-8') as f:
The formatter opens the output path with write mode, and the default output is the input file. This can overwrite the original bibliography without a backup.
Mittel
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
The Google Scholar exporter writes the requested output path with write mode and can overwrite an existing file. This is user-directed, but an agent could clobber files accidentally.
Mittel
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
The PubMed exporter writes the requested output path with write mode and can overwrite an existing file. This is expected CLI behavior, but it has data-loss risk.
Mittel
Python file write/append
with open(args.report, 'w', encoding='utf-8') as f:
The validator writes the requested report path with write mode and can overwrite an existing file. This is useful, but it should guard against accidental clobbering.
Niedrig
Python HTTP libraries
self.session = requests.Session()
The converter creates a requests session and performs outbound DOI lookups when used. This is intended, but it sends user-provided DOI identifiers to an external service.
Niedrig
Python HTTP libraries
except requests.exceptions.Timeout:
The requests timeout handler confirms the script performs outbound DOI requests. The network use is controlled and academic, but still exposes DOI lookups to external infrastructure.
Niedrig
Python HTTP libraries
except requests.exceptions.RequestException as e:
The requests exception handler confirms outbound DOI requests are made. The destination is expected, but citation identifiers leave the local environment.
Niedrig
Hardcoded URL
url = f'https://doi.org/{doi}'
The converter sends user-provided DOIs to doi.org for BibTeX content negotiation. This is expected functionality, but it is real outbound network disclosure of citation identifiers.
Niedrig
Python HTTP libraries
self.session = requests.Session()
The extractor creates a requests session for metadata APIs. This is intended, but it enables outbound requests using user-provided citation identifiers.
Niedrig
Hardcoded URL
url = f'https://api.crossref.org/works/{doi}'
The extractor queries CrossRef with user-provided DOIs. This is legitimate citation metadata retrieval, but it discloses DOI lookups to an external API.
Niedrig
Hardcoded URL
url = f'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi'
The extractor queries NCBI E-utilities for PMID metadata. This is expected, but it sends PMIDs and optional contact details to an external service.
Niedrig
Python HTTP libraries
self.session = requests.Session()
The script creates a requests session for PubMed API access. This is legitimate, but search queries and identifiers are sent outside the local environment.
Niedrig
Hardcoded URL
self.base_url = 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/'
The script hardcodes the official NCBI E-utilities base URL and sends search terms there. This is expected, but it is real outbound network activity.
Niedrig
Python HTTP libraries
self.session = requests.Session()
The validator creates a requests session used when DOI checking is enabled. This is expected, but DOI values are sent to external services during validation.
Niedrig
Hardcoded URL
url = f'https://doi.org/{doi}'
The validator checks DOI resolution through doi.org when requested. This is legitimate, but queried DOI values leave the local environment.
Niedrig
Hardcoded URL
crossref_url = f'https://api.crossref.org/works/{doi}'
The validator queries CrossRef for DOI metadata during validation. This is expected, but it sends citation identifiers to an external API.

Risikofunde

Bestätigte Sicherheitsbedenken werden von Punkten getrennt, die noch überprüft werden müssen.

Bestätigte Sicherheitsbedenken (3)

RISK-001 Mittel
System reconnaissance
use_proxy: Use free proxy (helps avoid rate limiting)
The option explicitly enables free proxies to avoid rate limiting, which can route research queries through unknown third parties and bypass service controls. This is a real privacy and policy risk.
RISK-002 Mittel
System reconnaissance
help='Use free proxy to avoid rate limiting'
The option explicitly enables free proxies to avoid rate limiting, which can route research queries through unknown third parties and bypass service controls. This is a real privacy and policy risk.
RISK-003 Mittel
Free Proxy Use for Google Scholar Searches
The Google Scholar workflow offers free proxy support to avoid rate limiting. This can expose search queries to unknown third parties and may bypass service controls.
The script contains working proxy setup, and the documentation discusses proxies and user-agent rotation around rate limits. The behavior is explicit and tied to automated Google Scholar access.

Abhilfemaßnahmen

Von diesem Audit vorgeschlagene Korrekturen wurden erfasst. Ihre Umsetzung liegt in der Verantwortung des Maintainers.

  1. FIX-001
    Mittel
    Google Scholar proxy support can route queries through unknown infrastructure.
    Remove free proxy support and do not recommend proxy rotation. Prefer official APIs, manual export, caching, and conservative rate limits.
  2. FIX-002
    Mittel
    Several scripts overwrite output paths with write mode.
    Warn before overwriting, create backups, or use exclusive create mode unless the user confirms replacement.
  3. FIX-003
    Mittel
    The arXiv metadata extractor uses an HTTP endpoint.
    Use HTTPS when supported or document that arXiv identifiers may be sent over plaintext transport.
  4. FIX-004
    Niedrig
    Citation identifiers and search terms are sent to external academic services.
    Document external destinations and ask before sending sensitive research topics, emails, or optional NCBI API keys.

Expertennachweise

Unveränderliche Subjektidentität, Scanner-Metadaten, verworfene Treffer und Nachweise auf Quellcodeebene.

Artefakt-Subjekt

Marketplace-Commit
Nicht verfügbar
Inhalts-Hash
Nicht verfügbar
Tree-Hash
Nicht verfügbar
Skill-Pfad
Nicht verfügbar
Hash der Audit-Nutzlast
Nicht verfügbar

Analysemetadaten

Auditmodell: codex

Analysestatus: Vollständig

Der Umfang ist auf die aufgezeichneten Dateien, Zeilen, Methoden und Nachweise beschränkt. Es wird keine Ausführung in einer Laufzeitumgebung oder Sandbox beansprucht.

Verifizieren und exportieren

Das Manifest und die Lockdatei binden Installationsartefakte an kryptografische Hashes. Diese Integritätsaussage ist von der Sicherheitsbewertung getrennt.

Audit-Nachweis: not_attestable