@prosopo/provider 5.13.4 → 5.15.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.
- package/.turbo/turbo-build$colon$cjs.log +30 -30
- package/.turbo/turbo-build$colon$tsc.log +27 -30
- package/.turbo/turbo-build.log +30 -33
- package/CHANGELOG.md +233 -0
- package/LICENSE +201 -0
- package/dist/api/adminAuthOptions.d.ts +4 -0
- package/dist/api/adminAuthOptions.d.ts.map +1 -0
- package/dist/api/adminAuthOptions.js +34 -0
- package/dist/api/adminAuthOptions.js.map +1 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.d.ts +2 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.d.ts.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.js +11 -2
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.d.ts.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js +16 -11
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.d.ts +5 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.d.ts.map +1 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.js +20 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.js.map +1 -0
- package/dist/api/captcha/getPuzzleCaptchaChallenge.d.ts.map +1 -1
- package/dist/api/captcha/getPuzzleCaptchaChallenge.js +24 -0
- package/dist/api/captcha/getPuzzleCaptchaChallenge.js.map +1 -1
- package/dist/api/captcha/submitPoWCaptchaSolution.d.ts +4 -11
- package/dist/api/captcha/submitPoWCaptchaSolution.d.ts.map +1 -1
- package/dist/api/captcha/submitPoWCaptchaSolution.js +12 -17
- package/dist/api/captcha/submitPoWCaptchaSolution.js.map +1 -1
- package/dist/api/detectorPoolBodyParser.d.ts +4 -0
- package/dist/api/detectorPoolBodyParser.d.ts.map +1 -0
- package/dist/api/detectorPoolBodyParser.js +31 -0
- package/dist/api/detectorPoolBodyParser.js.map +1 -0
- package/dist/api/domainMiddleware.d.ts.map +1 -1
- package/dist/api/domainMiddleware.js +5 -1
- package/dist/api/domainMiddleware.js.map +1 -1
- package/dist/api/metrics.d.ts +2 -1
- package/dist/api/metrics.d.ts.map +1 -1
- package/dist/api/metrics.js +46 -4
- package/dist/api/metrics.js.map +1 -1
- package/dist/api/rawTlsSignalsMiddleware.d.ts +14 -1
- package/dist/api/rawTlsSignalsMiddleware.d.ts.map +1 -1
- package/dist/api/rawTlsSignalsMiddleware.js +111 -23
- package/dist/api/rawTlsSignalsMiddleware.js.map +1 -1
- package/dist/api/startProviderApi.d.ts.map +1 -1
- package/dist/api/startProviderApi.js +8 -5
- package/dist/api/startProviderApi.js.map +1 -1
- package/dist/api/verify.d.ts.map +1 -1
- package/dist/api/verify.js +50 -8
- package/dist/api/verify.js.map +1 -1
- package/dist/cjs/api/adminAuthOptions.cjs +35 -0
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/constants.cjs +10 -0
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs +14 -8
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.cjs +20 -0
- package/dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs +24 -0
- package/dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs +10 -15
- package/dist/cjs/api/detectorPoolBodyParser.cjs +33 -0
- package/dist/cjs/api/domainMiddleware.cjs +5 -1
- package/dist/cjs/api/metrics.cjs +46 -3
- package/dist/cjs/api/rawTlsSignalsMiddleware.cjs +111 -22
- package/dist/cjs/api/startProviderApi.cjs +8 -5
- package/dist/cjs/api/verify.cjs +50 -8
- package/dist/cjs/compositeIpAddress.cjs +21 -7
- package/dist/cjs/tasks/captchaManager.cjs +15 -0
- package/dist/cjs/tasks/captchaTypeSelection.cjs +23 -2
- package/dist/cjs/tasks/client/clientTasks.cjs +25 -4
- package/dist/cjs/tasks/dataset/datasetTasksUtils.cjs +1 -1
- package/dist/cjs/tasks/frictionless/frictionlessTasks.cjs +26 -23
- package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +4 -11
- package/dist/cjs/tasks/powCaptcha/powTasks.cjs +7 -11
- package/dist/cjs/tasks/powCaptcha/powTasksUtils.cjs +2 -0
- package/dist/cjs/tasks/puzzle/backgroundBuffer.cjs +3 -3
- package/dist/cjs/tasks/puzzle/nativeBackground.cjs +12 -5
- package/dist/cjs/tasks/puzzle/puzzleRenderer.cjs +4 -3
- package/dist/cjs/tasks/puzzleCaptcha/puzzleTasks.cjs +2 -9
- package/dist/cjs/utils/tarpitPadding.cjs +81 -10
- package/dist/compositeIpAddress.d.ts.map +1 -1
- package/dist/compositeIpAddress.js +21 -7
- package/dist/compositeIpAddress.js.map +1 -1
- package/dist/tasks/captchaManager.d.ts.map +1 -1
- package/dist/tasks/captchaManager.js +16 -1
- package/dist/tasks/captchaManager.js.map +1 -1
- package/dist/tasks/captchaTypeSelection.d.ts +3 -1
- package/dist/tasks/captchaTypeSelection.d.ts.map +1 -1
- package/dist/tasks/captchaTypeSelection.js +23 -3
- package/dist/tasks/captchaTypeSelection.js.map +1 -1
- package/dist/tasks/client/clientTasks.d.ts +1 -0
- package/dist/tasks/client/clientTasks.d.ts.map +1 -1
- package/dist/tasks/client/clientTasks.js +25 -5
- package/dist/tasks/client/clientTasks.js.map +1 -1
- package/dist/tasks/dataset/datasetTasksUtils.js +1 -1
- package/dist/tasks/dataset/datasetTasksUtils.js.map +1 -1
- package/dist/tasks/frictionless/frictionlessTasks.d.ts +3 -1
- package/dist/tasks/frictionless/frictionlessTasks.d.ts.map +1 -1
- package/dist/tasks/frictionless/frictionlessTasks.js +28 -25
- package/dist/tasks/frictionless/frictionlessTasks.js.map +1 -1
- package/dist/tasks/frictionless/routingMachine.d.ts +1 -2
- package/dist/tasks/frictionless/routingMachine.d.ts.map +1 -1
- package/dist/tasks/frictionless/routingMachine.js.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +4 -11
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +1 -1
- package/dist/tasks/powCaptcha/powTasks.d.ts.map +1 -1
- package/dist/tasks/powCaptcha/powTasks.js +8 -12
- package/dist/tasks/powCaptcha/powTasks.js.map +1 -1
- package/dist/tasks/powCaptcha/powTasksUtils.d.ts +1 -0
- package/dist/tasks/powCaptcha/powTasksUtils.d.ts.map +1 -1
- package/dist/tasks/powCaptcha/powTasksUtils.js +2 -1
- package/dist/tasks/powCaptcha/powTasksUtils.js.map +1 -1
- package/dist/tasks/puzzle/backgroundBuffer.d.ts +3 -2
- package/dist/tasks/puzzle/backgroundBuffer.d.ts.map +1 -1
- package/dist/tasks/puzzle/backgroundBuffer.js +3 -3
- package/dist/tasks/puzzle/backgroundBuffer.js.map +1 -1
- package/dist/tasks/puzzle/nativeBackground.d.ts +5 -1
- package/dist/tasks/puzzle/nativeBackground.d.ts.map +1 -1
- package/dist/tasks/puzzle/nativeBackground.js +12 -5
- package/dist/tasks/puzzle/nativeBackground.js.map +1 -1
- package/dist/tasks/puzzle/puzzleRenderer.d.ts +2 -0
- package/dist/tasks/puzzle/puzzleRenderer.d.ts.map +1 -1
- package/dist/tasks/puzzle/puzzleRenderer.js +4 -3
- package/dist/tasks/puzzle/puzzleRenderer.js.map +1 -1
- package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts.map +1 -1
- package/dist/tasks/puzzleCaptcha/puzzleTasks.js +2 -9
- package/dist/tasks/puzzleCaptcha/puzzleTasks.js.map +1 -1
- package/dist/tests/integration/clientSettingsPersistence.integration.test.js +2 -0
- package/dist/tests/integration/clientSettingsPersistence.integration.test.js.map +1 -1
- package/dist/tests/unit/api/adminAuthOptions.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/adminAuthOptions.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/adminAuthOptions.unit.test.js +38 -0
- package/dist/tests/unit/api/adminAuthOptions.unit.test.js.map +1 -0
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/constants.unit.test.js +35 -2
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/constants.unit.test.js.map +1 -1
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.js +45 -0
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.js.map +1 -0
- package/dist/tests/unit/api/captcha/submitPoWCaptchaSolution.escalation.unit.test.js +15 -1
- package/dist/tests/unit/api/captcha/submitPoWCaptchaSolution.escalation.unit.test.js.map +1 -1
- package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.js +64 -0
- package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.js.map +1 -0
- package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.js +67 -0
- package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.js.map +1 -0
- package/dist/tests/unit/api/getFrictionlessCaptchaChallenge.unit.test.js +174 -23
- package/dist/tests/unit/api/getFrictionlessCaptchaChallenge.unit.test.js.map +1 -1
- package/dist/tests/unit/api/metricsAccess.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/metricsAccess.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/metricsAccess.unit.test.js +87 -0
- package/dist/tests/unit/api/metricsAccess.unit.test.js.map +1 -0
- package/dist/tests/unit/api/public.unit.test.js +4 -1
- package/dist/tests/unit/api/public.unit.test.js.map +1 -1
- package/dist/tests/unit/api/rawTlsSignalsMiddleware.unit.test.js +96 -1
- package/dist/tests/unit/api/rawTlsSignalsMiddleware.unit.test.js.map +1 -1
- package/dist/tests/unit/api/validateAddress.unit.test.js +1 -1
- package/dist/tests/unit/api/validateAddress.unit.test.js.map +1 -1
- package/dist/tests/unit/api/verifyBadDappSignature.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/verifyBadDappSignature.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/verifyBadDappSignature.unit.test.js +96 -0
- package/dist/tests/unit/api/verifyBadDappSignature.unit.test.js.map +1 -0
- package/dist/tests/unit/api/verifyMalformedToken.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/verifyMalformedToken.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/verifyMalformedToken.unit.test.js +89 -0
- package/dist/tests/unit/api/verifyMalformedToken.unit.test.js.map +1 -0
- package/dist/tests/unit/compositeIpAddress.unit.test.js +12 -3
- package/dist/tests/unit/compositeIpAddress.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/captchaManager.unit.test.js +51 -0
- package/dist/tests/unit/tasks/captchaManager.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/captchaTypeSelection.unit.test.js +20 -1
- package/dist/tests/unit/tasks/captchaTypeSelection.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/client/clientTasks.unit.test.js +33 -1
- package/dist/tests/unit/tasks/client/clientTasks.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js +14 -1
- package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.d.ts +2 -0
- package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.js +94 -0
- package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.js.map +1 -0
- package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.d.ts +2 -0
- package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.js +103 -0
- package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.js.map +1 -0
- package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js +23 -1
- package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.js +1 -4
- package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.js +10 -3
- package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.d.ts +2 -0
- package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.js +35 -0
- package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.js.map +1 -0
- package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.d.ts +2 -0
- package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.js +49 -0
- package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.js.map +1 -0
- package/dist/tests/unit/testUtils/mockProviderEnv.d.ts +17 -14
- package/dist/tests/unit/testUtils/mockProviderEnv.d.ts.map +1 -1
- package/dist/tests/unit/testUtils/mockProviderEnv.js.map +1 -1
- package/dist/tests/unit/utils/tarpitPadding.unit.test.js +118 -36
- package/dist/tests/unit/utils/tarpitPadding.unit.test.js.map +1 -1
- package/dist/utils/tarpitPadding.d.ts.map +1 -1
- package/dist/utils/tarpitPadding.js +81 -10
- package/dist/utils/tarpitPadding.js.map +1 -1
- package/package.json +105 -103
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const require_usageCounters = require("../../util/usageCounters.cjs");
|
|
2
2
|
const require_decisionMachineRunner = require("../decisionMachine/decisionMachineRunner.cjs");
|
|
3
|
+
const require_rawTlsSignalsMiddleware = require("../../api/rawTlsSignalsMiddleware.cjs");
|
|
3
4
|
const require_lang = require("../../rules/lang.cjs");
|
|
4
5
|
const require_clientMetaData = require("../../utils/clientMetaData.cjs");
|
|
5
6
|
const require_compositeIpAddress = require("../../compositeIpAddress.cjs");
|
|
@@ -202,7 +203,7 @@ var ImgCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
202
203
|
}));
|
|
203
204
|
const totalImages = storedCaptchas[0]?.items.length || 0;
|
|
204
205
|
if (require_pairs.selectionsLookScripted(pairs, inputMethods) && process.env.NODE_ENV !== "test") {
|
|
205
|
-
const writePromises = [this.db.disapproveDappUserCommitment(commitmentId,
|
|
206
|
+
const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, _prosopo_types.ResultReason.CAPTCHA_INVALID_SOLUTION, pairs)];
|
|
206
207
|
if (pendingRecord.sessionId) {
|
|
207
208
|
writePromises.push(this.updateSessionRecordWithCache(pendingRecord.sessionId, {
|
|
208
209
|
userSubmitted: true,
|
|
@@ -243,7 +244,7 @@ var ImgCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
243
244
|
}
|
|
244
245
|
await Promise.all(writePromises);
|
|
245
246
|
} else {
|
|
246
|
-
const writePromises = [this.db.disapproveDappUserCommitment(commitmentId,
|
|
247
|
+
const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, _prosopo_types.ResultReason.CAPTCHA_INVALID_SOLUTION, pairs)];
|
|
247
248
|
if (pendingRecord.sessionId) {
|
|
248
249
|
writePromises.push(this.updateSessionRecordWithCache(pendingRecord.sessionId, {
|
|
249
250
|
userSubmitted: true,
|
|
@@ -566,15 +567,7 @@ var ImgCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
566
567
|
currentUrl: sessionRecord?.currentUrl,
|
|
567
568
|
iframeUrl: sessionRecord?.iframeUrl,
|
|
568
569
|
coords: solution.coords,
|
|
569
|
-
|
|
570
|
-
synackNs: sessionRecord?.synackNs,
|
|
571
|
-
ackNs: sessionRecord?.ackNs,
|
|
572
|
-
observedTtl: sessionRecord?.observedTtl,
|
|
573
|
-
tcpMss: sessionRecord?.tcpMss,
|
|
574
|
-
tcpWscale: sessionRecord?.tcpWscale,
|
|
575
|
-
tcpOptsFlags: sessionRecord?.tcpOptsFlags,
|
|
576
|
-
tcpOptsOrder: sessionRecord?.tcpOptsOrder,
|
|
577
|
-
tcpWindow: sessionRecord?.tcpWindow,
|
|
570
|
+
...require_rawTlsSignalsMiddleware.rawTlsSignalsFromRecord(sessionRecord),
|
|
578
571
|
trafficPolicies: require_devicePlatform.deriveTrafficPolicies(trafficFilter)
|
|
579
572
|
};
|
|
580
573
|
try {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const require_usageCounters = require("../../util/usageCounters.cjs");
|
|
2
2
|
const require_decisionMachineRunner = require("../decisionMachine/decisionMachineRunner.cjs");
|
|
3
|
+
const require_rawTlsSignalsMiddleware = require("../../api/rawTlsSignalsMiddleware.cjs");
|
|
3
4
|
const require_clientMetaData = require("../../utils/clientMetaData.cjs");
|
|
4
5
|
const require_compositeIpAddress = require("../../compositeIpAddress.cjs");
|
|
5
6
|
const require_enrichDnsEvent = require("../dnsEvent/enrichDnsEvent.cjs");
|
|
@@ -209,7 +210,8 @@ var PowCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
209
210
|
let routingOutput = this.postPowContext ? await this.runPostPowRouting({
|
|
210
211
|
challengeRecord,
|
|
211
212
|
challengeSplit,
|
|
212
|
-
behavioralDataPacked: decryptedBehavioralDataPacked
|
|
213
|
+
behavioralDataPacked: decryptedBehavioralDataPacked,
|
|
214
|
+
coords
|
|
213
215
|
}) : void 0;
|
|
214
216
|
if ((escalateForMissingCoords || escalateForIpChange) && routingOutput?.captchaType !== _prosopo_types.CaptchaType.image && routingOutput?.captchaType !== _prosopo_types.CaptchaType.puzzle) routingOutput = {
|
|
215
217
|
captchaType: _prosopo_types.CaptchaType.image,
|
|
@@ -228,7 +230,7 @@ var PowCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
228
230
|
*/
|
|
229
231
|
async runPostPowRouting(args) {
|
|
230
232
|
if (!this.postPowContext) return void 0;
|
|
231
|
-
const { challengeRecord, challengeSplit, behavioralDataPacked } = args;
|
|
233
|
+
const { challengeRecord, challengeSplit, behavioralDataPacked, coords } = args;
|
|
232
234
|
if (!challengeRecord.sessionId) {
|
|
233
235
|
this.logger.debug(() => ({ msg: "Skipping post-pow routing: PoW record has no linked session" }));
|
|
234
236
|
return;
|
|
@@ -259,6 +261,8 @@ var PowCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
259
261
|
raw: {
|
|
260
262
|
...this.postPowContext.raw,
|
|
261
263
|
...behavioralDataPacked && { behavioralDataPacked },
|
|
264
|
+
...sessionRecord.mode && { mode: sessionRecord.mode },
|
|
265
|
+
coordsAllZero: require_powTasksUtils.isCoordsAllZero(coords),
|
|
262
266
|
...sessionRecord.simdReadings && { simd: sessionRecord.simdReadings },
|
|
263
267
|
...sessionRecord.currentUrl && { currentUrl: sessionRecord.currentUrl },
|
|
264
268
|
...sessionRecord.iframeUrl && { iframeUrl: sessionRecord.iframeUrl }
|
|
@@ -518,15 +522,7 @@ var PowCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
518
522
|
currentUrl: sessionRecord?.currentUrl,
|
|
519
523
|
iframeUrl: sessionRecord?.iframeUrl,
|
|
520
524
|
coords: challengeRecord.coords,
|
|
521
|
-
|
|
522
|
-
synackNs: sessionRecord?.synackNs,
|
|
523
|
-
ackNs: sessionRecord?.ackNs,
|
|
524
|
-
observedTtl: sessionRecord?.observedTtl,
|
|
525
|
-
tcpMss: sessionRecord?.tcpMss,
|
|
526
|
-
tcpWscale: sessionRecord?.tcpWscale,
|
|
527
|
-
tcpOptsFlags: sessionRecord?.tcpOptsFlags,
|
|
528
|
-
tcpOptsOrder: sessionRecord?.tcpOptsOrder,
|
|
529
|
-
tcpWindow: sessionRecord?.tcpWindow,
|
|
525
|
+
...require_rawTlsSignalsMiddleware.rawTlsSignalsFromRecord(sessionRecord),
|
|
530
526
|
trafficPolicies: require_devicePlatform.deriveTrafficPolicies(trafficFilter)
|
|
531
527
|
};
|
|
532
528
|
const decision = await this.decisionMachineRunner.decide(decisionInput, logger);
|
|
@@ -15,6 +15,8 @@ var checkPowSignature = (message, signature, address, signatureType) => {
|
|
|
15
15
|
signatureType
|
|
16
16
|
} });
|
|
17
17
|
};
|
|
18
|
+
var isCoordsAllZero = (coords) => coords !== void 0 && coords.length > 0 && coords.every((group) => group.length > 0 && group.every(([x, y]) => x === 0 && y === 0));
|
|
18
19
|
//#endregion
|
|
19
20
|
exports.checkPowSignature = checkPowSignature;
|
|
21
|
+
exports.isCoordsAllZero = isCoordsAllZero;
|
|
20
22
|
exports.validateSolution = validateSolution;
|
|
@@ -15,12 +15,12 @@ var createPuzzleBackgroundBuffer = (options = {}) => {
|
|
|
15
15
|
timer.unref?.();
|
|
16
16
|
return {
|
|
17
17
|
take() {
|
|
18
|
-
const
|
|
19
|
-
if (!
|
|
18
|
+
const background = ready.pop();
|
|
19
|
+
if (!background) {
|
|
20
20
|
starved++;
|
|
21
21
|
return require_nativeBackground.createBackgroundNative(geometry);
|
|
22
22
|
}
|
|
23
|
-
return
|
|
23
|
+
return background;
|
|
24
24
|
},
|
|
25
25
|
depth: () => ready.length,
|
|
26
26
|
starvations: () => starved,
|
|
@@ -15,15 +15,22 @@ var nativePuzzle = (() => {
|
|
|
15
15
|
* Byte-identical to `createBackground` from @prosopo/puzzle-assets given the
|
|
16
16
|
* same seed — the JS remains the reference implementation and the contract
|
|
17
17
|
* the differential test pins. Single-use is unchanged and still the caller's
|
|
18
|
-
* responsibility
|
|
19
|
-
*
|
|
18
|
+
* responsibility.
|
|
19
|
+
*
|
|
20
|
+
* The seed is returned so the challenge record can keep it and the portal can
|
|
21
|
+
* regenerate this background later. See the secrecy note in prng.ts for where
|
|
22
|
+
* it may and may not go.
|
|
20
23
|
*/
|
|
21
24
|
var createBackgroundNative = (geometry = _prosopo_puzzle_assets.DEFAULT_GEOMETRY) => {
|
|
22
25
|
const { width, height } = geometry;
|
|
26
|
+
const seed = (0, _prosopo_puzzle_assets.createSeed)();
|
|
23
27
|
return {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
28
|
+
image: {
|
|
29
|
+
data: require_metrics.measureSync("puzzle_background", () => nativePuzzle.generateBackground(seed, width, height)),
|
|
30
|
+
width,
|
|
31
|
+
height
|
|
32
|
+
},
|
|
33
|
+
seed
|
|
27
34
|
};
|
|
28
35
|
};
|
|
29
36
|
//#endregion
|
|
@@ -79,15 +79,16 @@ var isPuzzleRenderAvailable = () => {
|
|
|
79
79
|
};
|
|
80
80
|
var renderPuzzleImages = async (placement, settings = _prosopo_puzzle_assets.DEFAULT_RENDER_SETTINGS, pieceSize) => {
|
|
81
81
|
const background = (require_backgroundBuffer.getPuzzleBackgroundBuffer() ?? require_backgroundBuffer.initPuzzleBackgroundBuffer()).take();
|
|
82
|
-
|
|
83
|
-
const rendered = await require_metrics.measureSync("puzzle_render", () => (0, _prosopo_puzzle_assets.renderPuzzle)(background, placement, pieceSize !== void 0 ? {
|
|
82
|
+
const rendered = await require_metrics.measureSync("puzzle_render", () => (0, _prosopo_puzzle_assets.renderPuzzle)(background.image, placement, pieceSize !== void 0 ? {
|
|
84
83
|
..._prosopo_puzzle_assets.DEFAULT_GEOMETRY,
|
|
85
84
|
pieceSize
|
|
86
85
|
} : _prosopo_puzzle_assets.DEFAULT_GEOMETRY, settings));
|
|
87
86
|
return {
|
|
88
87
|
background: (0, _prosopo_puzzle_assets.toDataUri)(rendered.background),
|
|
89
88
|
piece: (0, _prosopo_puzzle_assets.toDataUri)(rendered.piece),
|
|
90
|
-
pieceSize: rendered.pieceSize
|
|
89
|
+
pieceSize: rendered.pieceSize,
|
|
90
|
+
backgroundSeed: background.seed.toString("hex"),
|
|
91
|
+
renderSeed: rendered.seed.toString("hex")
|
|
91
92
|
};
|
|
92
93
|
};
|
|
93
94
|
//#endregion
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const require_usageCounters = require("../../util/usageCounters.cjs");
|
|
2
2
|
const require_decisionMachineRunner = require("../decisionMachine/decisionMachineRunner.cjs");
|
|
3
|
+
const require_rawTlsSignalsMiddleware = require("../../api/rawTlsSignalsMiddleware.cjs");
|
|
3
4
|
const require_clientMetaData = require("../../utils/clientMetaData.cjs");
|
|
4
5
|
const require_compositeIpAddress = require("../../compositeIpAddress.cjs");
|
|
5
6
|
const require_enrichDnsEvent = require("../dnsEvent/enrichDnsEvent.cjs");
|
|
@@ -470,15 +471,7 @@ var PuzzleCaptchaManager = class extends require_captchaManager.CaptchaManager {
|
|
|
470
471
|
iframeUrl: sessionRecord?.iframeUrl,
|
|
471
472
|
coords: challengeRecord.coords,
|
|
472
473
|
puzzleEvents: challengeRecord.puzzleEvents,
|
|
473
|
-
|
|
474
|
-
synackNs: sessionRecord?.synackNs,
|
|
475
|
-
ackNs: sessionRecord?.ackNs,
|
|
476
|
-
observedTtl: sessionRecord?.observedTtl,
|
|
477
|
-
tcpMss: sessionRecord?.tcpMss,
|
|
478
|
-
tcpWscale: sessionRecord?.tcpWscale,
|
|
479
|
-
tcpOptsFlags: sessionRecord?.tcpOptsFlags,
|
|
480
|
-
tcpOptsOrder: sessionRecord?.tcpOptsOrder,
|
|
481
|
-
tcpWindow: sessionRecord?.tcpWindow,
|
|
474
|
+
...require_rawTlsSignalsMiddleware.rawTlsSignalsFromRecord(sessionRecord),
|
|
482
475
|
trafficPolicies: require_devicePlatform.deriveTrafficPolicies(trafficFilter)
|
|
483
476
|
};
|
|
484
477
|
const decision = await this.decisionMachineRunner.decide(decisionInput, logger);
|
|
@@ -1,22 +1,93 @@
|
|
|
1
1
|
let _prosopo_types = require("@prosopo/types");
|
|
2
2
|
//#region src/utils/tarpitPadding.ts
|
|
3
3
|
var POOL = (0, require("node:crypto").randomBytes)(Math.ceil(_prosopo_types.MAX_PAD_BYTES * 3 / 4)).toString("base64");
|
|
4
|
+
var CHUNK_BYTES = 64 * 1024;
|
|
5
|
+
var KEY_ALPHABET = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
|
6
|
+
var MIN_KEY_LENGTH = 3;
|
|
7
|
+
var MAX_KEY_LENGTH = 12;
|
|
4
8
|
var clampPadBytes = (padBytes) => padBytes && padBytes > 0 ? Math.min(Math.floor(padBytes), _prosopo_types.MAX_PAD_BYTES) : 0;
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
const
|
|
9
|
+
var isPlainObject = (body) => typeof body === "object" && body !== null && !Array.isArray(body);
|
|
10
|
+
var bodyMembers = (body) => {
|
|
11
|
+
const serialised = JSON.stringify(body);
|
|
12
|
+
if (serialised === void 0 || !serialised.startsWith("{")) return void 0;
|
|
13
|
+
const normalised = JSON.parse(serialised);
|
|
14
|
+
return Object.entries(normalised).map(([key, value]) => ({
|
|
15
|
+
key,
|
|
16
|
+
encoded: `${JSON.stringify(key)}:${JSON.stringify(value)}`
|
|
17
|
+
}));
|
|
18
|
+
};
|
|
19
|
+
var randomKey = (taken) => {
|
|
20
|
+
for (;;) {
|
|
21
|
+
const length = MIN_KEY_LENGTH + Math.floor(Math.random() * (MAX_KEY_LENGTH - MIN_KEY_LENGTH + 1));
|
|
22
|
+
let key = "";
|
|
23
|
+
for (let index = 0; index < length; index++) key += KEY_ALPHABET.charAt(Math.floor(Math.random() * KEY_ALPHABET.length));
|
|
24
|
+
if (!taken.has(key)) {
|
|
25
|
+
taken.add(key);
|
|
26
|
+
return key;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
var partition = (total, parts) => {
|
|
31
|
+
const cuts = [0, total];
|
|
32
|
+
for (let index = 1; index < parts; index++) cuts.push(Math.floor(Math.random() * (total + 1)));
|
|
33
|
+
cuts.sort((a, b) => a - b);
|
|
34
|
+
const sizes = [];
|
|
35
|
+
for (let index = 1; index < cuts.length; index++) sizes.push((cuts[index] ?? 0) - (cuts[index - 1] ?? 0));
|
|
36
|
+
return sizes;
|
|
37
|
+
};
|
|
38
|
+
var awaitDrain = (res) => new Promise((resolve) => {
|
|
39
|
+
const settle = (drained) => {
|
|
40
|
+
res.removeListener("drain", onDrain);
|
|
41
|
+
res.removeListener("close", onClose);
|
|
42
|
+
resolve(drained);
|
|
43
|
+
};
|
|
44
|
+
const onDrain = () => settle(true);
|
|
45
|
+
const onClose = () => settle(false);
|
|
46
|
+
res.once("drain", onDrain);
|
|
47
|
+
res.once("close", onClose);
|
|
48
|
+
});
|
|
49
|
+
var write = async (res, chunk) => {
|
|
50
|
+
if (res.writableEnded || res.destroyed) return false;
|
|
51
|
+
return res.write(chunk) ? true : await awaitDrain(res);
|
|
52
|
+
};
|
|
53
|
+
var writePad = async (res, size) => {
|
|
54
|
+
const offset = Math.floor(Math.random() * (POOL.length - size + 1));
|
|
55
|
+
for (let written = 0; written < size; written += CHUNK_BYTES) {
|
|
56
|
+
const from = offset + written;
|
|
57
|
+
const to = offset + Math.min(written + CHUNK_BYTES, size);
|
|
58
|
+
if (!await write(res, POOL.slice(from, to))) return false;
|
|
59
|
+
}
|
|
60
|
+
return true;
|
|
61
|
+
};
|
|
62
|
+
var streamWithPad = async (res, members, total) => {
|
|
63
|
+
const segments = Math.max(members.length, 1);
|
|
64
|
+
const sizes = partition(total, segments);
|
|
65
|
+
const taken = new Set(members.map((member) => member.key));
|
|
8
66
|
res.setHeader("content-type", "application/json; charset=utf-8");
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
67
|
+
let separator = "{";
|
|
68
|
+
for (let index = 0; index < segments; index++) {
|
|
69
|
+
if (!await write(res, `${separator}"${randomKey(taken)}":"`)) return;
|
|
70
|
+
if (!await writePad(res, sizes[index] ?? 0)) return;
|
|
71
|
+
const member = members[index];
|
|
72
|
+
if (!await write(res, member ? `",${member.encoded}` : "\"")) return;
|
|
73
|
+
separator = ",";
|
|
74
|
+
}
|
|
75
|
+
if (!await write(res, "}")) return;
|
|
76
|
+
res.end();
|
|
13
77
|
};
|
|
14
|
-
var isPlainObject = (body) => typeof body === "object" && body !== null && !Array.isArray(body);
|
|
15
78
|
var padResponseMiddleware = (_req, res, next) => {
|
|
16
79
|
const originalJson = res.json.bind(res);
|
|
17
80
|
res.json = (body) => {
|
|
18
|
-
const
|
|
19
|
-
|
|
81
|
+
const total = clampPadBytes(res.locals.padBytes);
|
|
82
|
+
if (total === 0 || !isPlainObject(body)) return originalJson(body);
|
|
83
|
+
const members = bodyMembers(body);
|
|
84
|
+
if (members === void 0) return originalJson(body);
|
|
85
|
+
const swallow = () => void 0;
|
|
86
|
+
res.on("error", swallow);
|
|
87
|
+
streamWithPad(res, members, total).catch(() => {
|
|
88
|
+
if (!res.destroyed) res.destroy();
|
|
89
|
+
}).finally(() => res.removeListener("error", swallow));
|
|
90
|
+
return res;
|
|
20
91
|
};
|
|
21
92
|
next();
|
|
22
93
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compositeIpAddress.d.ts","sourceRoot":"","sources":["../src/compositeIpAddress.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"compositeIpAddress.d.ts","sourceRoot":"","sources":["../src/compositeIpAddress.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,gBAAgB,CAAC;AAaxE,eAAO,MAAM,qBAAqB,OAC7B,MAAM,GAAG,SAAS,KACpB,kBAaF,CAAC;AAuBF,eAAO,MAAM,yBAAyB,uBACjB,kBAAkB,KACpC,SAaF,CAAC;AAgDF,eAAO,MAAM,cAAc,MACvB,kBAAkB,KAClB,kBAAkB,KACnB,OAoBF,CAAC"}
|
|
@@ -4,6 +4,11 @@ import { Address4, Address6 } from "ip-address";
|
|
|
4
4
|
//#region src/compositeIpAddress.ts
|
|
5
5
|
var V6_SHIFT = 64n;
|
|
6
6
|
var v6_LOWER_MASK = (1n << V6_SHIFT) - 1n;
|
|
7
|
+
/**
|
|
8
|
+
* The part of a v4 address treated as the host rather than the network, for
|
|
9
|
+
* the purposes of `isSameIpOrigin`. 8 bits — a /24.
|
|
10
|
+
*/
|
|
11
|
+
var V4_HOST_BITS = 8n;
|
|
7
12
|
var getCompositeIpAddress = (ip) => {
|
|
8
13
|
let ipAddress;
|
|
9
14
|
try {
|
|
@@ -60,10 +65,19 @@ var isUnknownIp = (ip) => ip.type === IpAddressType.v4 && readPart(ip.lower) ===
|
|
|
60
65
|
/**
|
|
61
66
|
* Do two observations of a client come from the same place on the network?
|
|
62
67
|
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
68
|
+
* Both families are compared on the network part and neither on the host part.
|
|
69
|
+
*
|
|
70
|
+
* v6 is the /64 prefix: the interface identifier in the low 64 bits is designed
|
|
71
|
+
* to rotate (RFC 8981 privacy extensions), often several times a day on one
|
|
72
|
+
* unchanged connection, so comparing it would call an ordinary phone a
|
|
73
|
+
* different host.
|
|
74
|
+
*
|
|
75
|
+
* v4 is the /24. A carrier NAT or mobile pool reassigns the low octet mid
|
|
76
|
+
* session — an EE subscriber was observed moving one address in four seconds —
|
|
77
|
+
* so comparing the whole address called every rotating mobile and CGNAT client
|
|
78
|
+
* a different host, which is the opposite of the leniency this check is for.
|
|
79
|
+
* The /24 still separates an unrelated network, which is the case worth
|
|
80
|
+
* catching: a challenge handed to a second host to farm the work out.
|
|
67
81
|
*
|
|
68
82
|
* A value we do not actually have counts as the same — one that will not
|
|
69
83
|
* parse, or the all-zero v4 `getCompositeIpAddress` returns when handed an
|
|
@@ -73,13 +87,13 @@ var isUnknownIp = (ip) => ip.type === IpAddressType.v4 && readPart(ip.lower) ===
|
|
|
73
87
|
var isSameIpOrigin = (a, b) => {
|
|
74
88
|
if (isUnknownIp(a) || isUnknownIp(b)) return true;
|
|
75
89
|
if (a.type !== b.type) return false;
|
|
76
|
-
const
|
|
90
|
+
const sameNetwork = (left, right, hostBits) => {
|
|
77
91
|
const leftPart = readPart(left);
|
|
78
92
|
const rightPart = readPart(right);
|
|
79
93
|
if (leftPart === void 0 || rightPart === void 0) return true;
|
|
80
|
-
return leftPart === rightPart;
|
|
94
|
+
return leftPart >> hostBits === rightPart >> hostBits;
|
|
81
95
|
};
|
|
82
|
-
return a.type === IpAddressType.v6 ?
|
|
96
|
+
return a.type === IpAddressType.v6 ? sameNetwork(a.upper, b.upper, 0n) : sameNetwork(a.lower, b.lower, V4_HOST_BITS);
|
|
83
97
|
};
|
|
84
98
|
var never = () => {
|
|
85
99
|
throw new Error("Unhandled type");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compositeIpAddress.js","sourceRoot":"","sources":["../src/compositeIpAddress.ts"],"names":[],"mappings":"AAeA,OAAO,EAA2B,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,QAAQ,GAAG,GAAG,CAAC;AACrB,MAAM,aAAa,GAAG,CAAC,EAAE,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"compositeIpAddress.js","sourceRoot":"","sources":["../src/compositeIpAddress.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captchaManager.d.ts","sourceRoot":"","sources":["../../src/tasks/captchaManager.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,KAAK,MAAM,EAAa,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAEN,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EAEnB,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,IAAI,EAEJ,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"captchaManager.d.ts","sourceRoot":"","sources":["../../src/tasks/captchaManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { checkTrafficFilter } from "./spam/checkTrafficFilter.js";
|
|
|
6
6
|
import { extraIpInfosFromEnrichedDnsEvent } from "./dnsEvent/enrichDnsEvent.js";
|
|
7
7
|
import { checkSpamEmail } from "./spam/checkSpamEmail.js";
|
|
8
8
|
import { getLogger } from "@prosopo/logger";
|
|
9
|
-
import { ApiParams, ResultReason, Tier, TrafficFilterAction } from "@prosopo/types";
|
|
9
|
+
import { ApiParams, ResultReason, Tier, TrafficFilterAction, isCaptchaTypeFeatureEnabled } from "@prosopo/types";
|
|
10
10
|
import { AccessPolicyType } from "@prosopo/user-access-policy";
|
|
11
11
|
//#region src/tasks/captchaManager.ts
|
|
12
12
|
/**
|
|
@@ -225,6 +225,21 @@ var CaptchaManager = class CaptchaManager {
|
|
|
225
225
|
sessionId
|
|
226
226
|
}
|
|
227
227
|
}));
|
|
228
|
+
if (!isCaptchaTypeFeatureEnabled(requestedCaptchaType, clientSettings.settings?.captchaTypeFeatureFlags)) {
|
|
229
|
+
this.logger.warn(() => ({
|
|
230
|
+
msg: "Captcha type is switched off for this site",
|
|
231
|
+
data: {
|
|
232
|
+
account: clientSettings.account,
|
|
233
|
+
requestedCaptchaType,
|
|
234
|
+
sessionId
|
|
235
|
+
}
|
|
236
|
+
}));
|
|
237
|
+
return {
|
|
238
|
+
valid: false,
|
|
239
|
+
reason: ResultReason.INCORRECT_CAPTCHA_TYPE,
|
|
240
|
+
type: requestedCaptchaType
|
|
241
|
+
};
|
|
242
|
+
}
|
|
228
243
|
if (sessionId) {
|
|
229
244
|
const cachedBeforeRemove = this.writeQueue ? await this.writeQueue.getCachedSession(sessionId) : null;
|
|
230
245
|
const cachedHash = typeof cachedBeforeRemove?.userSitekeyIpHash === "string" ? cachedBeforeRemove.userSitekeyIpHash : void 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captchaManager.js","sourceRoot":"","sources":["../../src/tasks/captchaManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"captchaManager.js","sourceRoot":"","sources":["../../src/tasks/captchaManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { Logger } from "@prosopo/logger";
|
|
2
2
|
import { CaptchaType, type IFrictionlessTypes } from "@prosopo/types";
|
|
3
3
|
export type ConcreteCaptchaType = CaptchaType.pow | CaptchaType.image | CaptchaType.puzzle;
|
|
4
|
-
export declare const coerceToEnabledCaptchaType: (requested: ConcreteCaptchaType,
|
|
4
|
+
export declare const coerceToEnabledCaptchaType: (requested: ConcreteCaptchaType, allowedTypes: Partial<IFrictionlessTypes> | undefined, logger?: Logger) => ConcreteCaptchaType;
|
|
5
|
+
export declare const PUZZLE_REFRESHES_BEFORE_IMAGE = 3;
|
|
6
|
+
export declare const switchTypeAfterRefreshes: (resolved: ConcreteCaptchaType, refreshCount: number | undefined, allowedTypes: Partial<IFrictionlessTypes> | undefined) => ConcreteCaptchaType;
|
|
5
7
|
//# sourceMappingURL=captchaTypeSelection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captchaTypeSelection.d.ts","sourceRoot":"","sources":["../../src/tasks/captchaTypeSelection.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,WAAW,EACX,KAAK,kBAAkB,EAEvB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,mBAAmB,GAC5B,WAAW,CAAC,GAAG,GACf,WAAW,CAAC,KAAK,GACjB,WAAW,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"captchaTypeSelection.d.ts","sourceRoot":"","sources":["../../src/tasks/captchaTypeSelection.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,WAAW,EACX,KAAK,kBAAkB,EAEvB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,mBAAmB,GAC5B,WAAW,CAAC,GAAG,GACf,WAAW,CAAC,KAAK,GACjB,WAAW,CAAC,MAAM,CAAC;AA2BtB,eAAO,MAAM,0BAA0B,cAC3B,mBAAmB,gBAChB,OAAO,CAAC,kBAAkB,CAAC,GAAG,SAAS,WAC5C,MAAM,KACb,mBAsCF,CAAC;AAMF,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAiB/C,eAAO,MAAM,wBAAwB,aAC1B,mBAAmB,gBACf,MAAM,GAAG,SAAS,gBAClB,OAAO,CAAC,kBAAkB,CAAC,GAAG,SAAS,KACnD,mBAKS,CAAC"}
|
|
@@ -18,12 +18,16 @@ import { CaptchaType, resolveFrictionlessTypes } from "@prosopo/types";
|
|
|
18
18
|
* Restrict rules, traffic-filter category policies, routing-machine actions
|
|
19
19
|
* and detector-generated rules.
|
|
20
20
|
*
|
|
21
|
+
* Pass `allowedTypes` from `resolveAllowedCaptchaTypes`, so Prosopo's
|
|
22
|
+
* per-site captcha type feature flags are applied alongside the site owner's
|
|
23
|
+
* own `frictionlessTypes`. Absent means every type is allowed.
|
|
24
|
+
*
|
|
21
25
|
* Coercion only ever narrows. A disabled type falls back to the other
|
|
22
26
|
* interactive type if that is permitted, and to PoW otherwise — never the
|
|
23
27
|
* reverse, so this can't hand a user a harder challenge than was asked for.
|
|
24
28
|
*/
|
|
25
|
-
var coerceToEnabledCaptchaType = (requested,
|
|
26
|
-
const types = resolveFrictionlessTypes(
|
|
29
|
+
var coerceToEnabledCaptchaType = (requested, allowedTypes, logger) => {
|
|
30
|
+
const types = resolveFrictionlessTypes(allowedTypes);
|
|
27
31
|
const puzzleAllowed = types.puzzle && isPuzzleRenderAvailable();
|
|
28
32
|
const imageAllowed = types.image;
|
|
29
33
|
const resolved = (() => {
|
|
@@ -49,5 +53,21 @@ var coerceToEnabledCaptchaType = (requested, frictionlessTypes, logger) => {
|
|
|
49
53
|
}));
|
|
50
54
|
return resolved;
|
|
51
55
|
};
|
|
56
|
+
/**
|
|
57
|
+
* Swap a puzzle for an image challenge once the user has refreshed it
|
|
58
|
+
* `PUZZLE_REFRESHES_BEFORE_IMAGE` times in a row.
|
|
59
|
+
*
|
|
60
|
+
* A user who keeps refreshing either cannot solve this kind of puzzle or is a
|
|
61
|
+
* solver shopping for an easy instance. The image challenge answers both.
|
|
62
|
+
*
|
|
63
|
+
* The refresh count is client-reported, so this only moves one way: from
|
|
64
|
+
* puzzle to image, never back. Lying about it can only earn a harder
|
|
65
|
+
* challenge. Leaving it out looks like a fresh visit, which is what a page
|
|
66
|
+
* reload already gets.
|
|
67
|
+
*
|
|
68
|
+
* A site that has not enabled image keeps its puzzle. Serving a type the site
|
|
69
|
+
* turned off is exactly what `coerceToEnabledCaptchaType` exists to stop.
|
|
70
|
+
*/
|
|
71
|
+
var switchTypeAfterRefreshes = (resolved, refreshCount, allowedTypes) => CaptchaType.puzzle === resolved && (refreshCount ?? 0) >= 3 && resolveFrictionlessTypes(allowedTypes).image ? CaptchaType.image : resolved;
|
|
52
72
|
//#endregion
|
|
53
|
-
export { coerceToEnabledCaptchaType };
|
|
73
|
+
export { coerceToEnabledCaptchaType, switchTypeAfterRefreshes };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captchaTypeSelection.js","sourceRoot":"","sources":["../../src/tasks/captchaTypeSelection.ts"],"names":[],"mappings":"AAeA,OAAO,EACN,WAAW,EAEX,wBAAwB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"captchaTypeSelection.js","sourceRoot":"","sources":["../../src/tasks/captchaTypeSelection.ts"],"names":[],"mappings":"AAeA,OAAO,EACN,WAAW,EAEX,wBAAwB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAiCrE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACzC,SAA8B,EAC9B,YAAqD,EACrD,MAAe,EACO,EAAE;IACxB,MAAM,KAAK,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAKrD,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,IAAI,uBAAuB,EAAE,CAAC;IAChE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC;IAEjC,MAAM,QAAQ,GAAG,CAAC,GAAwB,EAAE;QAC3C,QAAQ,SAAS,EAAE,CAAC;YACnB,KAAK,WAAW,CAAC,GAAG;gBAGnB,OAAO,WAAW,CAAC,GAAG,CAAC;YACxB,KAAK,WAAW,CAAC,MAAM;gBACtB,IAAI,aAAa;oBAAE,OAAO,WAAW,CAAC,MAAM,CAAC;gBAC7C,OAAO,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC;YAC3D,KAAK,WAAW,CAAC,KAAK;gBACrB,IAAI,YAAY;oBAAE,OAAO,WAAW,CAAC,KAAK,CAAC;gBAC3C,OAAO,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC;QAC9D,CAAC;IACF,CAAC,CAAC,EAAE,CAAC;IAEL,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACnB,GAAG,EAAE,yCAAyC;YAC9C,IAAI,EAAE;gBACL,SAAS;gBACT,MAAM,EAAE,QAAQ;gBAChB,YAAY,EAAE,KAAK,CAAC,KAAK;gBACzB,aAAa,EAAE,KAAK,CAAC,MAAM;gBAC3B,gBAAgB,EAAE,uBAAuB,EAAE;aAC3C;SACD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAiB/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACvC,QAA6B,EAC7B,YAAgC,EAChC,YAAqD,EAC/B,EAAE,CACxB,WAAW,CAAC,MAAM,KAAK,QAAQ;IAC/B,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,6BAA6B;IACpD,wBAAwB,CAAC,YAAY,CAAC,CAAC,KAAK;IAC3C,CAAC,CAAC,WAAW,CAAC,KAAK;IACnB,CAAC,CAAC,QAAQ,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { CaptchaDatabase } from "@prosopo/database";
|
|
|
2
2
|
import type { Logger } from "@prosopo/logger";
|
|
3
3
|
import { type DecisionMachineCaptchaType, type DecisionMachineKind, type DecisionMachineLanguage, type DecisionMachineRuntime, DecisionMachineScope, type IUserSettings, type ProsopoConfigOutput, type Tier } from "@prosopo/types";
|
|
4
4
|
import type { IProviderDatabase } from "@prosopo/types-database";
|
|
5
|
+
export declare const matchesGlob: (pattern: string, text: string) => boolean;
|
|
5
6
|
export declare class ClientTaskManager {
|
|
6
7
|
config: ProsopoConfigOutput;
|
|
7
8
|
logger: Logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/client/clientTasks.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAkB,MAAM,mBAAmB,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,oBAAoB,EACpB,KAAK,aAAa,EAElB,KAAK,mBAAmB,EAGxB,KAAK,IAAI,EAET,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAEX,iBAAiB,EAEjB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"clientTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/client/clientTasks.ts"],"names":[],"mappings":"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"}
|