@prosopo/provider 5.3.10 → 5.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +9 -8
  2. package/.turbo/turbo-build$colon$tsc.log +25 -25
  3. package/.turbo/turbo-build.log +10 -9
  4. package/CHANGELOG.md +54 -0
  5. package/dist/api/verify.d.ts.map +1 -1
  6. package/dist/api/verify.js +9 -9
  7. package/dist/api/verify.js.map +1 -1
  8. package/dist/cjs/api/verify.cjs +9 -9
  9. package/dist/cjs/tasks/captchaManager.cjs +3 -2
  10. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +32 -12
  11. package/dist/cjs/tasks/powCaptcha/powTasks.cjs +27 -8
  12. package/dist/cjs/tasks/puzzleCaptcha/puzzleTasks.cjs +33 -4
  13. package/dist/cjs/utils/clientMetaData.cjs +34 -0
  14. package/dist/tasks/captchaManager.d.ts +2 -1
  15. package/dist/tasks/captchaManager.d.ts.map +1 -1
  16. package/dist/tasks/captchaManager.js +3 -2
  17. package/dist/tasks/captchaManager.js.map +1 -1
  18. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts +2 -2
  19. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +1 -1
  20. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +32 -12
  21. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +1 -1
  22. package/dist/tasks/powCaptcha/powTasks.d.ts +2 -1
  23. package/dist/tasks/powCaptcha/powTasks.d.ts.map +1 -1
  24. package/dist/tasks/powCaptcha/powTasks.js +27 -8
  25. package/dist/tasks/powCaptcha/powTasks.js.map +1 -1
  26. package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts +2 -1
  27. package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts.map +1 -1
  28. package/dist/tasks/puzzleCaptcha/puzzleTasks.js +33 -4
  29. package/dist/tasks/puzzleCaptcha/puzzleTasks.js.map +1 -1
  30. package/dist/tests/unit/tasks/captchaManager.unit.test.js +18 -0
  31. package/dist/tests/unit/tasks/captchaManager.unit.test.js.map +1 -1
  32. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js +60 -1
  33. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js.map +1 -1
  34. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js +98 -0
  35. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js.map +1 -1
  36. package/dist/tests/unit/tasks/puzzleCaptcha/puzzleTasks.unit.test.js +61 -0
  37. package/dist/tests/unit/tasks/puzzleCaptcha/puzzleTasks.unit.test.js.map +1 -1
  38. package/dist/tests/unit/utils/clientMetaData.unit.test.d.ts +2 -0
  39. package/dist/tests/unit/utils/clientMetaData.unit.test.d.ts.map +1 -0
  40. package/dist/tests/unit/utils/clientMetaData.unit.test.js +49 -0
  41. package/dist/tests/unit/utils/clientMetaData.unit.test.js.map +1 -0
  42. package/dist/utils/clientMetaData.d.ts +4 -0
  43. package/dist/utils/clientMetaData.d.ts.map +1 -0
  44. package/dist/utils/clientMetaData.js +33 -0
  45. package/dist/utils/clientMetaData.js.map +1 -0
  46. package/package.json +15 -15
