mirror of
https://github.com/WeblateOrg/weblate.git
synced 2026-07-26 14:23:58 +08:00
Repository URLs were validated in Python, but external VCS clients resolved the hostname again when connecting. A project manager controlling DNS could therefore pass validation with a public address and rebind the later connection to an internal service. Carry the addresses approved at runtime validation into protected Git operations. Pin HTTPS connections through libcurl, resolve effective SSH destinations, connect through an isolated numeric-address proxy with fallback, and enroll host keys against the same validated destination, including generated fork remotes. Fail closed for Mercurial and Subversion unless the host is explicitly trusted because those clients cannot enforce the binding. Disable unsupported Git LFS transfers, which use a separate unpinned client, and document the resulting compatibility and threat-model changes. |
||
|---|---|---|
| .. | ||
| _ext | ||
| admin | ||
| changes | ||
| contributing | ||
| devel | ||
| formats | ||
| images | ||
| locales | ||
| screenshots | ||
| security | ||
| snippets | ||
| specs | ||
| user | ||
| .gitignore | ||
| api.rst | ||
| changes.rst | ||
| conf.py | ||
| faq.rst | ||
| formats.rst | ||
| index.rst | ||
| make.bat | ||
| Makefile | ||
| python.rst | ||
| vcs.rst | ||
| wlc.rst | ||
| workflows.rst | ||