@prosopo/provider 5.0.0 → 5.0.3
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 +15 -15
- package/.turbo/turbo-build$colon$tsc.log +24 -24
- package/.turbo/turbo-build.log +16 -16
- package/CHANGELOG.md +99 -0
- package/dist/api/captcha/assignDetectorBundle.d.ts.map +1 -1
- package/dist/api/captcha/assignDetectorBundle.js +2 -3
- package/dist/api/captcha/assignDetectorBundle.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.d.ts +2 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.d.ts.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.d.ts +1 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.d.ts.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.js +38 -0
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.d.ts.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js +9 -6
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.d.ts +2 -2
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.d.ts.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js +34 -37
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.powFallback.test.js +11 -20
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.powFallback.test.js.map +1 -1
- package/dist/api/captcha/submitPoWCaptchaSolution.d.ts.map +1 -1
- package/dist/api/captcha/submitPoWCaptchaSolution.js +1 -1
- package/dist/api/captcha/submitPoWCaptchaSolution.js.map +1 -1
- package/dist/api/startProviderApi.d.ts.map +1 -1
- package/dist/api/startProviderApi.js +29 -14
- package/dist/api/startProviderApi.js.map +1 -1
- package/dist/api/verify.d.ts.map +1 -1
- package/dist/api/verify.js +1 -1
- package/dist/api/verify.js.map +1 -1
- package/dist/cjs/api/captcha/assignDetectorBundle.cjs +2 -3
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.cjs +38 -0
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs +8 -5
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.cjs +34 -37
- package/dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs +1 -1
- package/dist/cjs/api/startProviderApi.cjs +29 -14
- package/dist/cjs/api/verify.cjs +1 -1
- package/dist/cjs/tasks/captchaManager.cjs +60 -14
- package/dist/cjs/tasks/frictionless/frictionlessTasks.cjs +2 -1
- package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +32 -2
- package/dist/cjs/tasks/powCaptcha/powTasks.cjs +32 -2
- package/dist/cjs/tasks/puzzleCaptcha/puzzleTasks.cjs +35 -3
- package/dist/cjs/tasks/spam/evaluateEmailSpamRules.cjs +23 -0
- package/dist/tasks/captchaManager.d.ts +1 -0
- package/dist/tasks/captchaManager.d.ts.map +1 -1
- package/dist/tasks/captchaManager.js +60 -14
- package/dist/tasks/captchaManager.js.map +1 -1
- package/dist/tasks/frictionless/frictionlessTasks.d.ts +1 -1
- package/dist/tasks/frictionless/frictionlessTasks.d.ts.map +1 -1
- package/dist/tasks/frictionless/frictionlessTasks.js +2 -1
- package/dist/tasks/frictionless/frictionlessTasks.js.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +33 -3
- 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 +33 -3
- package/dist/tasks/powCaptcha/powTasks.js.map +1 -1
- package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts +2 -2
- package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts.map +1 -1
- package/dist/tasks/puzzleCaptcha/puzzleTasks.js +35 -3
- package/dist/tasks/puzzleCaptcha/puzzleTasks.js.map +1 -1
- package/dist/tasks/spam/evaluateEmailSpamRules.d.ts +1 -0
- package/dist/tasks/spam/evaluateEmailSpamRules.d.ts.map +1 -1
- package/dist/tasks/spam/evaluateEmailSpamRules.js +23 -1
- package/dist/tasks/spam/evaluateEmailSpamRules.js.map +1 -1
- package/dist/tests/integration/clientSettingsPersistence.integration.test.js +23 -1
- package/dist/tests/integration/clientSettingsPersistence.integration.test.js.map +1 -1
- package/dist/tests/integration/decisionMachines.integration.test.js +3 -56
- package/dist/tests/integration/decisionMachines.integration.test.js.map +1 -1
- package/dist/tests/integration/escalationPeekBeforeConsume.integration.test.js +2 -2
- package/dist/tests/integration/escalationPeekBeforeConsume.integration.test.js.map +1 -1
- package/dist/tests/integration/imgCaptcha.integration.test.js +3 -56
- package/dist/tests/integration/imgCaptcha.integration.test.js.map +1 -1
- package/dist/tests/integration/maintenanceModeAdmin.integration.test.js +2 -1
- package/dist/tests/integration/maintenanceModeAdmin.integration.test.js.map +1 -1
- package/dist/tests/integration/powCaptcha.integration.test.js +3 -56
- package/dist/tests/integration/powCaptcha.integration.test.js.map +1 -1
- package/dist/tests/integration/routingDecisionMachines.integration.test.js +2 -2
- package/dist/tests/integration/routingDecisionMachines.integration.test.js.map +1 -1
- package/dist/tests/integration/testUtils.d.ts +1 -0
- package/dist/tests/integration/testUtils.d.ts.map +1 -1
- package/dist/tests/integration/testUtils.js +14 -0
- package/dist/tests/integration/testUtils.js.map +1 -1
- package/dist/tests/integration/testUtils.unit.test.d.ts +2 -0
- package/dist/tests/integration/testUtils.unit.test.d.ts.map +1 -0
- package/dist/tests/integration/testUtils.unit.test.js +30 -0
- package/dist/tests/integration/testUtils.unit.test.js.map +1 -0
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.unit.test.js +50 -0
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.unit.test.js.map +1 -1
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.unit.test.js +53 -1
- package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/captchaManager.unit.test.js +178 -0
- package/dist/tests/unit/tasks/captchaManager.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js +99 -0
- package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js +108 -0
- package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/puzzleCaptcha/puzzleTasks.unit.test.js +102 -0
- package/dist/tests/unit/tasks/puzzleCaptcha/puzzleTasks.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/spam/evaluateEmailSpamRules.unit.test.js +37 -1
- package/dist/tests/unit/tasks/spam/evaluateEmailSpamRules.unit.test.js.map +1 -1
- package/package.json +19 -19
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/provider@5.0.
|
|
2
|
+
> @prosopo/provider@5.0.3 build:cjs
|
|
3
3
|
> NODE_ENV=${NODE_ENV:-development}; vite build --config vite.cjs.config.ts --mode $NODE_ENV
|
|
4
4
|
|
|
5
5
|
ViteCommonJSConfig: .
|
|
@@ -107,7 +107,7 @@ dist/cjs/api/admin/apiToggleMaintenanceModeEndpoint.cjs 1
|
|
|
107
107
|
dist/cjs/utils/honeypot/phraseBank.cjs 1.87 kB │ gzip: 0.91 kB
|
|
108
108
|
dist/cjs/api/handshakeTimingMiddleware.cjs 1.88 kB │ gzip: 0.71 kB
|
|
109
109
|
dist/cjs/api/admin/apiClearAllCountersEndpoint.cjs 2.01 kB │ gzip: 0.78 kB
|
|
110
|
-
dist/cjs/api/captcha/assignDetectorBundle.cjs 2.
|
|
110
|
+
dist/cjs/api/captcha/assignDetectorBundle.cjs 2.03 kB │ gzip: 0.86 kB
|
|
111
111
|
dist/cjs/tasks/spam/updateSpamEmailDomains.cjs 2.12 kB │ gzip: 0.85 kB
|
|
112
112
|
dist/cjs/tasks/frictionless/routingMachine.cjs 2.17 kB │ gzip: 0.91 kB
|
|
113
113
|
dist/cjs/api/public.cjs 2.18 kB │ gzip: 0.91 kB
|
|
@@ -117,12 +117,12 @@ dist/cjs/utils/dns.cjs 2
|
|
|
117
117
|
dist/cjs/api/forwardVerify.cjs 2.66 kB │ gzip: 1.12 kB
|
|
118
118
|
dist/cjs/api/captcha/checkSpamEmail.cjs 2.73 kB │ gzip: 0.95 kB
|
|
119
119
|
dist/cjs/api/captcha/submitPuzzleCaptchaSolution.cjs 2.77 kB │ gzip: 0.99 kB
|
|
120
|
-
dist/cjs/tasks/spam/evaluateEmailSpamRules.cjs 2.92 kB │ gzip: 1.21 kB
|
|
121
120
|
dist/cjs/api/captcha/submitImageCaptchaSolution.cjs 2.93 kB │ gzip: 1.03 kB
|
|
122
121
|
dist/cjs/api/admin/apiAdminRoutesProvider.cjs 3.48 kB │ gzip: 0.59 kB
|
|
123
|
-
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.cjs 3.
|
|
122
|
+
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.cjs 3.57 kB │ gzip: 1.33 kB
|
|
124
123
|
dist/cjs/api/domainMiddleware.cjs 3.85 kB │ gzip: 1.26 kB
|
|
125
124
|
dist/cjs/services/ipComparison.cjs 3.98 kB │ gzip: 1.20 kB
|
|
125
|
+
dist/cjs/tasks/spam/evaluateEmailSpamRules.cjs 4.03 kB │ gzip: 1.60 kB
|
|
126
126
|
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/accessPolicy.cjs 4.13 kB │ gzip: 0.98 kB
|
|
127
127
|
dist/cjs/tasks/spam/checkSpamEmail.cjs 4.14 kB │ gzip: 1.14 kB
|
|
128
128
|
dist/cjs/api/hardBlockVerdictCache.cjs 4.21 kB │ gzip: 1.67 kB
|
|
@@ -135,28 +135,28 @@ dist/cjs/api/captcha/getPoWCaptchaChallenge.cjs 5
|
|
|
135
135
|
dist/cjs/tasks/spam/checkTrafficFilter.cjs 5.82 kB │ gzip: 2.06 kB
|
|
136
136
|
dist/cjs/api/captcha/getImageCaptchaChallenge.cjs 6.06 kB │ gzip: 1.82 kB
|
|
137
137
|
dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs 6.08 kB │ gzip: 1.73 kB
|
|
138
|
-
dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs 6.
|
|
138
|
+
dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs 6.52 kB │ gzip: 2.12 kB
|
|
139
139
|
dist/cjs/api/ja4.cjs 7.11 kB │ gzip: 2.25 kB
|
|
140
140
|
dist/cjs/api/metrics.cjs 7.51 kB │ gzip: 2.12 kB
|
|
141
141
|
dist/cjs/tasks/detection/bundlePool.cjs 8.72 kB │ gzip: 3.26 kB
|
|
142
142
|
dist/cjs/tasks/decisionMachine/decisionMachineRunner.cjs 9.67 kB │ gzip: 2.91 kB
|
|
143
|
-
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.cjs
|
|
144
|
-
dist/cjs/api/startProviderApi.cjs
|
|
143
|
+
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.cjs 11.45 kB │ gzip: 2.16 kB
|
|
144
|
+
dist/cjs/api/startProviderApi.cjs 11.46 kB │ gzip: 3.67 kB
|
|
145
145
|
dist/cjs/api/blacklistRequestInspector.cjs 12.12 kB │ gzip: 4.23 kB
|
|
146
146
|
dist/cjs/tasks/client/clientTasks.cjs 12.86 kB │ gzip: 3.10 kB
|
|
147
|
-
dist/cjs/api/verify.cjs 13.
|
|
147
|
+
dist/cjs/api/verify.cjs 13.29 kB │ gzip: 2.55 kB
|
|
148
148
|
dist/cjs/util.cjs 13.60 kB │ gzip: 3.22 kB
|
|
149
|
-
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs 15.
|
|
150
|
-
dist/cjs/tasks/frictionless/frictionlessTasks.cjs 16.
|
|
151
|
-
dist/cjs/tasks/
|
|
152
|
-
dist/cjs/tasks/
|
|
153
|
-
dist/cjs/tasks/powCaptcha/powTasks.cjs
|
|
154
|
-
dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs
|
|
149
|
+
dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs 15.34 kB │ gzip: 3.76 kB
|
|
150
|
+
dist/cjs/tasks/frictionless/frictionlessTasks.cjs 16.06 kB │ gzip: 4.32 kB
|
|
151
|
+
dist/cjs/tasks/puzzleCaptcha/puzzleTasks.cjs 20.09 kB │ gzip: 4.58 kB
|
|
152
|
+
dist/cjs/tasks/captchaManager.cjs 21.08 kB │ gzip: 6.04 kB
|
|
153
|
+
dist/cjs/tasks/powCaptcha/powTasks.cjs 22.37 kB │ gzip: 5.48 kB
|
|
154
|
+
dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs 26.33 kB │ gzip: 6.09 kB
|
|
155
155
|
dist/cjs/tasks/detection/decodeBehavior.cjs 32.24 kB │ gzip: 10.32 kB
|
|
156
156
|
dist/cjs/tasks/detection/decodeSimd.cjs 36.03 kB │ gzip: 11.96 kB
|
|
157
157
|
dist/cjs/tasks/detection/decodePayload.cjs 46.70 kB │ gzip: 14.64 kB
|
|
158
158
|
|
|
159
|
-
[32m✓ built in
|
|
159
|
+
[32m✓ built in 162ms[39m
|
|
160
160
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeBehavior.js to /home/runner/work/captcha/captcha/packages/provider/dist/cjs/tasks/detection/decodeBehavior.js
|
|
161
161
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodePayload.js to /home/runner/work/captcha/captcha/packages/provider/dist/cjs/tasks/detection/decodePayload.js
|
|
162
162
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeSimd.js to /home/runner/work/captcha/captcha/packages/provider/dist/cjs/tasks/detection/decodeSimd.js
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/provider@5.0.
|
|
2
|
+
> @prosopo/provider@5.0.3 build:tsc
|
|
3
3
|
> tsc --build --verbose
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
5:53:58 PM - Projects in this build:
|
|
6
6
|
* ../../dev/config/tsconfig.json
|
|
7
7
|
* ../util/tsconfig.json
|
|
8
8
|
* ../logger/tsconfig.json
|
|
@@ -25,47 +25,47 @@
|
|
|
25
25
|
* ../load-balancer/tsconfig.json
|
|
26
26
|
* tsconfig.json
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
5:53:58 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
5:53:58 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
5:53:58 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
5:53:58 PM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/apiRoutes.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
5:53:58 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
5:53:58 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
5:53:58 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/types.test-d.ts' is older than output '../types/tsconfig.tsbuildinfo'
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
5:53:58 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/error.ts' is older than output '../common/tsconfig.tsbuildinfo'
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
5:53:58 PM - Project '../ipinfo/tsconfig.json' is up to date because newest input '../ipinfo/src/IpInfoService.ts' is older than output '../ipinfo/tsconfig.tsbuildinfo'
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
5:53:58 PM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/redisClient.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
5:53:58 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
5:53:58 PM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/ruleRecord.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
5:53:58 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/types/captcha.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
5:53:58 PM - Project '../database/tsconfig.json' is up to date because newest input '../database/src/tests/unit/redisCacheEscalation.unit.test.ts' is older than output '../database/tsconfig.tsbuildinfo'
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
5:53:59 PM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/keyring/keyring.test.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
5:53:59 PM - Project '../types-env/tsconfig.json' is up to date because newest input '../types-env/src/env.ts' is older than output '../types-env/tsconfig.tsbuildinfo'
|
|
59
59
|
|
|
60
|
-
|
|
60
|
+
5:53:59 PM - Project '../env/tsconfig.json' is up to date because newest input '../env/src/index.ts' is older than output '../env/tsconfig.tsbuildinfo'
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
5:53:59 PM - Project '../api-express-router/tsconfig.json' is up to date because newest input '../api-express-router/src/middlewares/requestLoggerMiddleware.ts' is older than output '../api-express-router/tsconfig.tsbuildinfo'
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
5:53:59 PM - Project '../datasets/tsconfig.json' is up to date because newest input '../datasets/src/index.ts' is older than output '../datasets/tsconfig.tsbuildinfo'
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
5:53:59 PM - Project '../load-balancer/tsconfig.json' is up to date because newest input '../load-balancer/src/balancer.ts' is older than output '../load-balancer/tsconfig.tsbuildinfo'
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
5:53:59 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
5:53:59 PM - Building project '/home/runner/work/captcha/captcha/packages/provider/tsconfig.json'...
|
|
71
71
|
|
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/provider@5.0.
|
|
2
|
+
> @prosopo/provider@5.0.3 build
|
|
3
3
|
> npm run build:cross-env -- --mode ${NODE_ENV:-development}
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @prosopo/provider@5.0.
|
|
6
|
+
> @prosopo/provider@5.0.3 build:cross-env
|
|
7
7
|
> vite build --config vite.esm.config.ts --mode production
|
|
8
8
|
|
|
9
9
|
ViteEsmConfig: .
|
|
@@ -114,7 +114,7 @@ dist/api/captcha/maintenanceModeResponses.js 1.76 k
|
|
|
114
114
|
dist/tasks/spam/updateSpamEmailDomains.js 1.87 kB │ gzip: 0.77 kB
|
|
115
115
|
dist/api/admin/apiClearAllCountersEndpoint.js 1.89 kB │ gzip: 0.76 kB
|
|
116
116
|
dist/api/public.js 1.90 kB │ gzip: 0.83 kB
|
|
117
|
-
dist/api/captcha/assignDetectorBundle.js 1.
|
|
117
|
+
dist/api/captcha/assignDetectorBundle.js 1.90 kB │ gzip: 0.84 kB
|
|
118
118
|
dist/tasks/frictionless/routingMachine.js 2.16 kB │ gzip: 0.91 kB
|
|
119
119
|
dist/utils/dns.js 2.36 kB │ gzip: 0.95 kB
|
|
120
120
|
dist/api/admin/apiDnsEventEndpoint.js 2.43 kB │ gzip: 0.96 kB
|
|
@@ -123,10 +123,10 @@ dist/api/captcha/submitPuzzleCaptchaSolution.js 2.55 k
|
|
|
123
123
|
dist/api/forwardVerify.js 2.59 kB │ gzip: 1.10 kB
|
|
124
124
|
dist/api/captcha/submitImageCaptchaSolution.js 2.59 kB │ gzip: 1.00 kB
|
|
125
125
|
dist/api/admin/apiAdminRoutesProvider.js 2.64 kB │ gzip: 0.53 kB
|
|
126
|
-
dist/tasks/spam/evaluateEmailSpamRules.js 2.77 kB │ gzip: 1.20 kB
|
|
127
126
|
dist/index.js 2.78 kB │ gzip: 0.76 kB
|
|
128
|
-
dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js 3.
|
|
127
|
+
dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js 3.32 kB │ gzip: 1.30 kB
|
|
129
128
|
dist/api/domainMiddleware.js 3.52 kB │ gzip: 1.22 kB
|
|
129
|
+
dist/tasks/spam/evaluateEmailSpamRules.js 3.84 kB │ gzip: 1.59 kB
|
|
130
130
|
dist/services/ipComparison.js 3.96 kB │ gzip: 1.19 kB
|
|
131
131
|
dist/api/captcha/getFrictionlessCaptchaChallenge/accessPolicy.js 3.99 kB │ gzip: 0.99 kB
|
|
132
132
|
dist/api/captcha.js 4.05 kB │ gzip: 1.31 kB
|
|
@@ -139,28 +139,28 @@ dist/api/captcha/getPuzzleCaptchaChallenge.js 5.48 k
|
|
|
139
139
|
dist/api/captcha/getImageCaptchaChallenge.js 5.52 kB │ gzip: 1.78 kB
|
|
140
140
|
dist/tasks/spam/checkTrafficFilter.js 5.63 kB │ gzip: 2.05 kB
|
|
141
141
|
dist/util/usageCounters.js 5.65 kB │ gzip: 2.01 kB
|
|
142
|
-
dist/api/captcha/submitPoWCaptchaSolution.js 6.
|
|
142
|
+
dist/api/captcha/submitPoWCaptchaSolution.js 6.21 kB │ gzip: 2.09 kB
|
|
143
143
|
dist/api/metrics.js 6.96 kB │ gzip: 2.09 kB
|
|
144
144
|
dist/api/ja4.js 7.06 kB │ gzip: 2.23 kB
|
|
145
145
|
dist/tasks/detection/bundlePool.js 8.30 kB │ gzip: 3.21 kB
|
|
146
|
-
dist/api/startProviderApi.js 9.25 kB │ gzip: 3.14 kB
|
|
147
146
|
dist/tasks/decisionMachine/decisionMachineRunner.js 9.40 kB │ gzip: 2.86 kB
|
|
148
|
-
dist/api/
|
|
147
|
+
dist/api/startProviderApi.js 9.82 kB │ gzip: 3.40 kB
|
|
148
|
+
dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.js 10.48 kB │ gzip: 2.13 kB
|
|
149
149
|
dist/api/blacklistRequestInspector.js 11.57 kB │ gzip: 4.19 kB
|
|
150
|
-
dist/api/verify.js 12.
|
|
150
|
+
dist/api/verify.js 12.07 kB │ gzip: 2.44 kB
|
|
151
151
|
dist/tasks/client/clientTasks.js 12.33 kB │ gzip: 3.07 kB
|
|
152
152
|
dist/util.js 12.92 kB │ gzip: 3.16 kB
|
|
153
|
-
dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js 14.
|
|
154
|
-
dist/tasks/frictionless/frictionlessTasks.js 15.
|
|
155
|
-
dist/tasks/
|
|
156
|
-
dist/tasks/
|
|
157
|
-
dist/tasks/powCaptcha/powTasks.js
|
|
158
|
-
dist/tasks/imgCaptcha/imgCaptchaTasks.js
|
|
153
|
+
dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js 14.44 kB │ gzip: 3.69 kB
|
|
154
|
+
dist/tasks/frictionless/frictionlessTasks.js 15.66 kB │ gzip: 4.29 kB
|
|
155
|
+
dist/tasks/puzzleCaptcha/puzzleTasks.js 19.16 kB │ gzip: 4.55 kB
|
|
156
|
+
dist/tasks/captchaManager.js 20.59 kB │ gzip: 5.97 kB
|
|
157
|
+
dist/tasks/powCaptcha/powTasks.js 21.27 kB │ gzip: 5.45 kB
|
|
158
|
+
dist/tasks/imgCaptcha/imgCaptchaTasks.js 25.03 kB │ gzip: 6.05 kB
|
|
159
159
|
dist/tasks/detection/decodeBehavior.js 32.26 kB │ gzip: 10.34 kB
|
|
160
160
|
dist/tasks/detection/decodeSimd.js 36.06 kB │ gzip: 12.00 kB
|
|
161
161
|
dist/tasks/detection/decodePayload.js 46.69 kB │ gzip: 14.66 kB
|
|
162
162
|
|
|
163
|
-
[32m✓ built in
|
|
163
|
+
[32m✓ built in 154ms[39m
|
|
164
164
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeBehavior.js to /home/runner/work/captcha/captcha/packages/provider/dist/tasks/detection/decodeBehavior.js
|
|
165
165
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodePayload.js to /home/runner/work/captcha/captcha/packages/provider/dist/tasks/detection/decodePayload.js
|
|
166
166
|
[copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeSimd.js to /home/runner/work/captcha/captcha/packages/provider/dist/tasks/detection/decodeSimd.js
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,104 @@
|
|
|
1
1
|
# @prosopo/provider
|
|
2
2
|
|
|
3
|
+
## 5.0.3
|
|
4
|
+
### Patch Changes
|
|
5
|
+
|
|
6
|
+
- d6cb841: fix(provider): promote bundleId onto bypass-path sessions so SIMD / BDP attach can decrypt
|
|
7
|
+
|
|
8
|
+
Sitekeys configured with a fixed `captchaType` (`pow` / `image` / `puzzle`) short-circuit
|
|
9
|
+
the frictionless bot-detection path via `runConfiguredCaptchaTypeShortCircuit` and build
|
|
10
|
+
their session via `buildBypassSessionParams`. Before this fix, that helper never wrote a
|
|
11
|
+
`bundleId` onto the session, so every subsequent `decryptAndAttachSimdReadingsIfAbsent`
|
|
12
|
+
call at `/captcha/{type}` and solution-submit resolved `bundle=undefined` and silently
|
|
13
|
+
dropped the ciphertext — SIMD readings and behavioural data never landed on the session
|
|
14
|
+
or the powcaptcha record for these sitekeys.
|
|
15
|
+
|
|
16
|
+
The fix resolves the widget's `detectorSessionId` → `bundleId` via the existing Redis
|
|
17
|
+
binding and promotes it onto the bypass session so the attach path finds the correct
|
|
18
|
+
keypair. Empty-pool PoW fallback continues to no-op (no detector was assigned).
|
|
19
|
+
- fa0d494: fix(provider): session captchaType takes precedence over restrict-policy captchaType at `/captcha/{type}` gate
|
|
20
|
+
|
|
21
|
+
`isValidRequest` was rejecting `/captcha/{type}` calls whenever an active restrict-to-image rule pinned a different captchaType from the one the widget requested — even when a valid session existed that had been minted legitimately before the rule appeared. The check ran before the sessionId lookup, so any anomaly detector inserting a rule between the widget's `/frictionless` response and its `/captcha/pow` call surfaced as `INCORRECT_CAPTCHA_TYPE` (400).
|
|
22
|
+
|
|
23
|
+
Observed impact: ~150/hr fleet-wide, concentrated on pimeyes / eyematch / …RsJ2zsy39, with the `IP_CLIENT_CROSSOVER` detector as the most common trigger (24h aggregation, restrict-to-image, global clientId).
|
|
24
|
+
|
|
25
|
+
Fix: session record is authoritative for captchaType when a sessionId is present. The policy still fires at verify time via `decisionMachineRunner` + `checkForHardBlock`. Sessionless requests still enforce the policy captchaType (preserves the pre-fix behaviour for direct-entry callers).
|
|
26
|
+
|
|
27
|
+
Regression guards added to `captchaManager.unit.test.ts`:
|
|
28
|
+
- session's captchaType wins when a restrict policy materialises mid-flight
|
|
29
|
+
- session with mismatched captchaType still rejects (not the policy-race case)
|
|
30
|
+
- sessionless request still rejected on policy captchaType mismatch
|
|
31
|
+
- sessionless request with matching policy captchaType passes
|
|
32
|
+
- d6cb841: feat(provider,database,types): session chain — escalations reference origin, DM-input reads walk back for missing fields
|
|
33
|
+
|
|
34
|
+
Adds `originSessionId` to the Session schema and populates it on escalation sessions in `submitPoWCaptchaSolution.buildEscalation`. Adds `CaptchaManager.getSessionRecordWithOriginFallback` — a session reader that, when the record is an escalation missing an inherently-origin-populated field (`simdReadings`, `dnsEvent`, `entropyMathRandom*`, `entropyCrypto*`, `entropyWallClockOffsetMs`), reads the origin session and fills the gap. Escalation-owned fields (`captchaType`, `sessionId`, `score`, `ipInfo`, `headers`, etc.) are never overridden.
|
|
35
|
+
|
|
36
|
+
The three `serverVerify*CaptchaSolution` methods now use the walker instead of the raw `getSessionRecordBySessionId`, so decision-machine inputs on escalated puzzle / image sessions see the origin's SIMD readings and DNS event.
|
|
37
|
+
|
|
38
|
+
Fixes the write-time race between (a) the origin's fire-and-forget SIMD attach via `scheduleMongoSimdReadingsUpdate` on pow-submit, and (b) `buildEscalation`'s immediate Mongo read — which left ~97% of escalation sessions with no `dnsEvent` and ~97% with no `simdReadings`, in turn tripping decide-machine deny rules (SIMD_ABSENT etc.) on legit escalation flows.
|
|
39
|
+
|
|
40
|
+
Non-escalation sessions and older escalation records without `originSessionId` fall through as a no-op — no behavior change. Extra Mongo read only fires when the escalation is actually missing a fallback-eligible field.
|
|
41
|
+
- Updated dependencies [d6cb841]
|
|
42
|
+
- @prosopo/database@4.0.3
|
|
43
|
+
- @prosopo/types-database@5.0.2
|
|
44
|
+
- @prosopo/types@5.0.2
|
|
45
|
+
- @prosopo/env@3.6.26
|
|
46
|
+
- @prosopo/types-env@2.10.22
|
|
47
|
+
- @prosopo/api@4.0.2
|
|
48
|
+
- @prosopo/api-express-router@3.1.57
|
|
49
|
+
- @prosopo/datasets@3.1.58
|
|
50
|
+
- @prosopo/ipinfo@0.3.3
|
|
51
|
+
- @prosopo/keyring@2.9.65
|
|
52
|
+
- @prosopo/load-balancer@2.10.19
|
|
53
|
+
- @prosopo/user-access-policy@3.12.13
|
|
54
|
+
|
|
55
|
+
## 5.0.2
|
|
56
|
+
### Patch Changes
|
|
57
|
+
|
|
58
|
+
- Updated dependencies [1fba42e]
|
|
59
|
+
- @prosopo/database@4.0.2
|
|
60
|
+
- @prosopo/env@3.6.25
|
|
61
|
+
- @prosopo/api-express-router@3.1.56
|
|
62
|
+
|
|
63
|
+
## 5.0.1
|
|
64
|
+
### Patch Changes
|
|
65
|
+
|
|
66
|
+
- ce2ac41: `startProviderApi` now resolves once the server is actually listening, and rejects if the bind fails. It previously returned the server straight from `.listen()`, which resolves before the socket is bound — a bind failure such as `EADDRINUSE` then surfaced as an `'error'` event with nothing waiting on it, i.e. an uncaught exception rather than a rejection the caller could handle.
|
|
67
|
+
|
|
68
|
+
Integration suites reserve a port from the OS instead of guessing one. Six suites picked a port from `process.pid` plus a random offset with no availability check, while CI runs a real provider alongside the tests; a collision failed the whole run with an uncaught `EADDRINUSE` even though every test passed. The retry loops that tried to work around this are gone — they retried into another unchecked port and, because the failure was never a rejection, never ran at all.
|
|
69
|
+
- 2aabe73: Remove the client-controlled `detectorUnavailable` frictionless bypass. A client could set the flag and be handed a PoW challenge without any detection running. The flag is gone from the wire format, the API client and the widget; the only remaining bypasses are provider-side (maintenance mode, empty detector bundle pool).
|
|
70
|
+
|
|
71
|
+
The frictionless decision machine now gates on payload presence after the access-rule ladder: no token serves a 3-round image captcha, a token without its head hash serves a 2-round one.
|
|
72
|
+
- bcef918: Adds a per-email submission-count rate limit on the verify pipeline. Site operators can now cap how many server-checked captcha submissions any one normalised email (Gmail dot / `+tag` tricks collapsed across providers) may back before further submissions from that address are rejected with `API.SPAM_EMAIL_COUNT_EXCEEDED`.
|
|
73
|
+
|
|
74
|
+
- New `spamFilter.emailRules.maxEmailSubmissionCount` (int, min 1, optional) on `ClientSettingsSchema`.
|
|
75
|
+
- New `metadata.emailNormalised` field on all three captcha records (image / PoW / puzzle) — written alongside `metadata.email` whenever `storeMetadata` is on. Backed by a partial index (`spamEmailCount_partial`) on each collection.
|
|
76
|
+
- New DB method `countCommitmentsByNormalisedEmail(dappAccount, emailNormalised)` sums the three per-collection counts so limits span captcha types.
|
|
77
|
+
- Puzzle verify gains a `spamFilter` parameter to bring it to parity with img/pow for the count check.
|
|
78
|
+
- English + all 31 non-English locales gain the `API.SPAM_EMAIL_COUNT_EXCEEDED` translation.
|
|
79
|
+
- Fixes silent-drift bug: `UserSettingsSchema.spamFilter.emailRules` was missing `maxEmailSubmissionCount` on the mongoose side, which strict mode would have dropped on `$set`.
|
|
80
|
+
- Updated dependencies [38396b4]
|
|
81
|
+
- Updated dependencies [9fec7bd]
|
|
82
|
+
- Updated dependencies [2aabe73]
|
|
83
|
+
- Updated dependencies [bcef918]
|
|
84
|
+
- @prosopo/env@3.6.24
|
|
85
|
+
- @prosopo/common@3.1.49
|
|
86
|
+
- @prosopo/types@5.0.1
|
|
87
|
+
- @prosopo/api@4.0.1
|
|
88
|
+
- @prosopo/logger@2.0.5
|
|
89
|
+
- @prosopo/types-database@5.0.1
|
|
90
|
+
- @prosopo/database@4.0.1
|
|
91
|
+
- @prosopo/locale@3.2.9
|
|
92
|
+
- @prosopo/api-express-router@3.1.55
|
|
93
|
+
- @prosopo/api-route@2.6.54
|
|
94
|
+
- @prosopo/datasets@3.1.57
|
|
95
|
+
- @prosopo/ipinfo@0.3.2
|
|
96
|
+
- @prosopo/keyring@2.9.64
|
|
97
|
+
- @prosopo/load-balancer@2.10.18
|
|
98
|
+
- @prosopo/redis-client@1.0.31
|
|
99
|
+
- @prosopo/types-env@2.10.21
|
|
100
|
+
- @prosopo/user-access-policy@3.12.12
|
|
101
|
+
|
|
3
102
|
## 5.0.0
|
|
4
103
|
### Major Changes
|
|
5
104
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assignDetectorBundle.d.ts","sourceRoot":"","sources":["../../../src/api/captcha/assignDetectorBundle.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"assignDetectorBundle.d.ts","sourceRoot":"","sources":["../../../src/api/captcha/assignDetectorBundle.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;8BAgBpC,mBAAmB,WAEjC,OAAO,GAAG,gBAAgB,OAC1B,QAAQ,SACN,YAAY,KACjB,OAAO,CAAC,QAAQ,CAAC;AALrB,wBAwDG"}
|
|
@@ -12,9 +12,8 @@ import { v4 } from "uuid";
|
|
|
12
12
|
*
|
|
13
13
|
* When it cannot (no pool loaded, or Redis unavailable so the binding could not
|
|
14
14
|
* be persisted) it returns `useProviderBundle: false`. There is NO bundled
|
|
15
|
-
* detector and no legacy key pool to fall back to — the client
|
|
16
|
-
*
|
|
17
|
-
* challenge instead of attempting to score an absent payload.
|
|
15
|
+
* detector and no legacy key pool to fall back to — the client sends an empty
|
|
16
|
+
* token on the frictionless hop and the provider decides what to serve.
|
|
18
17
|
*/
|
|
19
18
|
var assignDetectorBundle_default = (env) => async (req, res, _next) => {
|
|
20
19
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assignDetectorBundle.js","sourceRoot":"","sources":["../../../src/api/captcha/assignDetectorBundle.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAqC,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"assignDetectorBundle.js","sourceRoot":"","sources":["../../../src/api/captcha/assignDetectorBundle.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAqC,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAc7C,eAAe,CAAC,GAAwB,EAAE,EAAE,CAC3C,KAAK,EACJ,GAA+B,EAC/B,GAAa,EACb,KAAmB,EACC,EAAE;IACtB,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAiC;YAC9C,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,KAAK;YACpC,MAAM,EAAE,IAAI;SACZ,CAAC;QAEF,MAAM,IAAI,GAAG,qBAAqB,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/C,MAAM,iBAAiB,GAAG,OAAO,MAAM,EAAE,EAAE,CAAC;QAM5C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC;QACxD,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,mBAAmB,CAClD,iBAAiB,EACjB,QAAQ,CACR,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,QAAQ,GAAiC;YAC9C,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,IAAI;YACnC,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,iBAAiB;YAChD,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,EAAE;YACrC,MAAM,EAAE,IAAI;SACZ,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QAGd,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,+DAA+D;YACpE,GAAG;SACH,CAAC,CAAC,CAAC;QACJ,OAAO,GAAG,CAAC,IAAI,CAAC;YACf,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,KAAK;YACpC,MAAM,EAAE,IAAI;SAC2B,CAAC,CAAC;IAC3C,CAAC;AACF,CAAC,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export declare const DEFAULT_FRICTIONLESS_THRESHOLD = 0.5;
|
|
2
2
|
export declare const DECRYPTION_FAILED_IMAGE_ROUNDS = 3;
|
|
3
|
+
export declare const MISSING_TOKEN_IMAGE_ROUNDS = 3;
|
|
4
|
+
export declare const MISSING_HEAD_HASH_IMAGE_ROUNDS = 2;
|
|
3
5
|
export declare const getRoundsFromSimScore: (simScore: number) => number;
|
|
4
6
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/constants.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAWlD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,eAAO,MAAM,qBAAqB,aAAc,MAAM,KAAG,MAOxD,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/constants.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAWlD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAOhD,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAM5C,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,eAAO,MAAM,qBAAqB,aAAc,MAAM,KAAG,MAOxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/constants.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAWlD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAgB,EAAU,EAAE;IACjE,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,CAAC;AACV,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/constants.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAWlD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAOhD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAM5C,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAgB,EAAU,EAAE;IACjE,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,CAAC;AACV,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decisionMachine.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.ts"],"names":[],"mappings":"AAeA,OAAO,EAGN,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAM5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"decisionMachine.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.ts"],"names":[],"mappings":"AAeA,OAAO,EAGN,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAM5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAerD,MAAM,MAAM,oBAAoB,GAAG;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,mBAAmB,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,cAAc,CAAC;IAC5B,MAAM,EAAE,cAAc,GAAG,SAAS,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IAIrB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAI/B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B,CAAC;AAEF,KAAK,aAAa,GAAG;IACpB,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC;IAChC,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;CACnB,CAAC;AAKF,eAAO,MAAM,kBAAkB,UACvB,oBAAoB,UACnB,aAAa,KACnB,OAAO,CAAC,OAAO,CAqSjB,CAAC"}
|
|
@@ -13,6 +13,44 @@ var runDecisionMachine = async (input, handle) => {
|
|
|
13
13
|
const { tasks, env, clientRecord, dapp, userSitekeyIpHash, flatHeaders, ipInfo } = input;
|
|
14
14
|
const { req, res } = handle;
|
|
15
15
|
let { botScore, scoreComponents } = input;
|
|
16
|
+
if (!input.token) {
|
|
17
|
+
req.logger.info(() => ({
|
|
18
|
+
msg: "Frictionless decision",
|
|
19
|
+
data: {
|
|
20
|
+
decision: "missing_token",
|
|
21
|
+
captchaType: CaptchaType.image
|
|
22
|
+
}
|
|
23
|
+
}));
|
|
24
|
+
recordFrictionlessDecision("missing_token");
|
|
25
|
+
attachHoneypot(res, clientRecord);
|
|
26
|
+
return res.json(await tasks.frictionlessManager.sendImageCaptcha({
|
|
27
|
+
solvedImagesCount: Math.min(3, clientRecord.settings.imageMaxRounds),
|
|
28
|
+
userSitekeyIpHash,
|
|
29
|
+
reason: FrictionlessReason$1.MISSING_TOKEN,
|
|
30
|
+
siteKey: dapp,
|
|
31
|
+
ipInfo,
|
|
32
|
+
headers: flatHeaders
|
|
33
|
+
}));
|
|
34
|
+
}
|
|
35
|
+
if (!input.headHash) {
|
|
36
|
+
req.logger.info(() => ({
|
|
37
|
+
msg: "Frictionless decision",
|
|
38
|
+
data: {
|
|
39
|
+
decision: "missing_head_hash",
|
|
40
|
+
captchaType: CaptchaType.image
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
recordFrictionlessDecision("missing_head_hash");
|
|
44
|
+
attachHoneypot(res, clientRecord);
|
|
45
|
+
return res.json(await tasks.frictionlessManager.sendImageCaptcha({
|
|
46
|
+
solvedImagesCount: Math.min(2, clientRecord.settings.imageMaxRounds),
|
|
47
|
+
userSitekeyIpHash,
|
|
48
|
+
reason: FrictionlessReason$1.MISSING_HEAD_HASH,
|
|
49
|
+
siteKey: dapp,
|
|
50
|
+
ipInfo,
|
|
51
|
+
headers: flatHeaders
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
16
54
|
if (input.decryptionFailed) {
|
|
17
55
|
req.logger.info(() => ({
|
|
18
56
|
msg: "Frictionless decision",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decisionMachine.js","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"decisionMachine.js","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACN,WAAW,EACX,WAAW,GAIX,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGrD,OAAO,EACN,mBAAmB,EACnB,kBAAkB,GAClB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uDAAuD,CAAC;AAE/F,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EACN,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,8BAA8B,EAC9B,8BAA8B,EAC9B,0BAA0B,EAC1B,qBAAqB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AA4CvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACtC,KAA2B,EAC3B,MAAqB,EACF,EAAE;IACrB,MAAM,EACL,KAAK,EACL,GAAG,EACH,YAAY,EACZ,IAAI,EACJ,iBAAiB,EACjB,WAAW,EACX,MAAM,GACN,GAAG,KAAK,CAAC;IACV,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;IAC5B,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;IAM1C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAClB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,eAAe;gBACzB,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,eAAe,CAAC,CAAC;QAC5C,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,0BAA0B,EAC1B,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,aAAa;YACxC,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,mBAAmB;gBAC7B,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;QAChD,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,8BAA8B,EAC9B,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,iBAAiB;YAC5C,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAcD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,mBAAmB;gBAC7B,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;QAChD,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,8BAA8B,EAC9B,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,iBAAiB;YAC5C,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAED,MAAM,yBAAyB,GAAG,MAAM,yBAAyB,CAChE,KAAK,EACL,MAAM,CACN,CAAC;IACF,IAAI,yBAAyB;QAAE,OAAO,yBAAyB,CAAC;IAEhE,MAAM,eAAe,GAAG,MAAM,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAI5C,MAAM,cAAc,GACnB,YAAY,CAAC,QAAQ,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC;IAC1E,IAAI,cAAc,EAAE,CAAC;QACpB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,KAAK,CAAC,mBAAmB,CAAC,oBAAoB,CACjE,KAAK,CAAC,YAAY,EAClB,QAAQ,EACR,eAAe,CACf,CAAC;QACF,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC;QAC7B,eAAe,GAAG,WAAW,CAAC,eAAe,CAAC;QAC9C,KAAK,CAAC,mBAAmB,CAAC,WAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9E,IAAI,gBAAgB,EAAE,CAAC;QACtB,MAAM,WAAW,GAAG,KAAK,CAAC,mBAAmB,CAAC,sBAAsB,CACnE,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,EAClB,QAAQ,EACR,eAAe,CACf,CAAC;QACF,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC;QAC7B,eAAe,GAAG,WAAW,CAAC,eAAe,CAAC;QAC9C,KAAK,CAAC,mBAAmB,CAAC,WAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,gBAAgB,GAAG,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACrE,IAAI,gBAAgB,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,EAAE,CAAC;QAC5E,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,gBAAgB;gBAC1B,QAAQ;gBACR,gBAAgB;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;aAClB;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;QAC7C,MAAM,KAAK,CAAC,mBAAmB,CAAC,sBAAsB,CAAC;YACtD,iBAAiB,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc;YACvD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,cAAc;YACzC,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;QAC/C,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EACpC,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,gBAAgB;YAC3C,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,mBAAmB;gBAC7B,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;QAChD,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,sBAAsB,CACxC,KAAK,CAAC,SAAS,EACf,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,aAAa;YACxC,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QAC3C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,qCAAqC;YAC1C,IAAI,EAAE;gBACL,QAAQ;gBACR,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,KAAK,EAAE,KAAK,CAAC,KAAK;aAClB;SACD,CAAC,CAAC,CAAC;QACJ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,2BAA2B;gBACrC,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,2BAA2B,CAAC,CAAC;QACxD,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAChC,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,yBAAyB;YACpD,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAID,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,EAAE,uBAAuB;YAC5B,IAAI,EAAE;gBACL,QAAQ,EAAE,qBAAqB;gBAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;aAClB;SACD,CAAC,CAAC,CAAC;QACJ,0BAA0B,CAAC,qBAAqB,CAAC,CAAC;QAClD,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAChC,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;YACD,iBAAiB;YACjB,MAAM,EAAE,kBAAkB,CAAC,mBAAmB;YAC9C,OAAO,EAAE,IAAI;YACb,MAAM;YACN,OAAO,EAAE,WAAW;SACpB,CAAC,CACF,CAAC;IACH,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,GAAG,EAAE,uBAAuB;QAC5B,IAAI,EAAE;YACL,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,WAAW,CAAC,GAAG;SAC5B;KACD,CAAC,CAAC,CAAC;IACJ,0BAA0B,CAAC,aAAa,CAAC,CAAC;IAC1C,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,cAAc,CAAC;QAC9C,iBAAiB;QACjB,OAAO,EAAE,IAAI;QACb,MAAM;QACN,OAAO,EAAE,WAAW;KACpB,CAAC,CACF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,KAAK,EACtC,KAA2B,EAC3B,MAAqB,EACM,EAAE;IAC7B,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;IAC5B,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACvD,MAAM,sBAAsB,GAAG,gBAAgB;QAC9C,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAAC;QACjC,CAAC,CAAC,EAAE,CAAC;IAEN,IACC,sBAAsB,KAAK,KAAK,CAAC,SAAS;QAC1C,kBAAkB,KAAK,KAAK,CAAC,MAAM,EAClC,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,GAAG,EAAE,sCAAsC;QAC3C,IAAI,EAAE;YACL,gBAAgB;YAChB,sBAAsB;YACtB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,kBAAkB;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;SACpB;KACD,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,GAAG,EAAE,uBAAuB;QAC5B,IAAI,EAAE;YACL,QAAQ,EAAE,qBAAqB;YAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;SAC9B;KACD,CAAC,CAAC,CAAC;IACJ,0BAA0B,CAAC,qBAAqB,CAAC,CAAC;IAClD,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IACxC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;QACtD,iBAAiB,EAAE,sBAAsB,CACxC,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAC1C;QACD,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,MAAM,EAAE,kBAAkB,CAAC,mBAAmB;QAC9C,OAAO,EAAE,KAAK,CAAC,IAAI;QACnB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,WAAW;KAC1B,CAAC,CACF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,KAAK,EACtC,KAA2B,EAC3B,MAAqB,EACK,EAAE;IAC5B,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAClD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAElC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO;QAAE,OAAO,IAAI,CAAC;IAE9D,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,IAAI,EAAE,CAAC;IACpE,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC;IAC/D,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC;IAE/D,IAAI,WAAoC,CAAC;IACzC,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;QAC9B,WAAW,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;SAAM,IAAI,UAAU,EAAE,CAAC;QACvB,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;IACnC,CAAC;SAAM,IAAI,UAAU,EAAE,CAAC;QACvB,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,mBAAmB,CAAC,uBAAuB,CAC5E,YAAY,CAAC,OAAO,EACpB,WAAW,CACX,CAAC;IAEF,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAEhC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACxB,GAAG,EAAE,0DAA0D;SAC/D,CAAC,CAAC,CAAC;QACJ,OAAO,IAAI,CACV,IAAI,eAAe,CAAC,iBAAiB,EAAE;YACtC,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE;YAC3C,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,MAAM,EAAE,GAAG,CAAC,MAAM;SAClB,CAAC,CACF,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,oBAAoB,CAAC,KAAK,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;IACzE,IAAI,GAAG,IAAI,SAAS;QAAE,OAAO,IAAI,CAAC;IAElC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,GAAG,EAAE,uBAAuB;QAC5B,IAAI,EAAE;YACL,QAAQ,EAAE,sBAAsB;YAChC,WAAW,EAAE,WAAW,CAAC,KAAK;YAC9B,GAAG;YACH,SAAS;SACT;KACD,CAAC,CAAC,CAAC;IACJ,0BAA0B,CAAC,sBAAsB,CAAC,CAAC;IACnD,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAClC,OAAO,GAAG,CAAC,IAAI,CACd,MAAM,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;QAChD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAC1B,qBAAqB,CAAC,GAAG,CAAC,EAC1B,YAAY,CAAC,QAAQ,CAAC,cAAc,CACpC;QACD,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,MAAM,EAAE,kBAAkB,CAAC,+BAA+B;QAC1D,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,WAAW;KAC1B,CAAC,CACF,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;8BA4BtD,mBAAmB,0BACA,kBAAkB,WAGpC,OAAO,GAAG,gBAAgB,OAC1B,QAAQ,QACP,YAAY;AAPpB,wBA+oBG"}
|
|
@@ -16,10 +16,11 @@ import "./constants.js";
|
|
|
16
16
|
import { runDecisionMachine } from "./decisionMachine.js";
|
|
17
17
|
import { decryptIncomingSimdReadings } from "./decryptSimdReadings.js";
|
|
18
18
|
import { resolveSessionDedup } from "./sessionDedup.js";
|
|
19
|
-
import { runConfiguredCaptchaTypeShortCircuit,
|
|
19
|
+
import { runConfiguredCaptchaTypeShortCircuit, runEmptyDetectorPoolPowFallback } from "./shortCircuit.js";
|
|
20
20
|
import { ProsopoApiError } from "@prosopo/common";
|
|
21
21
|
import { ApiParams, CaptchaType, GetFrictionlessCaptchaChallengeRequestBody, ModeEnum } from "@prosopo/types";
|
|
22
22
|
import { flatten, isProtectDeployment, sanitisePageUrl } from "@prosopo/util";
|
|
23
|
+
import { v4 } from "uuid";
|
|
23
24
|
import { AccessPolicyType } from "@prosopo/user-access-policy";
|
|
24
25
|
//#region src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts
|
|
25
26
|
var handler_default = (env, userAccessRulesStorage) => async (req, res, next) => {
|
|
@@ -34,10 +35,11 @@ var handler_default = (env, userAccessRulesStorage) => async (req, res, next) =>
|
|
|
34
35
|
}
|
|
35
36
|
}));
|
|
36
37
|
});
|
|
37
|
-
const { token, headHash, dapp, user, mode, simdReadings, detectorSessionId,
|
|
38
|
+
const { token, headHash, dapp, user, mode, simdReadings, detectorSessionId, currentUrl: reportedCurrentUrl, iframeUrl: reportedIframeUrl } = GetFrictionlessCaptchaChallengeRequestBody.parse(req.body);
|
|
38
39
|
const currentUrl = sanitisePageUrl(reportedCurrentUrl);
|
|
39
40
|
const iframeUrl = sanitisePageUrl(reportedIframeUrl);
|
|
40
41
|
const isProtect = isProtectDeployment(currentUrl, iframeUrl);
|
|
42
|
+
const sessionToken = token || `notoken-${v4()}`;
|
|
41
43
|
const normalizedIp = normalizeRequestIp(req.ip, req.logger);
|
|
42
44
|
const sessionMode = mode === ModeEnum.invisible ? ModeEnum.invisible : void 0;
|
|
43
45
|
req.logger.info(() => ({
|
|
@@ -195,14 +197,14 @@ var handler_default = (env, userAccessRulesStorage) => async (req, res, next) =>
|
|
|
195
197
|
userSitekeyIpHash,
|
|
196
198
|
requestId: req.requestId,
|
|
197
199
|
logger: req.logger,
|
|
198
|
-
|
|
200
|
+
...detectorSessionId && { detectorSessionId },
|
|
199
201
|
...req.tcpToChelloUs !== void 0 && { tcpToChelloUs: req.tcpToChelloUs },
|
|
200
202
|
...req.chelloToHandshakeUs !== void 0 && { chelloToHandshakeUs: req.chelloToHandshakeUs }
|
|
201
203
|
};
|
|
202
204
|
const shortCircuitResponse = await runConfiguredCaptchaTypeShortCircuit(shortCircuitInput, res);
|
|
203
205
|
if (shortCircuitResponse) return shortCircuitResponse;
|
|
204
|
-
const
|
|
205
|
-
if (
|
|
206
|
+
const emptyPoolResponse = await runEmptyDetectorPoolPowFallback(shortCircuitInput, res);
|
|
207
|
+
if (emptyPoolResponse) return emptyPoolResponse;
|
|
206
208
|
const lScore = tasks.frictionlessManager.checkLangRules(req.headers["accept-language"] || "");
|
|
207
209
|
const userScope = getRequestUserScope(flatten(req.headers), req.ja4, normalizedIp, user, void 0, void 0, countryCode, asn);
|
|
208
210
|
const [decryptedPayload, validation, accessPolicies] = await Promise.all([
|
|
@@ -249,7 +251,7 @@ var handler_default = (env, userAccessRulesStorage) => async (req, res, next) =>
|
|
|
249
251
|
...shadowDomPenalty !== void 0 && { shadowDomPenalty }
|
|
250
252
|
};
|
|
251
253
|
tasks.frictionlessManager.setSessionParams({
|
|
252
|
-
token,
|
|
254
|
+
token: sessionToken,
|
|
253
255
|
score: botScore,
|
|
254
256
|
threshold: botThreshold,
|
|
255
257
|
scoreComponents,
|
|
@@ -328,6 +330,7 @@ var handler_default = (env, userAccessRulesStorage) => async (req, res, next) =>
|
|
|
328
330
|
botScore,
|
|
329
331
|
scoreComponents,
|
|
330
332
|
token,
|
|
333
|
+
headHash,
|
|
331
334
|
botThreshold,
|
|
332
335
|
currentUrl,
|
|
333
336
|
iframeUrl
|