@@ -27,10 +27,11 @@ export declare class PowCaptchaManager extends CaptchaManager {
27
27
  getPowCaptchaChallenge(userAccount: string, dappAccount: string, origin: string, powDifficulty?: number): Promise<PoWCaptcha>;
28
28
  verifyPowCaptchaSolution(challenge: PoWChallengeId, providerChallengeSignature: string, nonce: number, timeout: number, userTimestampSignature: string, ipAddress: IPAddress, headers: RequestHeaders, behavioralData?: string, salt?: string, simdReadings?: string, clientMetaData?: ClientMetaData): Promise<VerifyPowCaptchaSolutionResult>;
29
29
  private runPostPowRouting;
30
- serverVerifyPowCaptchaSolution(dappAccount: string, challenge: string, timeout: number, env: ProviderEnvironment, ip?: string, userAccessRulesStorage?: AccessRulesStorage, email?: string, spamEmailDomainCheckingEnabled?: boolean, spamFilter?: ISpamFilterRules, trafficFilter?: ITrafficFilter, storeMetadata?: boolean): Promise<{
30
+ serverVerifyPowCaptchaSolution(dappAccount: string, challenge: string, timeout: number, env: ProviderEnvironment, ip?: string, userAccessRulesStorage?: AccessRulesStorage, email?: string, spamEmailDomainCheckingEnabled?: boolean, spamFilter?: ISpamFilterRules, trafficFilter?: ITrafficFilter, storeMetadata?: boolean, clientSessionId?: string): Promise<{
31
31
  verified: boolean;
32
32
  score?: number;
33
33
  reason?: string;
34
+ sessionId?: string;
34
35
  }>;
35
36
  }
36
37
  //# sourceMappingURL=powTasks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"powTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/powCaptcha/powTasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"powTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/powCaptcha/powTasks.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { computeDnsAsymmetry, enrichDnsEvent, getIpInfoAsn } from "../dnsEvent/e
5
5
  import { CaptchaManager } from "../captchaManager.js";
6
6
  import { applyRouter } from "../frictionless/routingMachine.js";
7
7
  import { deepValidateIpAddress } from "../../util.js";
8
+ import { isClientSessionMismatch, toStoredClientMetaData } from "../../utils/clientMetaData.js";
8
9
  import { computeFrictionlessScore } from "../frictionless/frictionlessTasksUtils.js";
9
10
  import { evaluateEmailSpamRules, normaliseEmailForMatching } from "../spam/evaluateEmailSpamRules.js";
10
11
  import { checkPowSignature, validateSolution } from "./powTasksUtils.js";
@@ -168,7 +169,8 @@ var PowCaptchaManager = class extends CaptchaManager {
168
169
  }));
169
170
  }
170
171
  const recordUpdates = { ...behavioralUpdates };
171
- if (clientMetaData?.hp) recordUpdates.clientMetaData = { hp: clientMetaData.hp };
172
+ const storedClientMetaData = toStoredClientMetaData(clientMetaData);
173
+ if (storedClientMetaData) recordUpdates.clientMetaData = storedClientMetaData;
172
174
  if (Object.keys(recordUpdates).length > 0) await this.db.updatePowCaptchaRecord(challenge, recordUpdates);
173
175
  const writePromises = [this.db.updatePowCaptchaRecordResult(challenge, result, false, true, userTimestampSignature, coords)];
