.gitbay/wiki/Architecture/10-Known-Gaps.org
38 lines · 3211 bytes
1#+title: Known gaps
2
3Open weaknesses. Issues on krz/gitbay are public; this page gives the
4title and the consequence, not a reproduction. The current list is the
5open issues labelled =security=:
6https://gitbay.org/krz/gitbay/issues?label=security. The table below is
7what the 2026-09-27 review found; remove a row when its issue closes.
8
9* Filed
10
11| Issue | Area | Gap | Severity |
12|-------+------------------+-----------------------------------------------------------------------+----------|
13| #255 | CI isolation | Untrusted and trusted builds of a repository share a writable build home | high |
14| #258 | CI integrity | Any writer can post a =ci/*= status; tree reuse ignores trust and image | high |
15| #259 | Recovery | No restore has been exercised; verification does not check git connectivity | high |
16| #260 | CI network | Builds share the runner's source address; no egress policy | medium |
17| #261 | Various | Migration foreign-key check after commit; three web writes bypass dispatch; documentation drift | medium |
18| #262 | Availability | No limit on concurrent git pack generation | high |
19| #273 | Data at rest | CI secrets, webhook secrets and mirror tokens are stored in clear in SQLite | high |
20| #274 | Backups | The local backup archive is not encrypted | medium |
21| #275 | Audit | Refused writes are not audited; the audit table is writable by the daemon user | medium |
22| #276 | Sessions | Web sessions last 7 days with no idle timeout | low |
23| #277 | Credentials | SSH and deploy keys never expire | low |
24| #278 | Login links | =web login= over SSH skips the login-link rate limit | low |
25| #279 | SSRF | Mirror URLs are checked when saved, not when git connects | medium |
26| #280 | Mail | STARTTLS only when the relay offers it | medium |
27| #281 | TLS | No explicit minimum TLS version | low |
28| #282 | Hook socket | Anything that can open =hook.sock= can act as any user | medium |
29| #297 | Credentials | A browser session can mint tokens and keys that outlive it | low |
30
31* Questions an auditor will ask that have no answer yet
32
33| Question | Status |
34|-----------------------------------------------------------+------------------------------------------|
35| What is the measured recovery time? | unmeasured (#259) |
36| How many concurrent clones does the host sustain? | unmeasured (#262) |
37| What can a build reach on the host's network? | configuration inspected, reachability untested (#260) |
38| Have the collaboration features been used by independent users? | no; one human user, tests only |