From 31a86ed23418814e8055abffb0a3b666f1e834a7 Mon Sep 17 00:00:00 2001 From: LD-Reborn Date: Sat, 18 Jul 2026 18:58:11 +0200 Subject: [PATCH] fix(client installer): fixes shell injection --- deploy/install-client.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/deploy/install-client.sh b/deploy/install-client.sh index ef1ceae..e3018ba 100755 --- a/deploy/install-client.sh +++ b/deploy/install-client.sh @@ -262,6 +262,13 @@ chmod +x "$INSTALL_DIR/ReverseLlama.Client" info "Client installed to $INSTALL_DIR." +# ── Write environment file (avoids shell injection in unit file) ───────────── +ENV_DIR="/etc/reversellama-client" +mkdir -p "$ENV_DIR" +printf 'REVERSE_LLAMA_TOKEN=%s\n' "$TOKEN" > "$ENV_DIR/env" +chmod 600 "$ENV_DIR/env" +info "Environment file written to $ENV_DIR/env (mode 0600)." + # ── Create systemd service ─────────────────────────────────────────────────── SERVICE_FILE="/etc/systemd/system/${SERVICE_NAME}.service" @@ -280,11 +287,12 @@ $([ "$SKIP_OLLAMA" = "false" ] && echo "Wants=ollama.service") [Service] Type=simple -ExecStart=$INSTALL_DIR/ReverseLlama.Client --server "$SERVER_URL" --upstream "$UPSTREAM" --token "$TOKEN" --client-id "$CLIENT_ID" +ExecStart=$INSTALL_DIR/ReverseLlama.Client --server "$SERVER_URL" --upstream "$UPSTREAM" --client-id "$CLIENT_ID" Restart=always RestartSec=5 Environment=DOTNET_CLI_TELEMETRY_OPTOUT=1 Environment=DOTNET_NOLOGO=1 +EnvironmentFile=$ENV_DIR/env WorkingDirectory=$INSTALL_DIR [Install]