Fix: verifizierte Findings 2026-05-28 (1 high) #6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/findings-2026-05-28"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Behebt die am realen Code verifizierten und sicher fixbaren Findings aus der Analyse 2026-05-28. Maxime: lieber nichts fixen als falsch fixen — von den 3 High-Findings ist hier 1 gefixt, 2 bleiben bewusst offen (siehe unten).
Gefixt
[HIGH] Sidecar-Plugin-Install zeigt auf falschen Pfad — env.sample clobbert wrapper-exportiertes TEDDYCLOUD_DATA_DIR
Datei:
vendor/tafforge-install/lxc/install.sh(Stage 7/8)Der Wrapper (
build.func) exportiert viapct exec env ... TEDDYCLOUD_DATA_DIR="${TC_LXC_PATH}"den gewaehlten Mount-Pfad in die LXC.install.shsourct danachtafforge.envunterset -a;tafforge.env.sample:17enthaelt aber ein UNkommentiertesTEDDYCLOUD_DATA_DIR=/opt/teddycloud/data, das den Wrapper-Wert ueberschreibt. In Sidecar-Topologie (Mount z.B. auf/mnt/teddycloud-data) zeigtePLUGIN_ROOT_RESOLVEDdadurch faelschlich auf/opt/teddycloud/data/www/plugins— das Plugin wurde still nicht installiert (nur Warnung). All-in-one maskierte den Bug, weil dort der Pfad zufaellig matchte.Fix (Empfehlung a, minimal-invasiv): Wrapper-bereitgestellte Integrationspfade (
TEDDYCLOUD_DATA_DIR,PLUGIN_ROOT) werden vor dem Sourcen der env-Datei in lokalen Variablen gecaptured und nach dem Sourcen re-exportiert, sofern sie nicht-leer sind. Damit gewinnt der Wrapper-Wert wieder. env.sample bleibt unveraendert; All-in-one-Verhalten bleibt identisch; bei abgelehntem Sidecar-Mount (leerer Wrapper-Wert) faellt es weiterhin auf den env-Datei-Default zurueck (kein/www/plugins-Regression).Closes #4
Bewusst NICHT gefixt (braucht manuelle Entscheidung)
[HIGH] curl|bash ohne Integritaetspruefung (#2)
Erfordert einen Release-/Signing-Prozess (sha256-Manifest oder GPG-Signatur) plus Pinning der
REPO_RAW_BASEauf einen unveraenderlichen Tag/Commit. Das Repo hat aktuell keine Tags (git ls-remote --tagsleer), und es existiert noch keine Release-Pipeline, die Manifeste/Signaturen erzeugt. Ein blindes Pinnen auf einen geratenen Tag wuerde den gesamtencurl|bash-Bootstrap brechen. Architektur-/Prozessentscheidung — Issue bleibt offen.[HIGH] TafForge-App vom beweglichen main-Branch geklont (#3)
TAFFORGE_REF_DEFAULT='main'auf einen Release-Tag/Commit-SHA zu pinnen setzt voraus, dass ein gueltiger, "geblesster" Ref des separaten TafForge-App-Repos bekannt ist. Welcher Commit/Tag das ist, ist eine Release-Entscheidung; ein nicht existierender Tag liessegit clone --branch <tag>bei jedem Fresh-Install fehlschlagen. Nicht sicher minimal fixbar — Issue bleibt offen.Analyse-Details:
analysis-2026-05-28/findings/teddytafforge-proxmox.mdCo-Authored-By: Claude Opus 4.8