From f944069bf0c7cc2d6288b091939657d7bcda7eb7 Mon Sep 17 00:00:00 2001 From: infimum90 Date: Sun, 18 Oct 2026 00:44:40 +0100 Subject: [PATCH] feat(oracle): trim and reject empty/whitespace oracle keys (#684) --- .../middleware/oracle-key-validation.middleware.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/oracle/middleware/oracle-key-validation.middleware.ts b/src/oracle/middleware/oracle-key-validation.middleware.ts index d48cc4b..9443f22 100644 --- a/src/oracle/middleware/oracle-key-validation.middleware.ts +++ b/src/oracle/middleware/oracle-key-validation.middleware.ts @@ -35,11 +35,20 @@ export class OracleKeyValidationMiddleware implements NestMiddleware { key = pathKey; } + // Trim whitespace and reject empty or whitespace‑only keys + if (key !== undefined) { + key = key.trim(); + if (key.length === 0) { + this.logger.warn('Rejected empty or whitespace‑only oracle key'); + throw new BadRequestException('Invalid oracle key format. Expected ' + ORACLE_KEY_FORMAT_DESCRIPTION + '.'); + } + } + if (!key) { return next(); } - if (!isValidOracleKeyFormat(key)) { + if (key !== undefined && !isValidOracleKeyFormat(key)) { this.logger.warn(`Rejected malformed oracle key: ${key}`); throw new BadRequestException( `Invalid oracle key format. Expected ${ORACLE_KEY_FORMAT_DESCRIPTION}.`,