174
176
  if (challengeRecord.sessionId) {
@@ -176,7 +178,8 @@ var PowCaptchaManager = class extends CaptchaManager {
176
178
  writePromises.push(this.updateSessionRecordWithCache(linkedSessionId, {
177
179
  userSubmitted: true,
178
180
  result,
179
- ...isBlockingCaptchaResult(CaptchaType.pow, result) && { blocked: true }
181
+ ...isBlockingCaptchaResult(CaptchaType.pow, result) && { blocked: true },
182
+ ...storedClientMetaData && { clientMetaData: storedClientMetaData }
180
183
  }));
181
184
  if (simdReadings) writePromises.push(this.decryptAndAttachSimdReadingsIfAbsent(linkedSessionId, simdReadings, SimdReadingsStage.submit));
182
185
  }
@@ -263,11 +266,15 @@ var PowCaptchaManager = class extends CaptchaManager {
263
266
  * @param storeMetadata - when true, persists the dapp-server-provided
264
267
  * `email` (and any future metadata fields) on the captcha record so
265
268
  * it can be inspected for spam-rate analysis.
269
+ * @param clientSessionId - the session id the site rendered the widget
270
+ * with. When supplied, the solve must carry the same value in its
271
+ * `clientMetaData` or it is disapproved.
266
272
  */
267
- async serverVerifyPowCaptchaSolution(dappAccount, challenge, timeout, env, ip, userAccessRulesStorage, email, spamEmailDomainCheckingEnabled = false, spamFilter, trafficFilter, storeMetadata = false) {
268
- const notVerified = (reason) => ({
273
+ async serverVerifyPowCaptchaSolution(dappAccount, challenge, timeout, env, ip, userAccessRulesStorage, email, spamEmailDomainCheckingEnabled = false, spamFilter, trafficFilter, storeMetadata = false, clientSessionId) {
274
+ const notVerified = (reason, sessionId) => ({
269
275
  verified: false,
270
- reason
276
+ reason,
277
+ ...sessionId && { sessionId }
271
278
  });
272
279
  const logger = this.logger.with({
273
280
  challenge,
@@ -283,7 +290,7 @@ var PowCaptchaManager = class extends CaptchaManager {
283
290
  failedFuncName: this.serverVerifyPowCaptchaSolution.name,
284
291
  challenge
285
292
  } });
286
- if (challengeRecord.serverChecked) return notVerified("API.USER_ALREADY_VERIFIED");
293
+ if (challengeRecord.serverChecked) return notVerified("API.USER_ALREADY_VERIFIED", challengeRecord.sessionId);
287
294
  const challengeDappAccount = challengeRecord.dappAccount;
288
295
  if (dappAccount !== challengeDappAccount) throw new ProsopoEnvError("CAPTCHA.DAPP_USER_SOLUTION_NOT_FOUND", { context: {
289
296
  failedFuncName: this.serverVerifyPowCaptchaSolution.name,
@@ -303,6 +310,17 @@ var PowCaptchaManager = class extends CaptchaManager {
303
310
  };
304
311
  failReason = "API.TIMESTAMP_TOO_OLD";
305
312
  }
313
+ if (!failResult && isClientSessionMismatch(clientSessionId, challengeRecord.clientMetaData?.clientSessionId)) {
314
+ logger.info(() => ({
315
+ msg: "Client session mismatch in server PoW verification",
316
+ data: { hasRecordedClientSessionId: Boolean(challengeRecord.clientMetaData?.clientSessionId) }
317
+ }));
318
+ failResult = {
319
+ status: CaptchaStatus.disapproved,
320
+ reason: ResultReason.CLIENT_SESSION_MISMATCH
321
+ };
322
+ failReason = "API.CLIENT_SESSION_MISMATCH";
323
+ }
306
324
  if (!failResult && userAccessRulesStorage) try {
307
325
  const blockPolicy = await this.checkForHardBlock(userAccessRulesStorage, challengeRecord, challengeRecord.userAccount, challengeRecord.headers, challengeRecord.coords, challengeRecord.ipInfo?.isValid ? challengeRecord.ipInfo.countryCode : void 0, challengeRecord.ipInfo?.isValid ? challengeRecord.ipInfo.asnNumber : void 0);
308
326
  if (blockPolicy) {
@@ -531,10 +549,11 @@ var PowCaptchaManager = class extends CaptchaManager {
531
549
  ...matchedRule && { matchedRule }
532
550
  }, true));
533
551
  if (writePromises.length > 0) await Promise.all(writePromises);
534
- if (failReason) return notVerified(failReason);
552
+ if (failReason) return notVerified(failReason, challengeRecord.sessionId);
535
553
  return {
536
554
  verified: true,
537
- ...score ? { score } : {}
555
+ ...score ? { score } : {},
556
+ ...challengeRecord.sessionId && { sessionId: challengeRecord.sessionId }
538
557
  };
539
558
  }
540
559
  };
@@ -1 +1 @@
1
- {"version":3,"file":"powTasks.js","sourceRoot":"","sources":["../../../src/tasks/powCaptcha/powTasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"powTasks.js","sourceRoot":"","sources":["../../../src/tasks/powCaptcha/powTasks.ts"],"names":[],"mappings":"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"}
@@ -23,9 +23,10 @@ export declare class PuzzleCaptchaManager extends CaptchaManager {
23
23
  constructor(db: IProviderDatabase, pair: KeyringPair, config: ProsopoConfigOutput, logger?: Logger, usageCounters?: UsageCounters | null);
24
24
  getPuzzleCaptchaChallenge(userAccount: string, dappAccount: string, origin: string, tolerance?: number): Promise<PuzzleCaptchaChallenge>;
25
25
  verifyPuzzleCaptchaSolution(challenge: PoWChallengeId, providerChallengeSignature: string, finalX: number, finalY: number, puzzleEvents: PuzzleEvent[], timeout: number, userTimestampSignature: string, ipAddress: IPAddress, headers: RequestHeaders, behavioralData?: string, salt?: string, simdReadings?: string, clientMetaData?: ClientMetaData): Promise<boolean>;
26
- serverVerifyPuzzleCaptchaSolution(dappAccount: string, challenge: string, timeout: number, env: ProviderEnvironment, ip?: string, userAccessRulesStorage?: AccessRulesStorage, email?: string, spamEmailDomainCheckingEnabled?: boolean, spamFilter?: ISpamFilterRules, trafficFilter?: ITrafficFilter, storeMetadata?: boolean): Promise<{
26
+ serverVerifyPuzzleCaptchaSolution(dappAccount: string, challenge: string, timeout: number, env: ProviderEnvironment, ip?: string, userAccessRulesStorage?: AccessRulesStorage, email?: string, spamEmailDomainCheckingEnabled?: boolean, spamFilter?: ISpamFilterRules, trafficFilter?: ITrafficFilter, storeMetadata?: boolean, clientSessionId?: string): Promise<{
27
27
  verified: boolean;
28
28
  score?: number;
29
+ sessionId?: string;
29
30
  }>;
30
31
  }
31
32
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"puzzleTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/puzzleCaptcha/puzzleTasks.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMvE,OAAO,EAKN,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,cAAc,EAKnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACN,KAAK,kBAAkB,EAEvB,MAAM,6BAA6B,CAAC;AAYrC,OAAO,EACN,KAAK,aAAa,EAElB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAYtD,UAAU,sBAAsB;IAC/B,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,oBAAqB,SAAQ,cAAc;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;gBAGpD,EAAE,EAAE,iBAAiB,EACrB,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,CAAC,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI;IAgB/B,yBAAyB,CAC9B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC;IA6C5B,2BAA2B,CAChC,SAAS,EAAE,cAAc,EACzB,0BAA0B,EAAE,MAAM,EAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,WAAW,EAAE,EAC3B,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,EAC9B,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,cAAc,EACvB,cAAc,CAAC,EAAE,MAAM,EACvB,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,cAAc,GAC7B,OAAO,CAAC,OAAO,CAAC;IA6Qb,iCAAiC,CACtC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,mBAAmB,EACxB,EAAE,CAAC,EAAE,MAAM,EACX,sBAAsB,CAAC,EAAE,kBAAkB,EAC3C,KAAK,CAAC,EAAE,MAAM,EACd,8BAA8B,UAAQ,EACtC,UAAU,CAAC,EAAE,gBAAgB,EAC7B,aAAa,CAAC,EAAE,cAAc,EAC9B,aAAa,UAAQ,GACnB,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAgdjD"}
1
+ {"version":3,"file":"puzzleTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/puzzleCaptcha/puzzleTasks.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMvE,OAAO,EAKN,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,cAAc,EAKnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACN,KAAK,kBAAkB,EAEvB,MAAM,6BAA6B,CAAC;AAYrC,OAAO,EACN,KAAK,aAAa,EAElB,MAAM,6BAA6B,CAAC;AAKrC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAYtD,UAAU,sBAAsB;IAC/B,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,oBAAqB,SAAQ,cAAc;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;gBAGpD,EAAE,EAAE,iBAAiB,EACrB,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,CAAC,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI;IAgB/B,yBAAyB,CAC9B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC;IA6C5B,2BAA2B,CAChC,SAAS,EAAE,cAAc,EACzB,0BAA0B,EAAE,MAAM,EAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,WAAW,EAAE,EAC3B,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,EAC9B,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,cAAc,EACvB,cAAc,CAAC,EAAE,MAAM,EACvB,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,cAAc,GAC7B,OAAO,CAAC,OAAO,CAAC;IAuRb,iCAAiC,CACtC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,mBAAmB,EACxB,EAAE,CAAC,EAAE,MAAM,EACX,sBAAsB,CAAC,EAAE,kBAAkB,EAC3C,KAAK,CAAC,EAAE,MAAM,EACd,8BAA8B,UAAQ,EACtC,UAAU,CAAC,EAAE,gBAAgB,EAC7B,aAAa,CAAC,EAAE,cAAc,EAC9B,aAAa,UAAQ,EACrB,eAAe,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAqgBrE"}
@@ -4,6 +4,7 @@ import { getCompositeIpAddress, getIpAddressFromComposite } from "../../composit
4
4
  import { computeDnsAsymmetry, enrichDnsEvent, getIpInfoAsn } from "../dnsEvent/enrichDnsEvent.js";
5
5
  import { CaptchaManager } from "../captchaManager.js";
6
6
  import { deepValidateIpAddress } from "../../util.js";
7
+ import { isClientSessionMismatch, toStoredClientMetaData } from "../../utils/clientMetaData.js";
7
8
  import { computeFrictionlessScore } from "../frictionless/frictionlessTasksUtils.js";
8
9
  import { normaliseEmailForMatching } from "../spam/evaluateEmailSpamRules.js";
9
10
  import { checkPowSignature } from "../powCaptcha/powTasksUtils.js";
@@ -163,14 +164,16 @@ var PuzzleCaptchaManager = class extends CaptchaManager {
163
164
  err: error
164
165
  }));
165
166
  }
166
- if (clientMetaData?.hp) await this.db.updatePuzzleCaptchaRecord(challenge, { clientMetaData: { hp: clientMetaData.hp } });
167
+ const storedClientMetaData = toStoredClientMetaData(clientMetaData);
168
+ if (storedClientMetaData) await this.db.updatePuzzleCaptchaRecord(challenge, { clientMetaData: storedClientMetaData });
167
169
  await this.db.updatePuzzleCaptchaRecordResult(challenge, result, false, true, userTimestampSignature, coords);
168
170
  if (challengeRecord.sessionId) {
169
171
  const linkedSessionId = challengeRecord.sessionId;
170
172
  await this.updateSessionRecordWithCache(linkedSessionId, {
171
173
  userSubmitted: true,
172
174
  result,
173
- ...isBlockingCaptchaResult(CaptchaType.puzzle, result) && { blocked: true }
175
+ ...isBlockingCaptchaResult(CaptchaType.puzzle, result) && { blocked: true },
176
+ ...storedClientMetaData && { clientMetaData: storedClientMetaData }
174
177
  });
175
178
  if (simdReadings) await this.decryptAndAttachSimdReadingsIfAbsent(linkedSessionId, simdReadings, SimdReadingsStage.submit);
176
179
  }
@@ -192,8 +195,11 @@ var PuzzleCaptchaManager = class extends CaptchaManager {
192
195
  * @param trafficFilter
193
196
  * @param storeMetadata - when true, persists the dapp-server-provided
194
197
  * `email` on the captcha record for spam-rate analysis.
198
+ * @param clientSessionId - the session id the site rendered the widget
199
+ * with. When supplied, the solve must carry the same value in its
200
+ * `clientMetaData` or it is disapproved.
195
201
  */
196
- async serverVerifyPuzzleCaptchaSolution(dappAccount, challenge, timeout, env, ip, userAccessRulesStorage, email, spamEmailDomainCheckingEnabled = false, spamFilter, trafficFilter, storeMetadata = false) {
202
+ async serverVerifyPuzzleCaptchaSolution(dappAccount, challenge, timeout, env, ip, userAccessRulesStorage, email, spamEmailDomainCheckingEnabled = false, spamFilter, trafficFilter, storeMetadata = false, clientSessionId) {
197
203
  const notVerifiedResponse = { verified: false };
198
204
  const logger = this.logger.with({
199
205
  challenge,
@@ -204,6 +210,7 @@ var PuzzleCaptchaManager = class extends CaptchaManager {
204
210
  logger.debug(() => ({ msg: `No record of this challenge: ${challenge}` }));
205
211
  return notVerifiedResponse;
206
212
  }
213
+ notVerifiedResponse.sessionId = challengeRecord.sessionId;
207
214
  if (challengeRecord.result.status !== CaptchaStatus.approved) throw new ProsopoApiError("CAPTCHA.INVALID_SOLUTION", { context: {
208
215
  code: 400,
209
216
  failedFuncName: this.serverVerifyPuzzleCaptchaSolution.name,
@@ -238,6 +245,27 @@ var PuzzleCaptchaManager = class extends CaptchaManager {
238
245
  });
239
246
  return notVerifiedResponse;
240
247
  }
248
+ if (isClientSessionMismatch(clientSessionId, challengeRecord.clientMetaData?.clientSessionId)) {
249
+ logger.info(() => ({
250
+ msg: "Client session mismatch in server puzzle verification",
251
+ data: { hasRecordedClientSessionId: Boolean(challengeRecord.clientMetaData?.clientSessionId) }
252
+ }));
253
+ const mismatchResult = {
254
+ status: CaptchaStatus.disapproved,
255
+ reason: ResultReason.CLIENT_SESSION_MISMATCH
256
+ };
257
+ const isBlocked = isBlockingCaptchaResult(CaptchaType.puzzle, mismatchResult);
258
+ await this.db.updatePuzzleCaptchaRecord(challengeRecord.challenge, {
259
+ result: mismatchResult,
260
+ ...isBlocked && { blocked: true }
261
+ });
262
+ if (challengeRecord.sessionId) await this.updateSessionRecordWithCache(challengeRecord.sessionId, {
263
+ serverChecked: true,
264
+ result: mismatchResult,
265
+ ...isBlocked && { blocked: true }
266
+ });
267
+ return notVerifiedResponse;
268
+ }
241
269
  if (userAccessRulesStorage) try {
242
270
  const blockPolicy = await this.checkForHardBlock(userAccessRulesStorage, challengeRecord, challengeRecord.userAccount, challengeRecord.headers, challengeRecord.coords, challengeRecord.ipInfo?.isValid ? challengeRecord.ipInfo.countryCode : void 0, challengeRecord.ipInfo?.isValid ? challengeRecord.ipInfo.asnNumber : void 0);
243
271
  if (blockPolicy) {
@@ -493,7 +521,8 @@ var PuzzleCaptchaManager = class extends CaptchaManager {
493
521
  });
494
522
  return {
495
523
  verified: true,
496
- ...score ? { score } : {}
524
+ ...score ? { score } : {},
525
+ ...challengeRecord.sessionId && { sessionId: challengeRecord.sessionId }
497
526
  };
498
527
  }
499
528
  };
@@ -1 +1 @@
1
- {"version":3,"file":"puzzleTasks.js","sourceRoot":"","sources":["../../../src/tasks/puzzleCaptcha/puzzleTasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puzzleTasks.js","sourceRoot":"","sources":["../../../src/tasks/puzzleCaptcha/puzzleTasks.ts"],"names":[],"mappings":"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"}
@@ -1041,6 +1041,24 @@ describe("CaptchaManager", () => {
1041
1041
  score: 0.5,
1042
1042
  });
1043
1043
  });
1044
+ it("should return the sessionId even on the free tier, which hides the score", () => {
1045
+ const result = captchaManager.getVerificationResponse(true, {
1046
+ account: "account",
1047
+ tier: Tier.Free,
1048
+ }, () => "translated", 0.5, undefined, "session-abc");
1049
+ expect(result).toEqual({
1050
+ status: "translated",
1051
+ verified: true,
1052
+ sessionId: "session-abc",
1053
+ });
1054
+ });
1055
+ it("should omit the sessionId when there isn't one", () => {
1056
+ const result = captchaManager.getVerificationResponse(true, {
1057
+ account: "account",
1058
+ tier: Tier.Professional,
1059
+ }, () => "translated", 0.5, undefined, undefined);
1060
+ expect(result).not.toHaveProperty("sessionId");
1061
+ });
1044
1062
  });
1045
1063
  describe("decryptBehavioralData", () => {
1046
1064
  let decryptFn;