From fafff94e5e31c3843df06aa08773bbaa879bbede Mon Sep 17 00:00:00 2001 From: ZacharyZcR Date: Wed, 15 Jul 2026 15:05:53 +0800 Subject: [PATCH] Merge commit from fork --- src/backend/database/routes/credential-deploy-routes.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/backend/database/routes/credential-deploy-routes.ts b/src/backend/database/routes/credential-deploy-routes.ts index 534983f3..1ad1b8df 100644 --- a/src/backend/database/routes/credential-deploy-routes.ts +++ b/src/backend/database/routes/credential-deploy-routes.ts @@ -87,6 +87,10 @@ async function deploySSHKeyToHost( } const keyPattern = keyParts[1]; + if (!/^[A-Za-z0-9+/]+={0,2}$/.test(keyPattern)) { + clearTimeout(checkTimeout); + return rejectCheck(new Error("Invalid public key data")); + } conn.exec( `if [ -f ~/.ssh/authorized_keys ]; then grep -F "${keyPattern}" ~/.ssh/authorized_keys >/dev/null 2>&1; echo $?; else echo 1; fi`, @@ -192,6 +196,10 @@ async function deploySSHKeyToHost( } const keyPattern = keyParts[1]; + if (!/^[A-Za-z0-9+/]+={0,2}$/.test(keyPattern)) { + clearTimeout(verifyTimeout); + return rejectVerify(new Error("Invalid public key data")); + } conn.exec( `grep -F "${keyPattern}" ~/.ssh/authorized_keys >/dev/null 2>&1; echo $?`, (err, stream) => {