Incident herstelplan (Incident response plan (IRP)) voor Weblate

Bereik en doelen

Dit IRP behandelt incidenten die impact hebben op de vertrouwelijkheid, integriteit of beschikbaarheid van een uitrol van Weblate.

Notitie

Het plan is specifiek ontworpen voor uitvoeringen van Weblate door Weblate s.r.o., maar kan soortgelijk op andere uitvoeringen worden toegepast.

Rollen en verantwoordelijkheden

  • Incident herstel leider (Incident Response Lead (IRL)): Coördineert alle fasen van het herstelproces.

  • Systeembeheerder: Voert maatregelen voor afzondering en herstel uit.

  • Beveiligings officier: Evalueert impact voor beveiliging en konsekwenties voor regelgeving.

  • Data Protection Officer (DPO): Evaluates if personal data (PII) was compromised and manages mandatory GDPR notifications.

  • Leider communicatie: beheert notificaties voor interne sleutelpersonen en, indien nodig, externe partijen.

Communication logistics

  • Internal Communication:
    • Primary channel is Signal for human-to-human coordination.

    • Technical alerts remain outside of Signal to avoid noise.

  • External Communication:
    • E-mail is used to reach customers.

    • Customer contact lists are maintained in several locations to ensure access during service outages.

  • Public Disclosure:

Incident categories and severity

Categorieën incidenten

  • Categorie 1 – Niet geauthoriseerde toegang

  • Categorie 2 – Overtreding integriteit gegevens

  • Categorie 3 – Uitval service of degradatie

  • Categorie 4 – Foutieve configuratie of fout bij uitrol

Severity levels and SLAs

Ernst

Definition

Target Acknowledge

Target Initial Action

Critical

Total outage; Admin compromise; Active data breach.

< 30 Minutes

4 Hours

Hoog

Core feature failure; PII leak of single user.

< 2 Hours

12 Hours

Gemiddeld

Performance degradation; Minor security issue.

1 Business Day

3 Business Days

Laag

UI bugs; Staging issues; Non-security errors.

Best Effort

Best Effort

Levenscyclus incident herstel

Voorbereiding

  • Ensure regular daily backups of the PostgreSQL database and the data directory using Weblate’s built-in backup with rotation, see Weblate back-uppen en verplaatsen.

  • Ensure Weblate uses a properly configured reverse proxy (e.g., NGINX) with HTTPS (TLS 1.2+).

  • Enable 2FA for all admin-level accounts.

  • Houd de Weblate instantie en zijn afhankelijkheden (Python, Django, Celery, database, etc.) up-to-date.

  • Integreer met SIEM-systemen met het protocol GELF voor het auditten en doorsturen van logs van de toepassing.

Identificatie

  • Monitor systeem en toepassingslogs (journalctl, logs van de omgekeerde proxy, logs van de toepassing Weblate en de audit).

  • Analyseer gebeurtenissen voor inloggen, het uitvoeren van webhooks en falen van push/pull.

  • Configure alerting (via Prometheus, Zabbix, or SIEM) for multiple login failures, unexpected restarts, or irregular VCS actions.

Afzonderen

  • Forensic Preservation: For Category 1 or 2 incidents, create a manual Hetzner Cloud Snapshot before taking disruptive action.
    • Name format: IRP-[CaseID]-[YYYYMMDD]-Evidence.

    • These are separate from standard rotating backups and must be preserved for analysis.

  • Beperk tijdelijk de toegang (bijv. via regels voor firewall of isoleren van service).

  • Schakel externe integraties uit (Git/webhooks) als ze deel uitmaken van het aangevallen gebied.

  • Schors betrokken gebruikers onmiddellijk.

Uitroeien

  • Verwijder alle niet geautoriseerde code of gegevens.

  • Herstel bekende kwetsbaarheden door Weblate of serveronderdelen te upgraden.

  • Valideer binaire en integriteit van de opslagruimte met SHA-256 controlesommen of Git-logs.

Herstel

  • Restore affected services or data from the latest known-good Weblate backups.

  • PII Assessment: DPO determines if the breach requires a 72-hour GDPR notification.

  • Introduceer de services opnieuw in een gefaseerde benadering.

  • Monitor logs en het systeemgedrag doorlopend gedurende ten minste 72 uur na het herstel.

Nakijken na het incident

  • Timeline: Hold a review meeting within 5 business days of incident closure.

  • Stel een volledige tijdlijn voor het incident en de genomen acties samen.

  • Perform Root Cause Analysis (RCA) and document it within 10 business days.

  • Update security policies and IRP documentation based on findings.

  • Kijk de effectiviteit van de mechanismen voor detectie en afzondering na.