← Zurück zu Lyra
AgentLyra

Skill · Version 1.0.0

Dateiquarantäne und Prüfung

Hält potenziell schädliche Uploads bis zur isolierten Prüfung unzugänglich und ergänzt Schutz über Virenscannergebnisse hinaus.

file-quarantine-malware-scanning

Entdecke, wie der Skill hilft

Wann ist der Skill hilfreich?

Nutze ihn, wenn hochgeladene Dokumente oder Medien von anderen geöffnet oder von Workern verarbeitet werden.

Wobei hilft er dir?

  • Hält ungeprüfte Uploads in isoliertem Quarantänespeicher.
  • Sperrt Zugriff bei fehlgeschlagenen oder unvollständigen Prüfungen.
  • Ergänzt Prüfung durch Neukodierung und restriktive Auslieferungsheader.

Das könntest du fragen

Verhindere Downloads bis das Prüfergebnis des hochgeladenen Dokuments feststeht. Simuliere einen nicht verfügbaren Scanner und nutze eine direkte Download-URL. Die Datei bleibt bis zu einem bestätigten unbedenklichen Ergebnis unzugänglich.

Ausführliche Dokumentation

Hier findest du die ursprüngliche Anleitung, Beispiele und Prüfschritte des Skills in ihrer Originalsprache.

Details…Weniger anzeigen

File Quarantine & Malware Scanning

When an application accepts documents, archives, attachments or shared files that other users, admins or support agents will download, a newly uploaded file must be treated as untrusted and quarantined until content validation and malware scanning complete.

1. Two-Stage Quarantine -> Clean Storage Topology

Isolate unverified uploads from verified production files:

  1. Quarantine / Staging Zone (quarantine-bucket or quarantine/ prefix):
    • Direct client uploads land exclusively in the quarantine location.
    • Fail-closed access: the application's download, preview and sharing endpoints refuse to serve any file whose status is not 'ready' (scan_status === 'clean'). Even the uploader cannot generate a public share link for an unverified file.
    • Configure a short automatic lifecycle expiration (e.g., 24–48 hours) on the quarantine bucket so abandoned or rejected uploads are purged automatically.
  2. Asynchronous Inspection & Malware Scan:
    • A background worker (or cloud object-created event trigger) streams the quarantined object through:
      • Byte-size and magic-byte header verification.
      • Malware scanner (clamd instream socket / ClamAV, AWS GuardDuty S3 Malware Protection, Defender for Storage, or VirusTotal/hash check).
      • Format-specific structural checks (e.g., rejecting encrypted/password-protected archives when policy forbids unscannable containers, or checking PDF for /JS / /JavaScript / /Launch actions).
  3. Promotion or Rejection:
    • clean: copy/move the object to the permanent storage key, record scan_status = 'clean', scanned_at, scanner_version / signature version, delete the quarantine object, and trigger preview generation.
    • infected / suspicious: transition file status to 'rejected', delete or isolate the quarantine object per security incident policy, release reserved user quota, and log a structured security event (with user ID, IP, SHA-256 hash and threat name — never logging the raw payload).
    • scan_error / scanner unavailable: keep the file in 'verifying' and retry with backoff; never fail-open by marking a file 'clean' just because the virus scanner timed out!

2. Defense-in-Depth Beyond Antivirus Signatures

Never claim that a passing antivirus scan guarantees a file is 100% safe:

  • Signature scanners miss zero-day macros, polyglot files (e.g., a valid GIF that is also a valid JS/JAR file), HTML smuggling and SSRF/XXE payloads inside XML-based formats (.svg, .docx, .xlsx).
  • Content Disarmament / Re-encoding: for images, re-encoding pixels to a fresh WebP/PNG/JPEG strips appended polyglot payloads and metadata exploits.
  • Strict Egress Headers: even after a file is marked 'clean', serve it from an isolated domain with X-Content-Type-Options: nosniff, Content-Security-Policy: sandbox and Content-Disposition: attachment for non-media documents.

Enthaltene Dateien 1

  • SKILL.md