Weblate dreigingsmodel¶
Project Weblate
Last reviewed for Weblate 2026.9.1 at commit 8283fcad69f.
Date: 2026-09-01.
Status: Accepted, 2026-09-01.
Versiebinding: Dit model is geversioneerd met uitgaven van Weblate. Een rapport voor Weblate versie N is getriageerd tegen het model dat is gepubliceerd voor versie N, niet tegen dat van de laatste ontwikkelbranch. (maintainer)
Rapporteren van kruisverwijzing: Rapporten die een eigenschap schenden die Weblate claimt in Security properties Weblate provides worden gerapporteerd met SECURITY.md en Kwetsbaarheid en incidentafhandeling. Rapporten die vallen onder Out of scope of Security properties Weblate does not provide kunnen worden gesloten door dit document aan te halen, tenzij dit model ze routeert naar VALID-HARDENING. (documented) (source: Kwetsbaarheid en incidentafhandeling)
Legenda herkomst: *(gedocumenteerd)* betekent dat de claim is vermeld in de documentatie van Weblate; *(beheerder)* betekent dat het werd vermeld door een beheerder gedurende het proces voor dit threat-model; *(afgeleid)* betekent dat de reden komt uit de huidige projectvorm en bevestiging van de beheerder nodig is.
Provenance summary: 118 documented / 70 maintainer / 0 inferred claims.
Weblate is een op Django gebaseerd webvertaalplatform. Het accepteert werk van gebruikers van de browser, API-cliënten, tokens in het projectbereik, webhooks van opslagruimten, VCS-opslagruimten, back-uparchieven, werkers op de achtergrond en geconfigureerde externe services, en slaat dan vertaalprojecten op en synchroniseert die met een database, gegevensopslag, opslagruimten op het lokale bestandssysteem en externe systemen voor hosten van code. (documented) (source: Weblate documentatie, Weblate REST API, Doorlopende vertaling)
Bereik en bedoeld gebruik¶
Onderdeelfamilie |
Representatief oppervlak |
Effecten buiten het proces |
Modelstatus |
|---|---|---|---|
Web UI en REST API |
Browserweergaven, formulieren, sessie eindpunten, Weblate REST API |
Database, gegevensopslag, e-mail, logs, geüploade bestanden |
In bereik. (documented) (source: Weblate REST API, Instructies voor configureren) |
Vertaalmetrieken per project |
|
Gelezen database- en statistieken-cache, inclusief mogelijke lazy cache-vulling |
In bereik als alleen-lezen publieke API. Niet-geauthenticeerde aanroepers kunnen publieke projecten bevragen; private projecten en beperkte onderdelen blijven gefilterd op rechten. (documented) (source: Weblate REST API, Toegangsbeheer) |
Opgeslagen vertaalrapporten |
Rapportformulieren en |
Snapshots database en taken op de achtergrond |
In scope as authenticated, permission-checked contributor data with operator-configured retention. The selected report scope is the authorization boundary, including private projects and restricted components below it. (documented) (source: Rapporteren voortgang vertaling, Weblate REST API) |
Authenticatie, sessies en autorisatie |
Inloggen, 2FA, SSO, teams, rechten, toegang tot project, API-tokens |
Database, identiteitsproviders, browsercookies |
In bereik. (documented) (source: Authenticatie, Toegangsbeheer) |
API-tokens in bereik project |
Tokens gemaakt in project API-toegang |
Dezelfde effecten voor toepassing als die welke de rechten voor het token toestaan |
In bereik als geauthenticeerde medewerkenden met gedelegeerd bereik project. (documented) (source: Weblate REST API, Toegangsbeheer) |
Webhaken |
Notificatie-hooks, project Hooks inschakelen, App-webhaak URL |
Achtergrondtaken plannen en bijwerken VCS-opslagruimte |
In bereik als een publieke, uitrol-verharde interface. (documented) (source: Notificatie-hooks, Hooks inschakelen, App-webhaak URL) |
Integratie VCS |
Repository URLs, branches, pushes, pulls, merge requests, local clones, and GitHub App registration, connections, component migration, and removal |
Filesystem, child VCS commands, SSH/HTTPS network connections, and provider repository or installation state |
In bereik indien bereikbaar door configuratie van Weblate of projectinhoud. (documented) (source: Doorlopende vertaling, Integraties codehosten) |
Achtergrondtaken |
Celery queues for repository updates, project deletion, notifications, translation memory, translation, and backups |
Database, gegevensopslag, bestandssysteem, uitgaand netwerk |
In scope as Weblate-controlled execution of user or operator actions. (documented) (source: Instructies voor configureren, Weblate REST API) |
Projectback-up importeren/exporteren |
Projectniveau back-ups, Weblate REST API projectback-up eindpunten, |
Geüploade ZIP-archieven, gegenereerde back-uparchieven, herstellen bestandssysteem, status opslagruimte |
In bereik. (documented) (source: Weblate back-uppen en verplaatsen, Weblate REST API, Opdrachten voor beheer) |
Service back-up |
Configuratie BorgBackup en |
Lokale opslag of opslag back-up op afstand over bestandssysteem of SSH |
In bereik voor Weblate’s afhandeling van geconfigureerde taken voor back-up; Borg zelf ligt buiten het bereik. (documented) (source: Weblate back-uppen en verplaatsen, Opdrachten voor beheer) |
Machinevertaling en uitgaande integraties |
Machine translation, avatars, status reporting, telemetry, error reporting, VCS hosts, GitHub App connections, CDN add-on, Fedora Messaging add-on, e-mail delivery (SMTP or AWS SES) |
Uitgaand HTTP(S), AMQP(S),provider-API’s, logs |
In bereik voor Weblate’s afdwingen van geconfigureerde toegang en beperkingen voor netwerk. Providergedrag ligt buiten het bereik. (documented) (source: Configuratie, Integraties codehosten, Add-ons) |
Add-ons |
Ingebouwde add-ons en door beheerde geconfigureerde uitvoering van add-on |
Varies by add-on; can mutate project or repository state or contact services |
Ingebouwde add-ons liggen in het bereik indien ingeschakeld. Add-ons van derde partijen liggen buiten het bereik, behalve voor Weblate’s poorten voor rechten en installeren. (maintainer) |
Opdrachten voor beheer |
Opdrachten weblate, uitgevoerd door een operator |
Database, bestandssysteem, VCS, opslag back-up |
In bereik bij het verwerken van niet-vertrouwde gegevens van Weblate; de shell van de lokale operator wordt vertrouwd. (maintainer) |
Testen, gemaakte documenten, schermafdrukken, bevestigingen voor ontwikkeling |
|
Bestanden alleen-ontwikkelen en gemaakte artefacten |
Buiten bereik voor claims voor productbeveiliging. (maintainer) |
The local application QA profile runs development Weblate and workers with known development credentials. Its application and mailbox ports are dynamically allocated and bound to IPv4 loopback; PostgreSQL, Valkey, and SMTP are not published. Test and application profiles use separate storage and networks within a checkout-specific Compose project. Worktrees still share host Git metadata and the Docker daemon: this provides development-state separation, not a boundary against a malicious checkout or local user. This profile is not a supported production deployment. (maintainer)
De bedoelde uitrol is een Weblateinstallatie aan de zijde van de server, achter een webserver of omgekeerde proxy, met een toepassingsserver WSGI of ASGI, PostgreSQL-database, gegevensopslag, Celerywerkers, een te beschrijven map en optioneel uitgaande VCS, back-up, identiteits-provider en integraties voor machinevertaling. (documented) (source: Instructies voor configureren)
De modi voor uitrollen WSGI en ASGI geven hetzelfde oppervlak weer voor Django voor HTTP-requesten en vertrouwen op dezelfde reverse-proxy besturingselementen. Uitrol van ASGI voegt geen interface voor WebSocket toe. (documented) (bron: Voorbeeldconfiguratie om Granian op te starten met ASGI)
De relevante acteurs zijn gesplitst op niveau van vertrouwen: niet-geauthenticeerde cliënten, geauthenticeerde gebruikers, beoordelaars, projectbeheerders, beheerders, API-tokens in projectbereik, afzenders van webhaken, externe VCS-providers, geconfigureerde externe services en lokale operators. (documented) (source: Toegangsbeheer, Weblate REST API)
Weblate is niet bedoeld om te worden ingebed als een in-proces beveiligingsbibliotheek, te worden gebruikt als een zandbak voor niet-vertrouwde code, of te worden weergegeven zonder de besturingselementen voor uitrol die zijn gedocumenteerd voor gebruik in productie. (maintainer)
Buiten bereik¶
Het volgende zijn expliciete niet-doelen voor dit model:
Een gecompromitteerd account voor het besturingssysteem, container runtime, databaseserver, gegevensopslag, omgekeerde proxy of shell van de beheerder. Weblate wordt binnen deze grenzen uitgevoerd en claimt niet zichzelf te beschermen tegen een reeds gecompromitteerde host. (maintainer)
Een kwaadwillende beheerder van een site van Weblate of lokale operator met onbeperkte toegang tot de server. Een dergelijke acteur kan wijzigingen, inloggegevens, gegevens of code wijzigen. (maintainer)
Kwetsbaarheden in afhankelijkheden van derde partijen als onafhankelijke projecten. Algemene kwetsbaarheden voor Django, Django REST framework, Python Social Auth, BorgBackup, VCS, database en provider worden upstream gerapporteerd, tenzij het probleem ligt in het gebruik door Weblate ervan. (documented) (source: Kwetsbaarheid en incidentafhandeling)
Hygiëne voor bouw en uitgave, inclusief vastzetten van acties, ondertekenen van artefacten, frisheid van afhankelijkheden en beveiliging van branches van de opslagruimte. Deze beïnvloeden bewerkingen van het project, maar zijn geen claims voor bedreigingsmodellen over het runtimegedrag van Weblate. (maintainer)
Algemene beveiliging van externe VCS-providers, identiteitsproviders, mailservers, services voor machinevertaling, avatarservices, CDN-opslag of opslag van back-up. Weblate modelleert alleen zijn geconfigureerde interacties ermee. (maintainer)
Keuzes voor de keten voor het indienen van vertalingen door gebruikersorganisaties buiten Weblate. Uitbestede of crowdsourced vertalerrisico’s worden afzonderlijk beschreven in Vertalen bedreigingen model. (documented) (source: Vertalen bedreigingen model)
Code voor derde partij add-on, lokale aangepaste code, ontwikkelbevestigingen, uitvoer van gemaakte documentatie, code voor alleen-testen en demo- of voorbeeldgegevens. (maintainer)
Grenzen van vertrouwen en gegevensstroom¶
Weblate’s primaire grens van vertrouwen is de op het netwerk gerichte toepassingsoppervlak: browserweergaven, API-eindpunten, webhookeindpunten en uploadeindpunten accepteren gegevens van minder vertrouwde acteurs en vertalen die naar databaserijen, status van de lokale opslagruimte, achtergrondtaken, uitgaande verzoeken en gerenderde UI. (maintainer)
Grens |
Transitie vertrouwen |
|---|---|
Cliënt browser/API-cliënt naar Weblate |
Niet vertrouwde of geauthenticeerde verzoeken worden acties waarvan de rechten door de toepassing worden gecontroleerd. (documented) (source: Weblate REST API, Toegangsbeheer) |
Weblate request process to repository Celery worker |
Permission-checked browser and API repository actions become queued work carrying the initiating user and affected repository scope. The worker reacquires the datastore reservation and rechecks the user’s current VCS permission across the current linked-component scope before mutation. The broker, datastore, and workers are trusted parts of the same Weblate instance. (maintainer) |
Afzender webhaak naar Weblate |
Publieke vervalste notificaties kunnen synchroniseren van de opslagruimte plannen als hooks zijn ingeschakeld, waarbij onderdelen worden gematcht door een exacte opslagruimte-URL in plaats van een host- of padachtervoegsel als terugvaloptie. Antwoorden voor algemene hooks geven tellingen weer en, voor bijgewerkte onderdelen, project-/onderdeelsslugs en API-URL’s, inclusief voor private projecten en beperkte onderdelen. Onderdelen die worden beheerd door een geauthenticeerde integratie zijn uitgesloten voor het algemene overeenkomen en diagnostiek; momenteel is dat van toepassing voor het VCS backend GitHub-app. Geregistreerde GitHub -app-webhooks authenticeren met een per-app URL-token en GitHub-handtekeningverificatie. Opt-in verouderde GitHub App levert authenticatie aan de algemene GitHub webhaak met een afzonderlijk geconfigureerd geheim wachtwoord. (documented) (source: Notificatie-hooks, Hooks inschakelen, Matchen van webhook-doelen, App-webhaak URL, |
Weblate naar database/gegevensopslag |
Status van de rechten controlerende toepassing wordt persistente gegevens en werk voor de wachtrij. (documented) (source: Instructies voor configureren) |
Weblate naar lokale VCS-opslagruimten |
Projectconfiguratie en inhoud schijfbestandssysteem voor opslagruimte en VCS-bewerkingen. (documented) (source: Doorlopende vertaling) |
Weblate naar externe services |
Geconfigureerde URL’s, inloggegevens en providerinstellingen voor uitgaande netwerkverbindingen van de schijf. (documented) (source: Integraties codehosten, Configuratie) |
Projectback-uparchieven en Weblate bestandssysteem |
Geüploade ZIP-leden en metadata worden herstelde status project; gegenereerde projectback-ups worden geschreven naar en gelezen vanuit lokale opslag van de back-up. (documented) (source: Weblate back-uppen en verplaatsen, Weblate REST API, Projectniveau back-ups) |
Vooraf gestelde voorwaarden voor bereikbaarheid:
Een web-UI of API-uitkomst staat alleen in het model als het bereikbaar is via een niet-geauthenticeerde cliënt, geauthenticeerde gebruiker of token in het bereik project via gedocumenteerde routes, formulieren of API-eindpunten. (maintainer)
Een bevinding voor projectmetrieken staat in het model als het antwoord een project of onderdeel bevat en de aanroeper heeft geen toegang tot, of geeft gegevens weer buiten het gedocumenteerde onderdeel en taalidentificatie, samengevoegde vertaalstatistieken en bijgewerkte tijdstemepels voor statistieken. Niet-geauthenticeerde toegang tot deze samenvoegingen voor publieke projecten is met opzet zo. (documented) (bron: Weblate REST API, Toegangsbeheer)
Een uitkomst voor authorisatie staat alleen in het model als het kruist met een gedocumenteerd recht, team, project, onderdeel, taal, woordenlijst, token of sitebrede grens. (documented) (source: Toegangsbeheer)
Een uitkomst voor een webhaak staat alleen in het model als een verzoek een ingeschakeld eindpunt voor de webhaak kan bereiken en planning van bijwerken van de opslagruimte, taak voor volume of aan de aanvrager teruggegeven informatie kan beïnvloeden tot voorbij de overeenkomende gedocumenteerde diagnostiek. (documented) (source: Notificatie-hooks, Hooks inschakelen, Matchen van webhook-doelen)
Een uitkomst voor een VCS staat alleen in het model met door aanvallers beheerde of minder vertrouwde gegevens voor de opslagruimte, branchnamen, URL’s, bestandsnamen, indienen metadata, of projectconfiguratie Weblate’s VCS-bewerkingen kan beïnvloeden. (maintainer)
Een uitkomst voor importeren van back-up staat alleen in het model als het bereikbaar is vanuit een projectback-up die is geüpload via Weblate of is aangeboden bij
import_projectbackup. (documented) (source: Projectniveau back-ups,import_projectbackup)Een uitkomst voor exporteren van back-up staat alleen in het model als het bereikbaar is vanuit gedocumenteerd projectback-up maken of downloadroutes, inclusief de REST API voor gebruikers of tokens in het bereik project met rechten voor bewerken van het project. (documented) (source: Weblate REST API, Projectniveau back-ups, Toegangsbeheer)
Een uitkomst voor een achtergrondtaak staat alleen in het model als de taak kan worden geplaatst in een wachtrij uit een oppervlak van Weblate in het bereik of gepland onderhoudspad voor Weblate. (documented) (source: Instructies voor configureren)
A stored-report finding is in model when an authenticated user can generate, list, or render contributor data outside the current authorized scope. Creator access applies only to reports containing the creator’s own data (
own_data=True) and still requires current access to the selected scope. Full reports require currentreports.viewpermission even for their creator. (documented) (source: Rapporteren voortgang vertaling, Weblate REST API)Een bevinding over een gebruikersprofiel API staat in een model als een geauthenticeerde gebruiker de voorkeuren voor een gebrukersprofiel van een ander gebruiker kan lezen of bewerken buiten de gedocumenteerde
user.view,user.edit, of grenzen voor de zelf-service. (documented) (source: Weblate REST API, Gebruikersprofiel)Een uitkomst voor een opdracht van beheer staat alleen in het model als niet-vertrouwde gegevens van Weblate door de opdracht worden verwerkt; willekeurige toegang via de lokale shell is geen mogelijkheid voor een aanvaller. (maintainer)
Aannames over omgeving¶
Weblate gaat uit van een ondersteunde runtime van Python en Django, een correct geconfigureerde database, een gegevensopslag, een te beschrijven map voor gegevens en uitvoeren van werkers die verwerken op de achtergrond vereisen. (documented) (source: Instructies voor configureren)
Van uitrollen voor productie wordt verwacht de externe webserver of omgekeerde proxy consistent te configureren met Weblate’s instellingen voor HTTPS, host header, body-size en proxy-header. (documented) (source: Instructies voor configureren, ENABLE_HTTPS, ALLOWED_HOSTS)
Van de database, gegevensopslag en interne servicepoorten wordt aangenomen dat ze niet direct worden weergegeven aan niet-vertrouwde netwerken. (maintainer)
Van rechten voor het bestandssysteem wordt aangenomen dat het voorkomt dat niet-gerelateerde lokale gebruikers Weblate’s gegevensmap, configuratie, VCS-opslagruimten, gemaakte SSH-wrappers, back-ups en geheim materiaal aanpassen. (documented) (source: Weblate back-uppen en verplaatsen, Instructies voor configureren)
Celery-werkers zijn vertrouwde onderdelen van dezelfde instantie van Weblate. Een kwaadaardige of gecompromitteerde werker is equivalent aan een gecompromitteerd proces van de toepassing. (maintainer)
Docker’s combined, split, and single Celery worker modes change how task queues
and concurrency are distributed among worker processes. (documented) (source:
CELERY_WORKER_MODE) These modes do not create security isolation
between queues; every worker retains the same trusted application authority.
Resource contention, throughput, and task latency differences between modes are
deployment-sizing and availability concerns. (maintainer)
Van het uitvoeren van opdrachten voor VCS, SSH en HTTPS-cliënten wordt aangenomen dat ze worden uitgevoerd door de Weblate servicegebruiker met de inloggegevens die zijn geconfigureerd voor het relevante project of integratie, inclusief in de database opgeslagen inloggegevens voor GitHub-app die worden gebruikt voor installatietokens en verifiëren van handtekeningen voor webhooks. (documented) (source: Integraties codehosten, SSH_EXTRA_ARGS)
Wat Weblate met zijn host doet:
Het opent uitgaande netwerkverbindingen voor geconfigureerd VCS, identiteitsprovider, avatar, machinevertaling, back-up, statusrapporten, telemetrie, fouten rapporteren en mogelijkheden voor add-ons, zoals uitgaande webhaken en aflevering van Fedora Messaging AMQP. (documented) (source: Configuratie, Integraties codehosten, Weblate back-uppen en verplaatsen)
Het voert VCS- en aan back-up gerelateerde hulpopdrachten uit als deel van de opslagruimte en werkstromen voor back-ups. (documented) (source: Doorlopende vertaling, Weblate back-uppen en verplaatsen)
Het schrijft naar de geconfigureerde gegevensmap, opslagruimte, media/lettertypen, dumps van back-ups, logs en cachelocaties. (documented) (source: Configuratie, Weblate back-uppen en verplaatsen)
It sends e-mail and notifications when configured to do so. When
django_ses.SESBackendis selected, outbound e-mail is delivered over HTTPS to the configured AWS SES regional endpoint (email.<region>.amazonaws.comby default, overridable viaWEBLATE_AWS_SES_REGION_ENDPOINT); the endpoint is operator-controlled trusted infrastructure and is not subject to private-target restrictions. (documented) (source: Configuratie, Installeren met Docker)Het claimt niet vrij te zijn van procesbrede effecten, zoals loggen, schrijven naar cache, uitvoeren van subproces of uitgaande netwerktoegang. (maintainer)
Bouwtijd en varianten configuratie¶
Knop |
Standaard of gedocumenteerde houding |
Effect op het model |
Standpunt onderhouder |
|---|---|---|---|
Anonieme haken op afstand zijn te configureren en moeten ook zijn ingeschakeld voor een project. (documented) |
Geeft eindpunten van webhaken weer als een publieke interface voor planning. Tegenmaatregelen voor misbruik zijn afhankelijk van uitgerolde besturingselementen. (documented) (source: Notificatie-hooks, Hooks inschakelen) |
Uitrollen voor productie geven haken weer voor limieten voor omgekeerde proxy, limieten voor body-size, monitoren en minimale publieke weergave. (maintainer) |
|
|
HTTPS beïnvloedt beveiligde cookies, verwijzingen, HSTS, WebAuthn en gegenereerde URL’s. (documented) (source: |
Uitschakelen of foutief configureren van HTTPS verwijdert beveiligingen voor transport en cookies waarop Weblate vertrouwt voor beveiliging van de browser. (documented) (source: |
De gedocumenteerde houding voor productie is HTTPS met de juiste proxy-headers. (documented) |
Configureert geaccepteerde HTTP-hostnamen. (documented) (source: |
Breed accepteren van host kan de hostgebaseerde beveiligingen en aannames voor het maken van URL’s verzwakken. (maintainer) |
Uitrollen voor productie beperken dit tot hostnamen voor de instantie. (maintainer) |
|
Docker defaults to one combined prefork worker for all queues. Split mode uses queue-specific workers, while single mode uses one solo worker. (documented) (source: Installeren met Docker) |
Changes worker process topology, concurrency, and queue contention, but not worker trust or application authority. (maintainer) |
Queue-specific workers provide operational isolation and independent tuning, not a security boundary. Operators choose a mode based on memory, capacity, and availability requirements. (maintainer) |
|
|
Ladinglimieten zijn te configureren. (documented) (source: Weblate REST API, Configuratie) |
Claims voor beschikbaarheid gaan uit van ladinglimieten die toepasselijk zijn voor grootte en weergave van de uitrol. (maintainer) |
Uitschakelen van ladinglimieten wijzigt DoS-triage vanuit de Weblate-bug voor de houding van de uitrol, tenzij een enkel verzoek een geclaimde eigenschap schendt. (maintainer) |
|
Bronnen voor Content Security Policy zijn te configureren. (documented) (source: Configuratie) Het standaardbeleid voor scripten staat inregelige uitvoering alleen toe voor expliciete compatibiliteitspaden in het bereik. (maintainer) |
Uitbreiden van de bronnen kan de beperking aan de zijde van de browser verkleinen voor XSS of inhoud van derde partijen. (maintainer) |
Uitrollen die bronnen van derde partijen toevoegen, accepteren dat uitgebreide vertrouwen voor de browser. (maintainer) |
|
Standaard gebonden grootte voor projectback-up uploaden en importeren, tellen van leden en verdachte compressieverhoudingen. (documented) (source: Configuratie) |
Verhogen of uitschakelen van deze limieten vergroot het weergeven van hersteltijd voor de bron. (documented) (source: Configuratie) |
De hierboven vermelde standaarden maken deel uit van de brongaranties voor back-up importeren. (documented) |
Private-doelbeperkingen en toegestane lijsten voor uitgaande URL’s |
Door gebruiker te configureren uitgaande URL-oppervlakten, gedocumenteerd met instellingen voor beperkingen van private doelen, weigeren standaard interne of niet-publieke doelen. (documented) (bron: |
Allowlist settings and privileged configuration can intentionally expand
reachability. A non-empty |
Standaard weigeren van private-doel is een beveiligingseigenschap op toepassingsniveau voor de gedocumenteerde door gebruikers te configureren URL-oppervlakken. (maintainer) |
Aangepaste opties voor SSH toestaan. (documented) (source: |
Verzwakken van SSH-algoritmes of hostverificatie wijzigt de aannames voor VCS-transport. Opties voor routeren kunnen vastgezette beveiligde adressen van opslagruimten overschrijven. (maintainer) |
Operators zijn eigenaar van de invloed op de beveiliging van aangepaste opties voor SSH. (maintainer) |
|
AWS SES e-mail backend |
Activated by setting |
Weblate opens an outbound HTTPS connection to the configured SES regional endpoint to deliver e-mail. AWS credentials are read from the boto3 credential chain (environment variables, IAM role, or credential file). The SES endpoint and credentials are operator-controlled trusted infrastructure. (maintainer) |
Operators are responsible for securing AWS credentials, choosing an appropriate SES region and endpoint, and ensuring that the boto3 credential chain does not expose credentials beyond the intended scope. (maintainer) |
Derde partij add-ons en lokale aanpassing |
Beheerders kunnen gedrag uitbreiden. (documented) (source: Add-ons) |
Aangepaste code kan nieuwe grenzen voor vertrouwen en beveiligingseigenschappen toevoegen buiten dit model. (maintainer) |
Code van derde partijen wordt afzonderlijk gemodelleerd. (maintainer) |
Aannames voor invoer¶
Oppervlak |
Invoer |
Door aanvaller te beheren? |
Aanroeper of operator moet afdwingen |
|---|---|---|---|
Browserformulieren en REST API |
Bloktekst verzoeken, tekenreeksen query, geüploade bestanden, headers, cookies |
Ja, binnen de status van authenticatie van de acteur. (documented) (source: Weblate REST API) |
HTTPS, correcte configuratie host/proxy, ladinglimieten en toewijzen van rechten. (documented) (source: Instructies voor configureren, Toegangsbeheer) |
Authenticatie-eindpunten |
Wachtwoorden, gegevens WebAuthn, callbacks SSO, tokens herstellen |
Ja. (documented) (source: Authenticatie) |
Correcte configuratie identiteitsprovider en HTTPS. (documented) (source: Authenticatie, |
Tokens bereik project |
API-verzoeken geauthenticeerd door token |
Ja, door degene van wie het token is. (documented) (source: Weblate REST API) |
Opslag token, rotatie en minste-privilege teamlidmaatschap. (maintainer) |
Inhoud vertaling |
Brontekenreeksen, vertalingen, opmerkingen, suggesties, items voor woordenlijsten; verzoeken voor de suggestie-API bevatten tekst |
Ja, van gebruikers met relevante rechten of geïmporteerde opslagruimten. (documented) (source: Vertalen met Weblate, Toegangsbeheer) |
Werkstromen beoordelen voor integriteit van projectspecifieke inhoud; goedkeuren van een suggestie via de API vereist aanvullend dat aan het controleren van het recht |
Gebruikersprofiel API |
Genest object |
Ja, voor geauthenticeerde gebruikers die hun eigen profiel bijwerken of acteurs met |
Wijs |
Webhook-eindpunten |
Headers, type gebeurtenis, bloktekst, metadata opslagruimte en branch |
Ja, waar het eindpunt bereikbaar is. (documented) (source: Notificatie-hooks) |
Alleen haken inschakelen waar nodig, verzoeken beperken en monitoren. (maintainer) |
GitHub App lifecycle |
Registration and installation callbacks, GitHub OAuth code, signed Weblate state, installation ID, account metadata, component migration selections, and connection-removal requests |
Yes, from authenticated Weblate users and GitHub redirect query strings. (documented) (source: Registreren van de GitHub-app vanuit Weblate, Migrating existing components) |
Registering App credentials requires the site-wide
|
Configuratie opslagruimte |
Repository URLs, branches, push URLs, credentials, Gerrit review push options, add-on settings, and Parameters versiebeheer controlling force pushes and pull-request behavior |
Vertrouwd voor gebruikers met corresponderende rechten voor beheren. (documented) (source: Toegangsbeheer, Doorlopende vertaling) |
VCS toewijzen en rechten voor beheren van project alleen voor vertrouwde gebruikers. (documented) (source: Toegangsbeheer) |
Externe inhoud opslagruimte |
Vertaalbestanden, branchnamen, metadata indienen |
Ja, als de opslagruimte upstream wordt beheerd door een andere acteur. (maintainer) |
Vertrouw de geconfigureerde opslagruimte upstream of beoordeel geïmporteerde wijzigingen. (maintainer) |
Projectback-up importeren |
Leden ZIP-archief, metadata, vertaalbestanden, status opslagruimte |
Ja, voor iedereen die de back-up kan uploaden of verschaffen. (documented) (source: Projectniveau back-ups) |
Houd limieten voor importeren toepasselijk voor de instantie. (documented) (source: Configuratie) |
Projectback-up exporteren |
Verzoeken voor maken van back-ups en verzochte bestandsnamen voor back-ups |
Ja, voor gebruikers of tokens in het bereik project met rechten voor bewerken van project. (documented) (source: Weblate REST API, Projectniveau back-ups, Toegangsbeheer) |
Geef rechten voor bewerken van project alleen aan vertrouwde projectbeheerders. (documented) (source: Toegangsbeheer) |
Machinevertaling en configureren externe service |
URL’s voor providers, inloggegevens, instellingen voor model of service |
Vertrouwd voor beheerders of gebruikers die rechten voor configuratie hebben. (documented) (source: Automatische vertalingen, Toegangsbeheer) |
Behandel geconfigureerde providers als ontvangers van de aan hen verzonden gegevens; de ingediende inhoud varieert per provider en ingeschakelde mogelijkheid. (maintainer) |
Opdrachten voor beheer |
Argumenten voor de opdrachtregel en bestanden verschaft door de lokale operator |
Vertrouwde lokale invoer, tenzij het verwerken van gegevens van Weblate of projectback-ups. (maintainer) |
Beperk toegang van shell tot vertrouwde operators. (maintainer) |
Aannames voor grootte en hoeveelheid:
Weblate vertrouwt op uploadlimieten voor toepassing en omgekeerde proxy voor grote HTTP-verzoeken. (documented) (source:
PROJECT_BACKUP_UPLOAD_MAX_SIZE)Projectback-up importeren is gebonden aan het tellen van leden, samengevoegde niet-gecomprimeerde grootte, gecomprimeerde invoergrootte, minimale verhoudingsgrootte en instellingen voor compressieverhouding. (documented) (source: Configuratie)
Metadata voor projectback-up, objectverwijzingen, paden voor opslagruimten, uitgaande URL’s, reguliere expressies en inhoud van schermafdrukken worden gevalideerd voordat het herstellen de status van het project schrijft. Mislukte herstellingen verwijderen objecten voor opslagruimten en media die door die poging worden gemaakt. (documented) (bron: Projectniveau back-ups)
Van API en geselecteerde webacties wordt verwacht dat ze worden beveiligd door geconfigureerde limieten voor de hoeveelheid. (documented) (source: Weblate REST API, Configuratie)
Antwoordgrootte van projectmetrieken en verzoeken om werk schalen met het aantal zichtbare onderdelen en vertalingen en met de status statistieken-cache. Ontbrekende cache kunnen vertaalstatistieken berekenen en opslaan. Het eindpunt vertrouwd op standaard limietaantallen voor de API en grootte van uitrol in plaats van op een afzonderlijke vaste limiet voor de projectgrootte. (documented) (bron: Weblate REST API, Configuratie)
Grootte opslagruimte, aantal projecten, aantal onderdelen en werkercapaciteit zijn dingen van belang voor grootte van uitrollen, tenzij een enkele binnen bereik-invoer gedocumenteerde limieten of rechten omzeilt. (maintainer)
Tegenspeler model¶
Acteur |
Mogelijkheden binnen bereik |
Mogelijkheden buiten bereik |
|---|---|---|
Niet-geauthenticeerde internetcliënt |
HTTP(S)-verzoeken verzenden naar publieke pagina’s, registratie, inloggen, API en bereikbare indpunten voor webhaken. (documented) (source: Weblate REST API) |
Servergeheugen lezen, beheer van omgekeerde proxy omzeilen of directe toegang tot interne services. (maintainer) |
Geauthenticeerde gebruiker |
Acties uitvoeren die zijn toegestaan voor aangewezen teams, rechten en werkstroom. (documented) (source: Toegangsbeheer) |
Optreden buiten toegewezen rechten zonder een zwakte in Weblate te exploiteren. (documented) (source: Toegangsbeheer) |
Beoordelaar of projectbeheerder |
Uitvoeren van gedelegeerde rechten voor project, onderdeel, taal, beoordelen, VCS, vertaalgeheugen, schermafdruk of toegangsbeheer. (documented) (source: Toegangsbeheer) |
Word sitebeheerder, tenzij die rol gerechtigd is, of exploiteer een zwakte in Weblate. (maintainer) |
API-tokenhouder in bereik project |
API-rechten gebruiken die zijn toegewezen aan teamlidmaatschappen voor het token, inclusief maken en downloaden van projectback-up waar rechten voor bewerken van het project zijn toegekend. (documented) (source: Weblate REST API, Toegangsbeheer, Projectniveau back-ups) |
Toegang tot projecten, onderdelen of sitebrede functies buiten het bereik. (documented) (source: Toegangsbeheer) |
Webhook-afzender |
Vervalste, herhaalde, misvormde of hoogvolume webhaakverzoeken sturen naar ingeschakelde haakeindpunten en overeenkomende gedocumenteerde diagnostiek bekijken. (documented) (source: Notificatie-hooks, Matchen van webhook-doelen) |
Vervalste geauthenticeerde identiteit verkrijgen waar Weblate die niet verifieert. (maintainer) |
Externe VCS- of serviceprovider |
Teruggeven gegevens opslagruimte, API-antwoorden, verwijzingen of fouten overeenkomstig de geconfigureerde integratie. (documented) (source: Integraties codehosten) |
Compromitteren van de host van Weblate, behalve door gedrag van gegevens of protocol van processen van Weblate. (maintainer) |
Bijdrager vertalen of vertaling |
Vertaalinhoud indienen die lagere toepassingen zouden kunnen consumeren. (documented) (source: Vertalen bedreigingen model) |
Beheer van lagere toepassing escapen, renderen of beleid voor beoordelen buiten Weblate. (documented) (source: Vertalen bedreigingen model) |
Lokale operator |
Beheeropdrachten uitvoeren, configuratie wijzigen en toegang tot back-ups. (documented) (source: Opdrachten voor beheer, Weblate back-uppen en verplaatsen) |
Lokale kwaadwillende operators worden voor dit model vertrouwd. (maintainer) |
De gemodelleerde aanvaller probeert autorisatie te omzeilen, zonder rechten vertalingen of gegevens in de opslagruimte aan te passen, private project -of gebruikersgegevens te onthullen, synchroniseren of misbruiken van de opslagruimte, onveilige uitgaande verzoeken te activeren, opdrachten uit te voeren via door Weblate beheerde werkstromen, of bronnen die met de toepassing zijn verbonden uit te putten. (maintainer)
Beveiligingseigenschappen die Weblate verschaft¶
Eigenschap |
Omstandigheden |
Symptoom schending |
Niveau ernst |
|---|---|---|---|
Webautorisatie scheidt rechten voor site, project, onderdeel, taal, woordenlijst, VCS, vertaalgeheugen, schermafdruk, beoordelen en toegangsbeheer. (documented) (source: Toegangsbeheer, Authenticatie, Vertaalgeheugen) |
Permission assignments match the intended trust relationship.
Team-level enforced 2FA is satisfied by human users before
team-derived permissions apply. Pending authenticator app registrations
do not satisfy 2FA requirements. Registration requires a valid TOTP code
and can be completed only once, including under concurrent submissions;
the registration code is consumed for subsequent authentication.
Each account can have at most one pending registration, shared across
browser sessions and expiring after 24 hours.
(documented) (source: Twee-factor authenticatie)
Component administrators are trusted to
configure operations that can affect repository contents, for example by
selecting files through component settings, configuring add-ons, or
enabling force pushes and pull-request behavior through Parameters versiebeheer.
Users with management rights for a workspace are trusted to connect and
remove its GitHub App installations; removing the final workspace
connection can uninstall the App from GitHub. GitHub App component
migration separately requires edit permission for every selected
component.
Linking a repository extends this trust to administrators of every
linked component for the complete shared checkout. Permissions for
explicit VCS actions cover every component sharing an affected
repository, including linked components in other projects. Project-wide
VCS actions omit repositories where this permission check fails; they do
not partially operate on an individual shared checkout. Explicit VCS
actions queued from the browser or API retain the initiating user,
serialize access to the affected repositories, and recheck that user’s
permission against the current linked-component scope in the worker
before mutation. Weblate’s normal background commit and push of
authorized translation changes does not require the editor to have
these VCS permissions. The |
Gebruiker of token kan gegevens lezen of muteren buiten toegewezen bereik. |
Beveiligingskritiek indien private gegevens of geprivilegieerde mutaties worden weergegeven. |
API-tokens in het bereik project zijn beperkt door toegewezen rechten voor project/team. (documented) (source: Weblate REST API, Toegangsbeheer) |
Token is gemaakt en opgeslagen door een vertrouwde acteur. |
Token kan buiten het bereik van project of team werken. |
Beveiligingskritiek. |
Authentication and session controls protect browser sessions when HTTPS
and proxy settings are correct. Pending second-factor sessions are bound
to the current password authentication state, and repeated rejected
second-factor submissions lock password sign-in according to
|
Productie-instellingen voor HTTPS en beveiligde cookie zijn ingeschakeld. |
Session fixation, credential bypass, cross-user session confusion, or a pending password sign-in remaining usable after a password change or account lock. |
Beveiligingskritiek. |
Van door de gebruiker verschafte inhoud, gerenderd door Weblate, wordt verwacht dat ze geen scripts uitvoeren in browsers van andere gebruikers. (maintainer) |
Inhoud wordt weergegeven door sjablonen van de UI van Weblate en standaard escapen. |
Opgeslagen of weergegeven XSS in de oorsprong van Weblate. |
Beveiligingskritiek. |
Invoer voor opslagruimte, branch, pad en VCS, die door Weblate wordt verwerkt, moet geen shell-opdracht uitvoeren. (maintainer) |
VCS operations are invoked through Weblate-supported repository workflows and configured credentials. Project backup restores allow only non-executable Git, git-svn, and Mercurial repository state, and rebuild repository-local configuration from validated component settings. Weblate does not populate Git submodules (see Submodules voor Git). |
Injecteren van opdrachten of willekeurig uitvoeren van code als de gebruiker Weblate. |
Beveiligingskritiek. |
Private project data other than documented generic webhook matching diagnostics and metadata published through Public sharing, user data, credentials, tokens, SSH keys, and 2FA secrets are not disclosed to actors lacking permission. (documented) (source: Toegangsbeheer, Conformiteit aan regelgeving voor privacy, Versiebeheerintegratie) |
Host, database, and storage permissions are intact. Generic webhook responses expose only the match counts, project/component slugs, and API URLs documented in Matchen van webhook-doelen. Public sharing permits unauthenticated access to engage pages and rendered status widgets, exposing project and component names, including restricted components, translation statistics, languages, and progress. It does not grant access to project content or APIs. Repository content deliberately shared through linked components follows the linked repository trust boundary. Project repository permission diagnostics expose the paths of linked components that prevent an operation, but do not expose their content or repository status. Custom add-ons list only non-sensitive fields as public configuration; unlisted values are redacted from public change history. |
Cross-project data leak not covered by the documented generic webhook diagnostics, public-sharing metadata, or linked-repository trust boundary, credential exposure, or unauthorized export. |
Beveiligingskritiek. |
Back-up importeren weigert archieven die de gedocumenteerde upload overschrijden, lid, samengevoegde grootte en verdachte drempels voor compressie. (documented) (source: Configuratie, Projectniveau back-ups) |
Standaarden of striktere limieten blijven geconfigureerd. |
Overmatig of sterk vergroot archief wordt geaccepteerd buiten de geconfigureerde drempels. |
Beveiligingskritiek voor enkel-verzoek DoS; anders probleem beschikbaarheid. |
Gedocumenteerde door gebruiker te configureren uitgaande URL-oppervlakken weigeren standaard interne of niet-publieke doelen. (documented) (source: |
Standaardcontroles voor private doelen zijn ingeschakeld en er is geen uitzondering van toepassing voor een vertrouwde lijst met toegestane waarden. Direct beveiligde http-verzoeken en Git https- en SSH-bewerkingen behouden adresbinding, VCS-beperkingen blijven ingeschakeld en VCS-backends zonder binding gebruiken alleen expliciet vertrouwde hosts. Geconfigureerde per-protocol-http-proxies behouden vertrouwde routering voor infrastructuur. |
Een door de gebruiker te configureren URL voor schermafdrukken, URL voor HTML op afstand, projectwebsite of browser-URL voor opslagruimte, uitgaande URL voor webhaak, of VCS-URL bereikt een intern of niet-publiek doel, ondanks de standaardcontroles. |
Beveiligingskritiek als het interne services of metadata weergeeft. |
Weblate records security-relevant account, permission, billing lifecycle,
authenticated web-action rate-limit lockouts, and project or component
setting changes in audit logs or history. Account-removal audit entries
retain the former e-mail address until |
Logging is configured, storage is available, and
|
Missing audit trail for an action Weblate claims to log, or personal data retained beyond the configured audit-log expiry. |
Security-critical when it blocks investigation of privileged changes or discloses retained personal data; privacy-impacting when data exceeds the configured retention; correctness-only for minor event gaps. |
Lading gelimiteerde API- en webacties dwingen geconfigureerde limieten voor lading af. (documented) (source: Weblate REST API, Configuratie) |
Limiteren van lading is ingeschakeld en gevolgd door een werkende opslag voor gegevens. |
Verzoeken overschrijden geconfigureerde drempels om door te kunnen gaan met verwerken. |
Beschikbaarheid/beveiliging verharden afhankelijk van gevoeligheid eindpunt. |
Built-in translation quality checks must not permit user-controlled content within configured size limits to monopolize synchronous request workers through disproportionate resource consumption. (maintainer) |
The check is enabled and runs during a supported browser or API translation write. |
A single accepted translation causes CPU or memory consumption disproportionate to its size and stalls a request worker. |
Beveiligingskritiek voor enkel-verzoek DoS; anders probleem beschikbaarheid. |
Algemene webhooks plannen opslagruimte updates alleen voor rechtmatige onderdelen van wie de opslagruimte-URL exact overeenkomt met een opslagruimte-URL in de lading, inclusief gedocumenteerde URL-varianten. Componenten die worden beheerd door een geauthenticeerde integratie zijn uitgesloten van algemeen overeenkomen en diagnostiek. Algemene antwoorden onthullen slechts de gedocumenteerde overeenkomende diagnostiek voor rechtmatige onderdelen. (documented) (bron: Matchen van webhook-doelen) |
Hooks zijn ingeschakeld en de bezorging bereikt een hook-eindput binnen bereik. |
Een aflevering werkt een onderdeel bij waarvan de opslagruimte-URL niet exact overeenkomt met de lading, inclusief door terugval op host- of padachtervoegsel, of een algemene aflevering werkt een onderdeel, dat wordt beheerd door een geauthenticeerde integratie, bij of onthult dat, of een antwoord onthult meer informatie over het onderdeel dan slechts de gedocumenteerde velden. |
Beveiligings-kritiek als het ongeauthorizeerde synchronizatie van opslagruimtes over ongerelateerde onderdelen veroorzaakt; anders correctheid of verharding. |
Weblate geeft niet met opzet database, gegevensopslag, opslag voor back-up of ruwe interne opslag direct weer via de publieke webinterface; geëxporteerde VCS-opslagruimten worden met opzet weergegeven door Git exporter als die optionele module is ingeschakeld; geautoriseerde downloads van projectback-ups worden opzettelijk weergegeven via gedocumenteerde routes voor projectback-ups. (documented) (source: Weblate REST API, Projectniveau back-ups) (maintainer) |
Uitrollen serveert geen interne opslagpaden als statische bestanden, behalve voor gedocumenteerde mogelijkheden voor exporteren. |
Publiek verzoek haalt ruwe interne opslag op, configuratie of niet-geëxporteerde gegevens uit de opslagruimte. |
Beveiligingskritiek. |
Drempels voor bronnen in dit model zijn gedocumenteerde standaarden voor configuratie waar ze bestaan, speciaal limieten voor importeren van back-ups en limieten voor ladingen. Voor grootte van opslagruimte, tellen van project, tellen van onderdeel en vertaalvolume, claimt Weblate geen vast universeel plafond voor de bronnen, onafhankelijk van de capaciteit voor uitrollen. (maintainer)
Component discovery is an exception: it stops after 100,000 repository paths or before performing more than 1,000,000 path-to-mask comparisons. These limits bound resource consumption when repository-controlled base files generate file masks. (maintainer)
Beveiligingseigenschappen die Weblate niet verschaft¶
Weblate authenticeert niet elke aflevering van een webhaak cryptografisch voor alle ondersteunde vervalste integraties. Haakeindpunten zijn compatibiliteit-georiënteerd en uitrol-verhard, in plaats van dat ze uniform vervalst-geauthenticeerd zijn. Rapporten die alleen niet-geauthenticeerd activeren laten zien binnen gemodelleerde effecten zijn VALID-HARDENING, anders dan BY-DESIGN. (maintainer)
Weblate maakt geen niet-geauthenticeerd equivalent van de webhaak naar een vertrouwde identiteit voor een forge. Verwerken van haken kan bijwerken van werkstromen activeren, en algemene antwoorden kunnen registreren van de opslagruimte bevestigen en overeenkomende tellingen, project-/onderdeelsslugs en API-URL’s, inclusief voor private projecten beperkte onderdelen, laten zien. Onderdelen die wordne beheer door een geauthenticeerde integratie zijn uitgesloten van dit algemene gedrag. Attributie en authenticiteit zijn zwakker dan voor een geauthenticeerde gebruiker of token. (maintainer)
Door de gebruiker verzocht werk op de achtergrond is geautoriseerd als Weblate het verzoek accepteert en in de wachtrij plaatst. Taken op de achtergrond verifiëren niet altijd opnieuw de rechten van de aanvragende gebruiker tegen de tijd dat ze uitgevoerd worden. Latere wijzigingen aan het account van de gebruiker, rechten, of teamlidmaatschap voorkomen dus niet betrouwbaar dat reeds geautoriseerd werk wordt voltooid. (maintainer)
Weblate is geen zandbak voor kwaadwillende beheerders, kwaadwillende operators, add-ons van derde partijen, aangepaste code voor uitrollen, VCS-cliënten of programma’s voor back-ups. (maintainer)
Weblate garandeert niet dat vertaalinhoud veilig is indien gekopieerd naar een lagergelegen product, zonder het eigen escapen, valideren of beoordelen van dat product. Vertaalcontroles en werkstromen voor beoordelen helpen de kwaliteit en risico van de vertaling te beheren; ze zijn geen volledige grens voor de beveiliging van de lagergelegen toepassing. (documented) (source: Vertalen bedreigingen model, Controles en reparaties)
Valse vrienden:
Rechten voor Weblate zijn autorisatie voor de toepassing, geen zandbak voor een host. Aan gebruikers gegeven rechten voor het beheren van VCS of project kunnen opzettelijk integraties configureren binnen de kracht van die rol. (maintainer)
Webhaakovereenkomsten voor project en parsen van gebeurtenissen zijn geen bewijs dat de afzender de legitieme bron is als de integratie de aflevering niet authenticeert. (maintainer)
Vertaalcontroles ontdekken veelvoorkomende problemen met kwaliteit en indeling; ze zijn geen garantie dat vertaalde tekenreeksen veilig zijn voor elke lagergelegen renderer. (documented) (source: Controles en reparaties, Vertalen bedreigingen model)
Versleuteling voor BorgBackup beschermt archieven voor back-ups overeenkomstig het ontwerp van Borg; Weblate voegt geen afzonderlijke cryptografische garantie toe voor internen van Borg. (documented) (source: Weblate back-uppen en verplaatsen)
Limieten voor lading verkleinen misbruik van geconfigureerde eindpunten; ze zijn geen garantie van beschikbaarheid onder volumetrische netwerkaanvallen. (maintainer)
Bekende achtergelaten hele of gedeeltelijke klassen van aanvallen voor uitrollen of lagergelegen systemen:
Phishing en hergebruik van inloggegevens wordt verminderd door beleid voor authenticatie en 2FA, maar Weblate kan niet voorkomen dat gebruikers inloggegevens onthullen buiten de service. (maintainer)
Kwaadwillende vertalingen kunnen XSS, tekenreeks voor opmaak, opdracht of beleidsproblemen in lagergelegen toepassingen worden die deze niet veilig renderen. (documented) (source: Vertalen bedreigingen model)
Door gebruiker te configureren uitgaande URL’s oppervlakken met gedocumenteerde beperkingen voor private-doel weigeren standaard interne of niet-publieke doelen; geprivilegieerde toegestane lijsten, proxy’s en een door beheerders beheerde configuratie kunnen bereikbaarheid opzettelijk uitbreiden. (maintainer)
Grote geschiedenissen van opslagruimte, projectschaal en volume van achtergrondtaken vereisen het op maat brengen van uitrollen en operationele limieten buiten het valideren van enkele-invoer van Weblate. (maintainer)
Lagergelegen verantwoordelijkheden¶
Operators moeten Weblate uitrollen achter productiegraads HTTPS met correcte proxy-headers, hostnamen, limieten voor grootte van verzoeken en gedrag van veilige cookies. (documented) (source: Instructies voor configureren, ENABLE_HTTPS, ALLOWED_HOSTS)
Operatoren die afhandeling voor doorgestuurde cliënt-IP hebben ingeschakeld, moeten alleen omgekeerde proxy’s vertrouwen die onder hun beheer staan en voorkomen dat niet-vertrouwde cliënten die proxy’s omzeilen om Weblate direct te bereiken. (documented) (source: WEBLATE_TRUSTED_PROXY_ADDRESSES, Uitvoeren achter een omgekeerde proxy)
Operators moeten teams toewijzen, rollen, tokens binnen het bereik project, inloggegevens voor VCS en rechten voor projectbeheer overeenkomstig het minste privilege voor hun organisatie. (documented) (source: Toegangsbeheer, Weblate REST API)
Operators die Notificatie-hooks weergeven moeten die alleen inschakelen waar nodig en uitrolbeheer verschaffen, zoals hoeveelheidslimieten voor omgekeerde proxy, limieten voor blokteksten, monitoren en optionele beperkingen voor bron. Ze moeten weergeven van de gedocumenteerde identificatie accepteren of, waar mogelijk, geauthenticeerde integraties gebruiken. (maintainer)
Operators moeten toegestane lijsten voor private-doel, proxy’s en instellingen voor geprivilegieerde uitgaande integratie behandelen als opzettelijke uitbreiding van de limieten van Weblate standaard netwerkbereikbaarheid. (maintainer)
Operators moeten limieten voor importeren van back-ups, limieten voor hoeveelheid API en limieten voor hoeveelheid web bijhouden op waarden die overeenkomen met de capaciteit van de instantie en de weergave. (documented) (source: Configuratie)
Operators moeten de gegevensmap van Weblate, configuratie, inloggegevens voor back-up, gemaakte sleutels, database, gegevensopslag en lokale toegang voor shell beveiligen als een vertrouwde infrastructuur. (documented) (source: Weblate back-uppen en verplaatsen, Instructies voor configureren)
Lagergelegen productteams moeten vertaalde tekenreeksen in hun eigen toepassingen behandelen als niet vertrouwde inhoud, tenzij ze deze afzonderlijk hebben beoordeeld, geëscapet en gevalideerd voor de doelrenderer. (documented) (source: Vertalen bedreigingen model)
Bekende patronen misbruik¶
Breed weergeven van eindpunten van webhaken, inschakelen van projecthaken en vertrouwen op ladingen van webhaken als geauthenticeerd vervalsen identiteit. Dat is niet veilig, omdat sommige ondersteunde haken compatibiliteit-georiënteerd zijn en overeenkomende diagnostiek teruggeven. Gebruik besturingselementen voor uitrol en bij voorkeur geauthenticeerde integraties waar beschikbaar. (maintainer)
Granting workspace, project, VCS, or access-management permissions to users who are trusted only as translators. This is unsafe because those permissions can affect code-hosting connections, repositories, credentials, or other users. Assign narrower roles. (documented) (source: Toegangsbeheer, Integraties codehosten)
Site-brede toestemmingen toewijzen aan rollen die bedoeld zijn voor gelimiteerde project- of helpdeskdelegatie. Site-brede toestemmingen gelden over de hele instantie en worden niet versmald door de projectselectie van een team. Met name
user.editstaat veranderen van teamlidmaatschappen en superuser status toe voor aanpasbare profielen, inclusief het eigen profiel. Delegeer toestemmingen via teams in project of werkruimte voor een kleiner toepassingsgebied. (gedocumenteerd) (bron: Toegangsbeheer)Verzenden van gevoelige brontekenreeksen of private klantinhoud naar providers voor machinevertaling zonder de provider te behandelen als een ontvanger van gegevens. Dat is niet veilig omdat Weblate inhoud moet verzenden naar de geconfigureerde service en de ingediende inhoud varieert per provider en ingeschakelde mogelijkheid. Configureer providers overeenkomstig het gegevensbeleid voor het project. (maintainer)
Importeren van projectback-ups van niet-vertrouwde bronnen als administratief gemak. Dat is niet veilig, omdat back-ups projectmetadata bevatten, vertaalinhoud en status van de opslagruimte. Houd limieten voor importeren ingeschakeld en importeer alleen back-ups die toepasselijk zijn voor de doelinstantie. (documented) (source: Weblate back-uppen en verplaatsen)
Behandelen van vertaalcontroles van Weblate als bewijs dat lagergelegen toepassingen niet kunnen worden aangevallen via vertaalde tekenreeksen. Dit is niet veilig, omdat de lagergelegen renderer de uiteindelijke context voor uitvoeren definieert. Beoordeel en escape vertalingen in de toepassing die ze opneemt. (documented) (source: Vertalen bedreigingen model)
Bekende niet-uitkomsten¶
Een rapport dat een bereikbare webhaak kan worden aangeroepen met vervalste authenticatie en alleen planning van gemodelleerde bijwerking activeert of de gedocumenteerde overeenkomende diagnostiek teruggeeft, is op zichzelf niet
VALID. Het wordt gerouteerd naarVALID-HARDENING, tenzij het gedocumenteerde limieten omzeilt, overeenkomt met niet-gerelateerde opslagruimten, gegevens lekt buiten de gedocumenteerde velden of effecten veroorzaakt buiten de gemodelleerde planning. (maintainer)Een rapport dat een webhook een component niet update als de opslagplaats-URL aleen een host- of padachtervoegsel deelt met de lading is geen systeemzwakte; Weblate matcht alleen exacte opslagplaats-URLs en gedocumenteerde varianten. (gedocumenteerd) (bron: Matchen van webhook-doelen)
Een rapport dat een projectbeheerder instellingen voor opslagplaats kan wijzigen, VCS-inloggegevens of projectconfiguratie is geen kwetsbaarheid als de acteur voor die actie de gedocumenteerde rechten heeft. (documented) (source: Toegangsbeheer)
A report containing private-project or restricted-component data is not a vulnerability when the user has effective
reports.viewpermission on the selected parent scope. That permission intentionally authorizes the complete report scope. (documented) (source: Rapporteren voortgang vertaling, Toegangsbeheer)Een rapport dat een projectbeheerder pushopties voor Gerrit review kan configureren, is op zichzelf geen kwetsbaarheid. Gerrit interpreteert deze opties als het geconfigureerde account van Weblate voor Gerrit en dwingt rechten van de zijde van Gerrit af. (documented) (source: Push-tak)
Een rapport tegen het gedrag van add-on van derde partij is geen kwetsbaarheid van de bron van Weblate, tenzij het rapport aantoont dat rechten van Weblate of grenzen voor installatie zijn omzeilt. (maintainer)
Een rapport dat een kwaadwillende lokale operator de configuratie kan lezen, beheersopdrachten kan uitvoeren of bestanden kan wijzigen, liggen buiten het model, omdat lokale operators vertrouwde infrastructuur zijn. (maintainer)
Een rapport dat een lagergelegen toepassing een gevaarlijke vertaling rendert, is geen kwetsbaarheid van Weblate, tenzij Weblate zelf een geclaimde eigenschap schendt bij het opslaan, controleren, beoordelen of weergeven van die vertaling. (documented) (source: Vertalen bedreigingen model)
Omstandigheden die dit model wijzigen¶
Reviseer dit model wanneer Weblate een nieuwe familie voor een publiek eindpunt, een nieuwe authenticatie of modus voor token, een nieuwe standaardmodus voor uitrollen, een nieuwe indeling voor back-up of importeren, een nieuw uitvoeringspad voor VCS, een nieuwe uitgaande klasse voor integratie, een nieuwe mogelijkheid voor uitvoeren van add-on toevoegt of bij een wijziging aan standaarden voor haken, HTTPS, limieten voor hoeveelheden, CSP, toegang tot private-netwerk of limieten voor importeren van back-ups. (maintainer)
Reviseer dit model wanneer een niet-ondersteund onderdeel een ondersteund productoppervlak wordt, wanneer een gedocumenteerde beveiligingseigenschap wordt verwijderd of beperkt, of wanneer onderhouders een kwetsbaarheidsrapport accepteren dat niet kan worden gerouteerd naar een triage-instelling hieronder. (maintainer)
Triage-instellingen¶
Instelling |
Betekenis |
Gelicenseerd door |
|---|---|---|
|
Schendt een eigenschap die Weblate claimt, via een in-bereik acteur en invoer. |
Security properties Weblate provides, Input assumptions, Adversary model |
|
Geen geclaimde eigenschap wordt geschonden, maar Weblate kiest ervoor om een bekend risico voor misbruik te beperken, zoals activeren van compatibiliteit voor webhaak die binnen de gemodelleerde effecten blijft. |
Known misuse patterns, Security properties Weblate does not provide |
|
Vereist beheer door een aanvaller of invoer die dit model als vertrouwd aanmerkt. |
|
|
Vereist een mogelijkheid die dit model uitsluit. |
|
|
Land in add-ons van derde partijen, gemaakte documenten, testen, lokale aanpassingen of een ander onderdeel dat als buiten bereik wordt aangemerkt. |
|
|
Manifesteert zich alleen na keuzes voor uitrollen die willens en wetens een geclaimde eigenschap verwijderen. |
|
|
Heeft betrekking op een eigenschap die Weblate niet expliciet verschaft. |
|
|
Komt overeen met een herhalende valse positieve. |
|
|
Kan niet netjes worden gerouteerd naar enige instelling hierboven. |