cyberchef 10.24.0 → 11.1.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/.devcontainer/devcontainer.json +1 -1
- package/.nvmrc +1 -1
- package/CHANGELOG.md +172 -0
- package/Dockerfile +2 -2
- package/Gruntfile.js +11 -6
- package/README.md +6 -4
- package/SECURITY.md +8 -18
- package/babel.config.js +4 -1
- package/package.json +48 -43
- package/src/core/ChefWorker.js +1 -1
- package/src/core/Recipe.mjs +1 -1
- package/src/core/config/Categories.json +6 -0
- package/src/core/config/OperationConfig.json +140 -16
- package/src/core/config/modules/Default.mjs +8 -0
- package/src/core/config/modules/PGP.mjs +2 -0
- package/src/core/config/scripts/generateOpsIndex.mjs +63 -0
- package/src/core/config/scripts/newOperation.mjs +31 -4
- package/src/core/lib/Magic.mjs +1 -1
- package/src/core/operations/AESDecrypt.mjs +61 -16
- package/src/core/operations/AESEncrypt.mjs +26 -11
- package/src/core/operations/BLAKE3.mjs +13 -7
- package/src/core/operations/BSONDeserialise.mjs +2 -2
- package/src/core/operations/BSONSerialise.mjs +3 -2
- package/src/core/operations/Bcrypt.mjs +1 -1
- package/src/core/operations/BcryptCompare.mjs +1 -1
- package/src/core/operations/DecodeText.mjs +4 -0
- package/src/core/operations/EncodeText.mjs +4 -0
- package/src/core/operations/EscapeSmartCharacters.mjs +129 -0
- package/src/core/operations/FromPunycode.mjs +1 -1
- package/src/core/operations/GenerateLoremIpsum.mjs +34 -3
- package/src/core/operations/GeneratePGPKeyPair.mjs +8 -7
- package/src/core/operations/PGPSign.mjs +83 -0
- package/src/core/operations/ParseEthernetFrame.mjs +1 -1
- package/src/core/operations/ParseIPv4Header.mjs +1 -1
- package/src/core/operations/ParseObjectIDTimestamp.mjs +2 -2
- package/src/core/operations/ParseUserAgent.mjs +1 -1
- package/src/core/operations/ROR13.mjs +83 -0
- package/src/core/operations/RemoveANSIEscapeCodes.mjs +41 -0
- package/src/core/operations/SeriesChart.mjs +16 -0
- package/src/core/operations/ShowBase64Offsets.mjs +28 -28
- package/src/core/operations/ToPunycode.mjs +1 -1
- package/src/core/operations/Wrap.mjs +47 -0
- package/src/core/operations/index.mjs +10 -0
- package/src/node/NodeRecipe.mjs +8 -7
- package/src/node/api.mjs +4 -4
- package/src/node/index.mjs +25 -0
- package/src/web/App.mjs +19 -1
- package/src/web/HTMLIngredient.mjs +1 -0
- package/src/web/html/index.html +3 -3
- package/src/web/index.js +2 -2
- package/src/web/static/sitemap.mjs +4 -4
- package/src/web/waiters/RecipeWaiter.mjs +9 -1
- package/tests/browser/02_ops.js +7 -7
- package/tests/browser/03_recipe_load.js +48 -0
- package/tests/browser/browserUtils.js +6 -3
- package/tests/lib/wasmFetchPolyfill.mjs +31 -0
- package/tests/node/consumers/cjs-consumer.js +2 -2
- package/tests/node/consumers/esm-consumer.mjs +2 -2
- package/tests/node/index.mjs +1 -0
- package/tests/node/tests/Categories.mjs +2 -2
- package/tests/node/tests/PGP.mjs +69 -0
- package/tests/node/tests/nodeApi.mjs +55 -58
- package/tests/node/tests/operations.mjs +41 -2
- package/tests/operations/index.mjs +72 -66
- package/tests/operations/tests/BLAKE3.mjs +18 -0
- package/tests/operations/tests/Base64.mjs +11 -0
- package/tests/operations/tests/CharEnc.mjs +26 -0
- package/tests/operations/tests/Charts.mjs +11 -0
- package/tests/operations/tests/Crypt.mjs +288 -62
- package/tests/operations/tests/EscapeSmartCharacters.mjs +132 -0
- package/tests/operations/tests/FlaskSession.mjs +11 -8
- package/tests/operations/tests/GenerateLoremIpsum.mjs +80 -0
- package/tests/operations/tests/IPv6Transition.mjs +4 -4
- package/tests/operations/tests/PGP.mjs +178 -154
- package/tests/operations/tests/ParseEthernetFrame.mjs +11 -0
- package/tests/operations/tests/ParseIPv4Header.mjs +23 -0
- package/tests/operations/tests/ParseX509CRL.mjs +16 -16
- package/tests/operations/tests/ROR13.mjs +45 -0
- package/tests/operations/tests/Register.mjs +3 -1
- package/tests/operations/tests/RemoveANSIEscapeCodes.mjs +62 -0
- package/tests/operations/tests/Wrap.mjs +44 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
{
|
|
4
4
|
"name": "CyberChef",
|
|
5
5
|
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
|
6
|
-
"image": "mcr.microsoft.com/devcontainers/javascript-node:
|
|
6
|
+
"image": "mcr.microsoft.com/devcontainers/javascript-node:24-trixie",
|
|
7
7
|
|
|
8
8
|
// Features to add to the dev container. More info: https://containers.dev/features.
|
|
9
9
|
"features": {
|
package/.nvmrc
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
24
|
package/CHANGELOG.md
CHANGED
|
@@ -13,6 +13,91 @@ All major and minor version changes will be documented in this file. Details of
|
|
|
13
13
|
|
|
14
14
|
## Details
|
|
15
15
|
|
|
16
|
+
### [11.1.0] - 2026-06-13
|
|
17
|
+
This release includes a security fix ([#2557])
|
|
18
|
+
- Security: Add fix, and tests, for Lorem Ipsum DoS issue [@GCHQDeveloper581] | [#2557]
|
|
19
|
+
- chore (deps): bump the patch-updates group with 4 updates | [#2552]
|
|
20
|
+
- chore (deps): bump the actions-dependencies group with 2 updates | [#2551]
|
|
21
|
+
- chore (deps): bump the docker-dependencies group with 2 updates | [#2550]
|
|
22
|
+
- chore (deps): bump protobufjs from 8.5.0 to 8.6.2 in the minor-updates group | [#2553]
|
|
23
|
+
- Security Policy Update [@C85297] | [#2547]
|
|
24
|
+
- Fix spurious error messages generated during webpack build [@GCHQDeveloper581] | [#2545]
|
|
25
|
+
- chore (deps): bump shell-quote from 1.8.3 to 1.8.4 | [#2543]
|
|
26
|
+
- Implementing ROR13 feature [@Fufu-btw] | [#2539]
|
|
27
|
+
- New operation improvements [@jl5193] [@GCHQDeveloper581] | [#1431]
|
|
28
|
+
- Npm and yarn/major version updates [@GCHQDeveloper581] | [#2527]
|
|
29
|
+
- Update README to reflect AES Decrypt changes [@andreasrtv] | [#2502]
|
|
30
|
+
- feat: add Escape Smart Characters operation [@HarelKatz] | [#2391]
|
|
31
|
+
- feat: Get AES IV from input (QoL) [@andreasrtv] | [#2471]
|
|
32
|
+
- fix: validate text encoding options [@SyedIshmumAhnaf] | [#2497]
|
|
33
|
+
- chore (deps): bump the minor-updates group with 5 updates [@GCHQDeveloper581] | [#2500]
|
|
34
|
+
- chore (deps): bump the patch-updates group with 2 updates | [#2499]
|
|
35
|
+
- chore (deps): bump nginxinc/nginx-unprivileged from `df0e9ed` to `0a1e718` in the docker-dependencies group | [#2498]
|
|
36
|
+
- Add remove ANSI escape codes operation [@Louis-Ladd] [@GCHQDeveloper581] | [#2143]
|
|
37
|
+
- Fix option ingredients being overwriten [@C85297] | [#2341]
|
|
38
|
+
- chore (deps): bump qs and express | [#2478]
|
|
39
|
+
- chore (deps): bump tmp from 0.2.5 to 0.2.7 | [#2479]
|
|
40
|
+
- chore (deps): bump the patch-updates group across 1 directory with 6 updates | [#2463]
|
|
41
|
+
- chore (deps): bump the docker-dependencies group across 1 directory with 2 updates | [#2468]
|
|
42
|
+
- chore (deps): bump terser from 5.46.2 to 5.48.0 | [#2385]
|
|
43
|
+
- Make dependabot quieter [@GCHQDeveloper581] | [#2467]
|
|
44
|
+
- update sitemap [@Blank0120] | [#2443]
|
|
45
|
+
- Bump webpack-dev-server to 5.2.4 [@GCHQDeveloper581] | [#2417]
|
|
46
|
+
- Fix pgp tests [@GCHQDeveloper581] [@C85297] | [#2461]
|
|
47
|
+
- chore (deps): bump the patch-updates group across 1 directory with 4 updates | [#2438]
|
|
48
|
+
- chore (deps): bump docker/setup-buildx-action from 4.0.0 to 4.1.0 | [#2439]
|
|
49
|
+
- chore (deps): bump docker/login-action from 4.1.0 to 4.2.0 | [#2441]
|
|
50
|
+
- chore (deps): bump docker/metadata-action from 6.0.0 to 6.1.0 | [#2442]
|
|
51
|
+
- update bson [@Blank0120] [@GCHQDeveloper581] | [#2425]
|
|
52
|
+
- chore (deps): bump webpack from 5.106.2 to 5.107.1 | [#2428]
|
|
53
|
+
- chore (deps): bump protobufjs from 7.5.8 to 7.6.0 | [#2429]
|
|
54
|
+
- chore (deps): bump sql-formatter from 15.7.4 to 15.8.0 | [#2430]
|
|
55
|
+
- chore (deps): bump docker/build-push-action from 7.1.0 to 7.2.0 | [#2431]
|
|
56
|
+
- Fix flaky `npm run testui` [@lzandman] | [#2412]
|
|
57
|
+
- Include git ref in website download zip name [@C85297] | [#2339]
|
|
58
|
+
- Bump nginxinc/nginx-unprivileged from `808f784` to `b9f7ba1` | [#2389]
|
|
59
|
+
- Series Chart HTML Formatting fix [@C85297] | [#2403]
|
|
60
|
+
- Parse Ethernet Frame HTML formatting fix [@C85297] | [#2402]
|
|
61
|
+
- Parse IPv4 Header HTML formatting fix [@C85297] | [#2401]
|
|
62
|
+
- Update chromedriver, and install corresponding chrome in workflows (fixes build) [@GCHQDeveloper581] | [#2387]
|
|
63
|
+
- chore (deps): bump @codemirror/view from 6.41.1 to 6.43.0 | [#2384]
|
|
64
|
+
- chore (deps): bump globals from 17.5.0 to 17.6.0 | [#2386]
|
|
65
|
+
- chore (deps): bump the patch-updates group across 1 directory with 3 updates | [#2388]
|
|
66
|
+
- [StepSecurity] Apply security best practices [@GCHQDeveloper581] StepSecurity Bot <bot@stepsecurity.io> | [#2378]
|
|
67
|
+
- Build docker container for arm v7 as well [@GCHQDeveloper581] | [#2379]
|
|
68
|
+
- chore (deps): bump fast-uri from 3.1.0 to 3.1.2 | [#2372]
|
|
69
|
+
- update bcryptjs [@C85297] [@GCHQDeveloper581] | [#2368]
|
|
70
|
+
- chore (deps): bump picomatch from 2.3.1 to 2.3.2 | [#2370]
|
|
71
|
+
- chore (deps): bump ip-address from 10.1.0 to 10.2.0 | [#2371]
|
|
72
|
+
- chore (deps): bump axios from 1.15.0 to 1.16.0 | [#2369]
|
|
73
|
+
- feat(operation-wrap): add new Wrap operation to format text at specified line width [@0xff1ce] | [#1882]
|
|
74
|
+
- chore (deps): bump the patch-updates group across 1 directory with 5 updates | [#2354]
|
|
75
|
+
- chore (deps): bump docker/login-action from 3 to 4 | [#2363]
|
|
76
|
+
- chore (deps): bump docker/setup-buildx-action from 3 to 4 | [#2364]
|
|
77
|
+
- chore (deps): bump crazy-max/ghaction-github-pages from 3 to 5 | [#2365]
|
|
78
|
+
- chore (deps): bump docker/metadata-action from 4 to 6 | [#2366]
|
|
79
|
+
- chore (deps): bump docker/setup-qemu-action from 3 to 4 | [#2367]
|
|
80
|
+
- Update dependabot for Node 24. [@GCHQDeveloper581] | [#2361]
|
|
81
|
+
- chore (deps): bump uuid from 13.0.0 to 14.0.0 | [#2332]
|
|
82
|
+
- chore (deps): bump webpack-bundle-analyzer from 5.2.0 to 5.3.0 | [#2353]
|
|
83
|
+
- Fix all zeros after 16384 bytes with Blake3 [@zachbowden] [@GCHQDeveloper581] | [#2351]
|
|
84
|
+
|
|
85
|
+
## [11.0.0] - 2026-04-28
|
|
86
|
+
- Revert sitemap to v8.0.X to fix build/deploy on master [@GCHQDeveloper581] | [#2348]
|
|
87
|
+
- Node version update from 22 to 24 [@lzandman] [@GCHQDeveloper581] | [#2347]
|
|
88
|
+
- Fix XSS in Show Base64 offsets [@C85297] | [#2346]
|
|
89
|
+
- Make compatible with node >=22 [@GCHQDeveloper581] | [#2273]
|
|
90
|
+
- Fix(node): enable asynchronous operation support in Node.js API [@engin0223] [@GCHQDeveloper581] | [#2342]
|
|
91
|
+
- Feature: Change to nginx-unprivileged image for better kubernetes support [@hsolberg] | [#1922]
|
|
92
|
+
|
|
93
|
+
Breaking changes:
|
|
94
|
+
- Minimum supported node version - now v24 (was v16)
|
|
95
|
+
- Change of exported port on Docker Container - now 8080 (was 80)
|
|
96
|
+
- Node API now exports "bake" and "execute" functions as async.
|
|
97
|
+
|
|
98
|
+
<details>
|
|
99
|
+
<summary>Click to expand v10 minor versions</summary>
|
|
100
|
+
|
|
16
101
|
### [10.24.0] - 2026-04-27
|
|
17
102
|
- Update CONTRIBUTING.md [@GCHQDeveloper581] | [#2333]
|
|
18
103
|
- Fix, and link, Fernet tests [@GCHQDeveloper581] | [#2335]
|
|
@@ -277,6 +362,8 @@ All major and minor version changes will be documented in this file. Details of
|
|
|
277
362
|
- Added 'Levenshtein Distance' operation [@mikecat] | [#1498]
|
|
278
363
|
- Added 'Swap case' operation [@mikecat] | [#1499]
|
|
279
364
|
|
|
365
|
+
</details>
|
|
366
|
+
|
|
280
367
|
## [10.0.0] - 2023-03-22
|
|
281
368
|
- [Full details explained here](https://github.com/gchq/CyberChef/wiki/Character-encoding,-EOL-separators,-and-editor-features)
|
|
282
369
|
- Status bars added to the Input and Output [@n1474335] | [#1405]
|
|
@@ -620,6 +707,8 @@ All major and minor version changes will be documented in this file. Details of
|
|
|
620
707
|
## [4.0.0] - 2016-11-28
|
|
621
708
|
- Initial open source commit [@n1474335] | [b1d73a72](https://github.com/gchq/CyberChef/commit/b1d73a725dc7ab9fb7eb789296efd2b7e4b08306)
|
|
622
709
|
|
|
710
|
+
[11.1.0]: https://github.com/gchq/CyberChef/releases/tag/v11.1.0
|
|
711
|
+
[11.0.0]: https://github.com/gchq/CyberChef/releases/tag/v11.0.0
|
|
623
712
|
[10.24.0]: https://github.com/gchq/CyberChef/releases/tag/v10.24.0
|
|
624
713
|
[10.23.0]: https://github.com/gchq/CyberChef/releases/tag/v10.23.0
|
|
625
714
|
[10.22.0]: https://github.com/gchq/CyberChef/releases/tag/v10.22.0
|
|
@@ -901,6 +990,17 @@ All major and minor version changes will be documented in this file. Details of
|
|
|
901
990
|
[@BjoernAkAManf]: https://github.com/BjoernAkAManf
|
|
902
991
|
[@ko80240]: https://github.com/ko80240
|
|
903
992
|
[@BigYellowHammer]: https://github.com/BigYellowHammer
|
|
993
|
+
[@hsolberg]: https://github.com/hsolberg
|
|
994
|
+
[@lzandman]: https://github.com/lzandman
|
|
995
|
+
[@engin0223]: https://github.com/engin0223
|
|
996
|
+
[@Fufu-btw]: https://github.com/Fufu-btw
|
|
997
|
+
[@jl5193]: https://github.com/jl5193
|
|
998
|
+
[@andreasrtv]: https://github.com/andreasrtv
|
|
999
|
+
[@HarelKatz]: https://github.com/HarelKatz
|
|
1000
|
+
[@SyedIshmumAhnaf]: https://github.com/SyedIshmumAhnaf
|
|
1001
|
+
[@Louis-Ladd]: https://github.com/Louis-Ladd
|
|
1002
|
+
[@Blank0120]: https://github.com/Blank0120
|
|
1003
|
+
[@zachbowden]: https://github.com/zachbowden
|
|
904
1004
|
|
|
905
1005
|
|
|
906
1006
|
[8ad18b]: https://github.com/gchq/CyberChef/commit/8ad18bc7db6d9ff184ba3518686293a7685bf7b7
|
|
@@ -1192,4 +1292,76 @@ All major and minor version changes will be documented in this file. Details of
|
|
|
1192
1292
|
[#2315]: https://github.com/gchq/CyberChef/pull/2315
|
|
1193
1293
|
[#2313]: https://github.com/gchq/CyberChef/pull/2313
|
|
1194
1294
|
[#2311]: https://github.com/gchq/CyberChef/pull/2311
|
|
1295
|
+
[#2348]: https://github.com/gchq/CyberChef/pull/2348
|
|
1296
|
+
[#2347]: https://github.com/gchq/CyberChef/pull/2347
|
|
1297
|
+
[#2346]: https://github.com/gchq/CyberChef/pull/2346
|
|
1298
|
+
[#2273]: https://github.com/gchq/CyberChef/pull/2273
|
|
1299
|
+
[#2342]: https://github.com/gchq/CyberChef/pull/2342
|
|
1300
|
+
[#1922]: https://github.com/gchq/CyberChef/pull/1922
|
|
1301
|
+
[#2557]: https://github.com/gchq/CyberChef/pull/2557
|
|
1302
|
+
[#2552]: https://github.com/gchq/CyberChef/pull/2552
|
|
1303
|
+
[#2551]: https://github.com/gchq/CyberChef/pull/2551
|
|
1304
|
+
[#2550]: https://github.com/gchq/CyberChef/pull/2550
|
|
1305
|
+
[#2553]: https://github.com/gchq/CyberChef/pull/2553
|
|
1306
|
+
[#2547]: https://github.com/gchq/CyberChef/pull/2547
|
|
1307
|
+
[#2545]: https://github.com/gchq/CyberChef/pull/2545
|
|
1308
|
+
[#2543]: https://github.com/gchq/CyberChef/pull/2543
|
|
1309
|
+
[#2539]: https://github.com/gchq/CyberChef/pull/2539
|
|
1310
|
+
[#1431]: https://github.com/gchq/CyberChef/pull/1431
|
|
1311
|
+
[#2527]: https://github.com/gchq/CyberChef/pull/2527
|
|
1312
|
+
[#2502]: https://github.com/gchq/CyberChef/pull/2502
|
|
1313
|
+
[#2391]: https://github.com/gchq/CyberChef/pull/2391
|
|
1314
|
+
[#2471]: https://github.com/gchq/CyberChef/pull/2471
|
|
1315
|
+
[#2497]: https://github.com/gchq/CyberChef/pull/2497
|
|
1316
|
+
[#2500]: https://github.com/gchq/CyberChef/pull/2500
|
|
1317
|
+
[#2499]: https://github.com/gchq/CyberChef/pull/2499
|
|
1318
|
+
[#2498]: https://github.com/gchq/CyberChef/pull/2498
|
|
1319
|
+
[#2143]: https://github.com/gchq/CyberChef/pull/2143
|
|
1320
|
+
[#2341]: https://github.com/gchq/CyberChef/pull/2341
|
|
1321
|
+
[#2478]: https://github.com/gchq/CyberChef/pull/2478
|
|
1322
|
+
[#2479]: https://github.com/gchq/CyberChef/pull/2479
|
|
1323
|
+
[#2463]: https://github.com/gchq/CyberChef/pull/2463
|
|
1324
|
+
[#2468]: https://github.com/gchq/CyberChef/pull/2468
|
|
1325
|
+
[#2385]: https://github.com/gchq/CyberChef/pull/2385
|
|
1326
|
+
[#2467]: https://github.com/gchq/CyberChef/pull/2467
|
|
1327
|
+
[#2443]: https://github.com/gchq/CyberChef/pull/2443
|
|
1328
|
+
[#2417]: https://github.com/gchq/CyberChef/pull/2417
|
|
1329
|
+
[#2461]: https://github.com/gchq/CyberChef/pull/2461
|
|
1330
|
+
[#2438]: https://github.com/gchq/CyberChef/pull/2438
|
|
1331
|
+
[#2439]: https://github.com/gchq/CyberChef/pull/2439
|
|
1332
|
+
[#2441]: https://github.com/gchq/CyberChef/pull/2441
|
|
1333
|
+
[#2442]: https://github.com/gchq/CyberChef/pull/2442
|
|
1334
|
+
[#2425]: https://github.com/gchq/CyberChef/pull/2425
|
|
1335
|
+
[#2428]: https://github.com/gchq/CyberChef/pull/2428
|
|
1336
|
+
[#2429]: https://github.com/gchq/CyberChef/pull/2429
|
|
1337
|
+
[#2430]: https://github.com/gchq/CyberChef/pull/2430
|
|
1338
|
+
[#2431]: https://github.com/gchq/CyberChef/pull/2431
|
|
1339
|
+
[#2412]: https://github.com/gchq/CyberChef/pull/2412
|
|
1340
|
+
[#2339]: https://github.com/gchq/CyberChef/pull/2339
|
|
1341
|
+
[#2389]: https://github.com/gchq/CyberChef/pull/2389
|
|
1342
|
+
[#2403]: https://github.com/gchq/CyberChef/pull/2403
|
|
1343
|
+
[#2402]: https://github.com/gchq/CyberChef/pull/2402
|
|
1344
|
+
[#2401]: https://github.com/gchq/CyberChef/pull/2401
|
|
1345
|
+
[#2387]: https://github.com/gchq/CyberChef/pull/2387
|
|
1346
|
+
[#2384]: https://github.com/gchq/CyberChef/pull/2384
|
|
1347
|
+
[#2386]: https://github.com/gchq/CyberChef/pull/2386
|
|
1348
|
+
[#2388]: https://github.com/gchq/CyberChef/pull/2388
|
|
1349
|
+
[#2378]: https://github.com/gchq/CyberChef/pull/2378
|
|
1350
|
+
[#2379]: https://github.com/gchq/CyberChef/pull/2379
|
|
1351
|
+
[#2372]: https://github.com/gchq/CyberChef/pull/2372
|
|
1352
|
+
[#2368]: https://github.com/gchq/CyberChef/pull/2368
|
|
1353
|
+
[#2370]: https://github.com/gchq/CyberChef/pull/2370
|
|
1354
|
+
[#2371]: https://github.com/gchq/CyberChef/pull/2371
|
|
1355
|
+
[#2369]: https://github.com/gchq/CyberChef/pull/2369
|
|
1356
|
+
[#1882]: https://github.com/gchq/CyberChef/pull/1882
|
|
1357
|
+
[#2354]: https://github.com/gchq/CyberChef/pull/2354
|
|
1358
|
+
[#2363]: https://github.com/gchq/CyberChef/pull/2363
|
|
1359
|
+
[#2364]: https://github.com/gchq/CyberChef/pull/2364
|
|
1360
|
+
[#2365]: https://github.com/gchq/CyberChef/pull/2365
|
|
1361
|
+
[#2366]: https://github.com/gchq/CyberChef/pull/2366
|
|
1362
|
+
[#2367]: https://github.com/gchq/CyberChef/pull/2367
|
|
1363
|
+
[#2361]: https://github.com/gchq/CyberChef/pull/2361
|
|
1364
|
+
[#2332]: https://github.com/gchq/CyberChef/pull/2332
|
|
1365
|
+
[#2353]: https://github.com/gchq/CyberChef/pull/2353
|
|
1366
|
+
[#2351]: https://github.com/gchq/CyberChef/pull/2351
|
|
1195
1367
|
|
package/Dockerfile
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# Modifier --platform=$BUILDPLATFORM limits the platform to "BUILDPLATFORM" during buildx multi-platform builds
|
|
5
5
|
# This is because npm "chromedriver" package is not compatiable with all platforms
|
|
6
6
|
# For more info see: https://docs.docker.com/build/building/multi-platform/#cross-compilation
|
|
7
|
-
FROM --platform=$BUILDPLATFORM node:
|
|
7
|
+
FROM --platform=$BUILDPLATFORM node:24-alpine@sha256:fb71d01345f11b708a3553c66e7c74074f2d506400ea81973343d915cb64eef0 AS builder
|
|
8
8
|
|
|
9
9
|
WORKDIR /app
|
|
10
10
|
|
|
@@ -27,7 +27,7 @@ RUN npm run build
|
|
|
27
27
|
#########################################
|
|
28
28
|
# Package static build files into nginx #
|
|
29
29
|
#########################################
|
|
30
|
-
FROM nginx:stable-alpine AS cyberchef
|
|
30
|
+
FROM nginxinc/nginx-unprivileged:stable-alpine@sha256:37f356a5eba5d187365b4f59cd6cc29f1f922ad18146d554b576a80983377e6a AS cyberchef
|
|
31
31
|
|
|
32
32
|
LABEL maintainer="GCHQ <oss@gchq.gov.uk>"
|
|
33
33
|
|
package/Gruntfile.js
CHANGED
|
@@ -6,7 +6,7 @@ const BundleAnalyzerPlugin = require("webpack-bundle-analyzer").BundleAnalyzerPl
|
|
|
6
6
|
const glob = require("glob");
|
|
7
7
|
const path = require("path");
|
|
8
8
|
|
|
9
|
-
const nodeFlags = "--
|
|
9
|
+
const nodeFlags = "--no-warnings --no-deprecation";
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Grunt configuration for building the app in various formats.
|
|
@@ -89,6 +89,8 @@ module.exports = function (grunt) {
|
|
|
89
89
|
const compileYear = grunt.template.today("UTC:yyyy"),
|
|
90
90
|
compileTime = grunt.template.today("UTC:dd/mm/yyyy HH:MM:ss") + " UTC",
|
|
91
91
|
pkg = grunt.file.readJSON("package.json"),
|
|
92
|
+
version = process.env.GITHUB_SHA || `v${pkg.version}`,
|
|
93
|
+
downloadZipFilename = `CyberChef_${version}.zip`,
|
|
92
94
|
webpackConfig = require("./webpack.config.js"),
|
|
93
95
|
BUILD_CONSTANTS = {
|
|
94
96
|
COMPILE_YEAR: JSON.stringify(compileYear),
|
|
@@ -129,7 +131,9 @@ module.exports = function (grunt) {
|
|
|
129
131
|
chunks: ["main"],
|
|
130
132
|
compileYear: compileYear,
|
|
131
133
|
compileTime: compileTime,
|
|
132
|
-
version:
|
|
134
|
+
version: version,
|
|
135
|
+
latestReleaseVersion: pkg.version,
|
|
136
|
+
downloadZipFilename: downloadZipFilename,
|
|
133
137
|
minify: {
|
|
134
138
|
removeComments: true,
|
|
135
139
|
collapseWhitespace: true,
|
|
@@ -140,7 +144,8 @@ module.exports = function (grunt) {
|
|
|
140
144
|
new BundleAnalyzerPlugin({
|
|
141
145
|
analyzerMode: "static",
|
|
142
146
|
reportFilename: "BundleAnalyzerReport.html",
|
|
143
|
-
openAnalyzer: false
|
|
147
|
+
openAnalyzer: false,
|
|
148
|
+
excludeAssets: /.*Worker.js/
|
|
144
149
|
}),
|
|
145
150
|
]
|
|
146
151
|
};
|
|
@@ -245,7 +250,7 @@ module.exports = function (grunt) {
|
|
|
245
250
|
"!build/prod/index.html",
|
|
246
251
|
"!build/prod/BundleAnalyzerReport.html",
|
|
247
252
|
],
|
|
248
|
-
dest: `build/prod
|
|
253
|
+
dest: `build/prod/${downloadZipFilename}`
|
|
249
254
|
}
|
|
250
255
|
},
|
|
251
256
|
connect: {
|
|
@@ -333,12 +338,12 @@ module.exports = function (grunt) {
|
|
|
333
338
|
switch (process.platform) {
|
|
334
339
|
case "darwin":
|
|
335
340
|
return chainCommands([
|
|
336
|
-
`shasum -a 256 build/prod
|
|
341
|
+
`shasum -a 256 build/prod/${downloadZipFilename} | awk '{print $1;}' > build/prod/sha256digest.txt`,
|
|
337
342
|
`sed -i '' -e "s/DOWNLOAD_HASH_PLACEHOLDER/$(cat build/prod/sha256digest.txt)/" build/prod/index.html`
|
|
338
343
|
]);
|
|
339
344
|
default:
|
|
340
345
|
return chainCommands([
|
|
341
|
-
`sha256sum build/prod
|
|
346
|
+
`sha256sum build/prod/${downloadZipFilename} | awk '{print $1;}' > build/prod/sha256digest.txt`,
|
|
342
347
|
`sed -i -e "s/DOWNLOAD_HASH_PLACEHOLDER/$(cat build/prod/sha256digest.txt)/" build/prod/index.html`
|
|
343
348
|
]);
|
|
344
349
|
}
|
package/README.md
CHANGED
|
@@ -36,7 +36,7 @@ docker build --tag cyberchef --ulimit nofile=10000 .
|
|
|
36
36
|
```
|
|
37
37
|
2. Run the docker container
|
|
38
38
|
```bash
|
|
39
|
-
docker run -it -p 8080:
|
|
39
|
+
docker run -it -p 8080:8080 cyberchef
|
|
40
40
|
```
|
|
41
41
|
3. Navigate to `http://localhost:8080` in your browser
|
|
42
42
|
|
|
@@ -45,7 +45,7 @@ docker run -it -p 8080:80 cyberchef
|
|
|
45
45
|
If you prefer to skip the build process, you can use the pre-built image
|
|
46
46
|
|
|
47
47
|
```bash
|
|
48
|
-
docker run -it -p 8080:
|
|
48
|
+
docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
|
|
49
49
|
```
|
|
50
50
|
|
|
51
51
|
Just like before, navigate to `http://localhost:8080` in your browser.
|
|
@@ -72,6 +72,7 @@ You can use as many operations as you like in simple or complex ways. Some examp
|
|
|
72
72
|
- [Carry out different operations on data of different types][8]
|
|
73
73
|
- [Use parts of the input as arguments to operations][9]
|
|
74
74
|
- [Perform AES decryption, extracting the IV from the beginning of the cipher stream][10]
|
|
75
|
+
- [A simpler way to perform the same AES Decryption][13]
|
|
75
76
|
- [Automagically detect several layers of nested encoding][12]
|
|
76
77
|
|
|
77
78
|
|
|
@@ -120,7 +121,7 @@ CyberChef is built to support
|
|
|
120
121
|
|
|
121
122
|
## Node.js support
|
|
122
123
|
|
|
123
|
-
CyberChef is built to fully support Node.js `
|
|
124
|
+
CyberChef is built to fully support Node.js `v24`. For more information, see the ["Node API" wiki page](https://github.com/gchq/CyberChef/wiki/Node-API)
|
|
124
125
|
|
|
125
126
|
|
|
126
127
|
## Contributing
|
|
@@ -147,6 +148,7 @@ CyberChef is released under the [Apache 2.0 Licence](https://www.apache.org/lice
|
|
|
147
148
|
[7]: https://gchq.github.io/CyberChef/#recipe=Fork('%5C%5Cn','%5C%5Cn',false)From_UNIX_Timestamp('Seconds%20(s)')&input=OTc4MzQ2ODAwCjEwMTI2NTEyMDAKMTA0NjY5NjQwMAoxMDgxMDg3MjAwCjExMTUzMDUyMDAKMTE0OTYwOTYwMA
|
|
148
149
|
[8]: https://gchq.github.io/CyberChef/#recipe=Fork('%5C%5Cn','%5C%5Cn',false)Conditional_Jump('1',false,'base64',10)To_Hex('Space')Return()Label('base64')To_Base64('A-Za-z0-9%2B/%3D')&input=U29tZSBkYXRhIHdpdGggYSAxIGluIGl0ClNvbWUgZGF0YSB3aXRoIGEgMiBpbiBpdA
|
|
149
150
|
[9]: https://gchq.github.io/CyberChef/#recipe=Register('key%3D(%5B%5C%5Cda-f%5D*)',true,false)Find_/_Replace(%7B'option':'Regex','string':'.*data%3D(.*)'%7D,'$1',true,false,true)RC4(%7B'option':'Hex','string':'$R0'%7D,'Hex','Latin1')&input=aHR0cDovL21hbHdhcmV6LmJpei9iZWFjb24ucGhwP2tleT0wZTkzMmE1YyZkYXRhPThkYjdkNWViZTM4NjYzYTU0ZWNiYjMzNGUzZGIxMQ
|
|
150
|
-
[10]: https://gchq.github.io/CyberChef/#recipe=Register('(.%7B32%7D)',true,false)Drop_bytes(0,32,false)AES_Decrypt(%7B'option':'Hex','string':'1748e7179bd56570d51fa4ba287cc3e5'%7D,%7B'option':'Hex','string':'$R0'%7D,'CTR','Hex','Raw',%7B'option':'Hex','string':''%7D)&input=NTFlMjAxZDQ2MzY5OGVmNWY3MTdmNzFmNWI0NzEyYWYyMGJlNjc0YjNiZmY1M2QzODU0NjM5NmVlNjFkYWFjNDkwOGUzMTljYTNmY2Y3MDg5YmZiNmIzOGVhOTllNzgxZDI2ZTU3N2JhOWRkNmYzMTFhMzk0MjBiODk3OGU5MzAxNGIwNDJkNDQ3MjZjYWVkZjU0MzZlYWY2NTI0MjljMGRmOTRiNTIxNjc2YzdjMmNlODEyMDk3YzI3NzI3M2M3YzcyY2Q4OWFlYzhkOWZiNGEyNzU4NmNjZjZhYTBhZWUyMjRjMzRiYTNiZmRmN2FlYjFkZGQ0Nzc2MjJiOTFlNzJjOWU3MDlhYjYwZjhkYWY3MzFlYzBjYzg1Y2UwZjc0NmZmMTU1NGE1YTNlYzI5MWNhNDBmOWU2MjlhODcyNTkyZDk4OGZkZDgzNDUzNGFiYTc5YzFhZDE2NzY3NjlhN2MwMTBiZjA0NzM5ZWNkYjY1ZDk1MzAyMzcxZDYyOWQ5ZTM3ZTdiNGEzNjFkYTQ2OGYxZWQ1MzU4OTIyZDJlYTc1MmRkMTFjMzY2ZjMwMTdiMTRhYTAxMWQyYWYwM2M0NGY5NTU3OTA5OGExNWUzY2Y5YjQ0ODZmOGZmZTljMjM5ZjM0ZGU3MTUxZjZjYTY1MDBmZTRiODUwYzNmMWMwMmU4MDFjYWYzYTI0NDY0NjE0ZTQyODAxNjE1YjhmZmFhMDdhYzgyNTE0OTNmZmRhN2RlNWRkZjMzNjg4ODBjMmI5NWIwMzBmNDFmOGYxNTA2NmFkZDA3MWE2NmNmNjBlNWY0NmYzYTIzMGQzOTdiNjUyOTYzYTIxYTUzZg
|
|
151
|
+
[10]: https://gchq.github.io/CyberChef/#recipe=Register('(.%7B32%7D)',true,false,false)Drop_bytes(0,32,false)AES_Decrypt(%7B'option':'Hex','string':'1748e7179bd56570d51fa4ba287cc3e5'%7D,%7B'option':'Hex','string':'$R0'%7D,16,'CTR','Hex','Raw',%7B'option':'Hex','string':''%7D,%7B'option':'Hex','string':''%7D,'Off')&input=NTFlMjAxZDQ2MzY5OGVmNWY3MTdmNzFmNWI0NzEyYWYyMGJlNjc0YjNiZmY1M2QzODU0NjM5NmVlNjFkYWFjNDkwOGUzMTljYTNmY2Y3MDg5YmZiNmIzOGVhOTllNzgxZDI2ZTU3N2JhOWRkNmYzMTFhMzk0MjBiODk3OGU5MzAxNGIwNDJkNDQ3MjZjYWVkZjU0MzZlYWY2NTI0MjljMGRmOTRiNTIxNjc2YzdjMmNlODEyMDk3YzI3NzI3M2M3YzcyY2Q4OWFlYzhkOWZiNGEyNzU4NmNjZjZhYTBhZWUyMjRjMzRiYTNiZmRmN2FlYjFkZGQ0Nzc2MjJiOTFlNzJjOWU3MDlhYjYwZjhkYWY3MzFlYzBjYzg1Y2UwZjc0NmZmMTU1NGE1YTNlYzI5MWNhNDBmOWU2MjlhODcyNTkyZDk4OGZkZDgzNDUzNGFiYTc5YzFhZDE2NzY3NjlhN2MwMTBiZjA0NzM5ZWNkYjY1ZDk1MzAyMzcxZDYyOWQ5ZTM3ZTdiNGEzNjFkYTQ2OGYxZWQ1MzU4OTIyZDJlYTc1MmRkMTFjMzY2ZjMwMTdiMTRhYTAxMWQyYWYwM2M0NGY5NTU3OTA5OGExNWUzY2Y5YjQ0ODZmOGZmZTljMjM5ZjM0ZGU3MTUxZjZjYTY1MDBmZTRiODUwYzNmMWMwMmU4MDFjYWYzYTI0NDY0NjE0ZTQyODAxNjE1YjhmZmFhMDdhYzgyNTE0OTNmZmRhN2RlNWRkZjMzNjg4ODBjMmI5NWIwMzBmNDFmOGYxNTA2NmFkZDA3MWE2NmNmNjBlNWY0NmYzYTIzMGQzOTdiNjUyOTYzYTIxYTUzZg
|
|
151
152
|
[11]: https://gchq.github.io/CyberChef/#recipe=XOR(%7B'option':'Hex','string':'3a'%7D,'Standard',false)To_Hexdump(16,false,false)&input=VGhlIGFuc3dlciB0byB0aGUgdWx0aW1hdGUgcXVlc3Rpb24gb2YgbGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgZXZlcnl0aGluZyBpcyA0Mi4
|
|
152
153
|
[12]: https://gchq.github.io/CyberChef/#recipe=Magic(3,false,false)&input=V1VhZ3dzaWFlNm1QOGdOdENDTFVGcENwQ0IyNlJtQkRvREQ4UGFjZEFtekF6QlZqa0syUXN0RlhhS2hwQzZpVVM3UkhxWHJKdEZpc29SU2dvSjR3aGptMWFybTg2NHFhTnE0UmNmVW1MSHJjc0FhWmM1VFhDWWlmTmRnUzgzZ0RlZWpHWDQ2Z2FpTXl1QlY2RXNrSHQxc2NnSjg4eDJ0TlNvdFFEd2JHWTFtbUNvYjJBUkdGdkNLWU5xaU45aXBNcTFaVTFtZ2tkYk51R2NiNzZhUnRZV2hDR1VjOGc5M1VKdWRoYjhodHNoZVpud1RwZ3FoeDgzU1ZKU1pYTVhVakpUMnptcEM3dVhXdHVtcW9rYmRTaTg4WXRrV0RBYzFUb291aDJvSDRENGRkbU5LSldVRHBNd21uZ1VtSzE0eHdtb21jY1BRRTloTTE3MkFQblNxd3hkS1ExNzJSa2NBc3lzbm1qNWdHdFJtVk5OaDJzMzU5d3I2bVMyUVJQ
|
|
154
|
+
[13]: https://gchq.github.io/CyberChef/#recipe=AES_Decrypt(%7B'option':'Hex','string':'1748e7179bd56570d51fa4ba287cc3e5'%7D,%7B'option':'Hex','string':'$R0'%7D,16,'CTR','Hex','Raw',%7B'option':'Hex','string':''%7D,%7B'option':'Hex','string':''%7D,'From%20start')&input=NTFlMjAxZDQ2MzY5OGVmNWY3MTdmNzFmNWI0NzEyYWYyMGJlNjc0YjNiZmY1M2QzODU0NjM5NmVlNjFkYWFjNDkwOGUzMTljYTNmY2Y3MDg5YmZiNmIzOGVhOTllNzgxZDI2ZTU3N2JhOWRkNmYzMTFhMzk0MjBiODk3OGU5MzAxNGIwNDJkNDQ3MjZjYWVkZjU0MzZlYWY2NTI0MjljMGRmOTRiNTIxNjc2YzdjMmNlODEyMDk3YzI3NzI3M2M3YzcyY2Q4OWFlYzhkOWZiNGEyNzU4NmNjZjZhYTBhZWUyMjRjMzRiYTNiZmRmN2FlYjFkZGQ0Nzc2MjJiOTFlNzJjOWU3MDlhYjYwZjhkYWY3MzFlYzBjYzg1Y2UwZjc0NmZmMTU1NGE1YTNlYzI5MWNhNDBmOWU2MjlhODcyNTkyZDk4OGZkZDgzNDUzNGFiYTc5YzFhZDE2NzY3NjlhN2MwMTBiZjA0NzM5ZWNkYjY1ZDk1MzAyMzcxZDYyOWQ5ZTM3ZTdiNGEzNjFkYTQ2OGYxZWQ1MzU4OTIyZDJlYTc1MmRkMTFjMzY2ZjMwMTdiMTRhYTAxMWQyYWYwM2M0NGY5NTU3OTA5OGExNWUzY2Y5YjQ0ODZmOGZmZTljMjM5ZjM0ZGU3MTUxZjZjYTY1MDBmZTRiODUwYzNmMWMwMmU4MDFjYWYzYTI0NDY0NjE0ZTQyODAxNjE1YjhmZmFhMDdhYzgyNTE0OTNmZmRhN2RlNWRkZjMzNjg4ODBjMmI5NWIwMzBmNDFmOGYxNTA2NmFkZDA3MWE2NmNmNjBlNWY0NmYzYTIzMGQzOTdiNjUyOTYzYTIxYTUzZg
|
package/SECURITY.md
CHANGED
|
@@ -2,25 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
## Supported Versions
|
|
4
4
|
|
|
5
|
-
CyberChef is supported on a best endeavours basis.
|
|
6
|
-
the latest version rather than retroactively to older versions.
|
|
7
|
-
are using the most secure version of CyberChef, please make sure you have the
|
|
8
|
-
[latest release](https://github.com/gchq/CyberChef/releases/latest). The
|
|
9
|
-
official [live demo](https://gchq.github.io/CyberChef/) is always up to date.
|
|
5
|
+
CyberChef is supported on a best endeavours basis.
|
|
6
|
+
Patches will be applied to the latest version rather than retroactively to older versions.
|
|
7
|
+
To ensure you are using the most secure version of CyberChef, please make sure you have the [latest release](https://github.com/gchq/CyberChef/releases/latest). [The official website](https://gchq.github.io/CyberChef/) is always up to date.
|
|
10
8
|
|
|
11
9
|
## Reporting a Vulnerability
|
|
12
10
|
|
|
13
|
-
|
|
14
|
-
[raise a new issue](https://github.com/gchq/CyberChef/issues/new/choose)
|
|
15
|
-
describing the problem in as much detail as possible, ideally with examples.
|
|
16
|
-
This will obviously be public. If you feel that the vulnerability is
|
|
17
|
-
significant enough to warrant a private disclosure, please email
|
|
18
|
-
[oss@gchq.gov.uk](mailto:oss@gchq.gov.uk) and
|
|
19
|
-
[n1474335@gmail.com](mailto:n1474335@gmail.com).
|
|
11
|
+
If you discover a vulnerability in CyberChef, please do not publicly disclose it, and do not create a GitHub issue.
|
|
20
12
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
that the community will continue to support us as we endeavour to maintain and
|
|
26
|
-
develop this tool together.
|
|
13
|
+
Instead, send an email as soon as possible to [CyberChefSecurity@gchq.gov.uk](mailto:CyberChefSecurity@gchq.gov.uk).
|
|
14
|
+
The report will be acknowledged and actioned urgently by the CyberChef maintainers.
|
|
15
|
+
|
|
16
|
+
If you do not receive a timely acknowledgement, please notify [oss@gchq.gov.uk](mailto:oss@gchq.gov.uk) and [CyberChef@gchq.gov.uk](mailto:CyberChef@gchq.gov.uk) of your vulnerability report.
|
package/babel.config.js
CHANGED
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cyberchef",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "11.1.0",
|
|
4
4
|
"description": "The Cyber Swiss Army Knife for encryption, encoding, compression and data analysis.",
|
|
5
|
-
"author": "
|
|
5
|
+
"author": "GCHQ <CyberChef@gchq.gov.uk>",
|
|
6
6
|
"homepage": "https://gchq.github.io/CyberChef",
|
|
7
7
|
"copyright": "Crown copyright 2016",
|
|
8
8
|
"license": "Apache-2.0",
|
|
@@ -36,33 +36,34 @@
|
|
|
36
36
|
"browserslist": [
|
|
37
37
|
"Chrome >= 50",
|
|
38
38
|
"Firefox >= 38",
|
|
39
|
-
"node >=
|
|
39
|
+
"node >= 24"
|
|
40
40
|
],
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@babel/eslint-parser": "^7.
|
|
42
|
+
"@babel/eslint-parser": "^7.29.7",
|
|
43
43
|
"@babel/plugin-syntax-import-assertions": "^7.28.6",
|
|
44
|
-
"@babel/plugin-transform-runtime": "^7.29.
|
|
45
|
-
"@babel/preset-env": "^7.29.
|
|
46
|
-
"@babel/runtime": "^7.29.
|
|
44
|
+
"@babel/plugin-transform-runtime": "^7.29.7",
|
|
45
|
+
"@babel/preset-env": "^7.29.7",
|
|
46
|
+
"@babel/runtime": "^7.29.7",
|
|
47
47
|
"@codemirror/commands": "^6.10.3",
|
|
48
48
|
"@codemirror/language": "^6.12.3",
|
|
49
49
|
"@codemirror/search": "^6.7.0",
|
|
50
50
|
"@codemirror/state": "^6.5.4",
|
|
51
|
-
"@codemirror/view": "^6.
|
|
51
|
+
"@codemirror/view": "^6.43.1",
|
|
52
|
+
"@puppeteer/browsers": "3.0.4",
|
|
52
53
|
"autoprefixer": "^10.5.0",
|
|
53
54
|
"babel-loader": "^10.1.1",
|
|
54
55
|
"base64-loader": "^1.0.0",
|
|
55
|
-
"chromedriver": "^
|
|
56
|
+
"chromedriver": "^148.0.4",
|
|
56
57
|
"cli-progress": "^3.12.0",
|
|
57
58
|
"colors": "^1.4.0",
|
|
58
|
-
"compression-webpack-plugin": "^
|
|
59
|
-
"copy-webpack-plugin": "^
|
|
59
|
+
"compression-webpack-plugin": "^12.0.0",
|
|
60
|
+
"copy-webpack-plugin": "^14.0.0",
|
|
60
61
|
"core-js": "^3.49.0",
|
|
61
|
-
"cspell": "^
|
|
62
|
-
"css-loader": "7.1.4",
|
|
62
|
+
"cspell": "^10.0.1",
|
|
63
|
+
"css-loader": "^7.1.4",
|
|
63
64
|
"eslint": "^9.39.4",
|
|
64
65
|
"eslint-plugin-jsdoc": "^50.8.0",
|
|
65
|
-
"globals": "^
|
|
66
|
+
"globals": "^17.6.0",
|
|
66
67
|
"grunt": "^1.6.2",
|
|
67
68
|
"grunt-chmod": "~1.1.1",
|
|
68
69
|
"grunt-concurrent": "^3.0.0",
|
|
@@ -70,25 +71,25 @@
|
|
|
70
71
|
"grunt-contrib-connect": "^5.0.1",
|
|
71
72
|
"grunt-contrib-copy": "~1.0.0",
|
|
72
73
|
"grunt-contrib-watch": "^1.1.0",
|
|
73
|
-
"grunt-eslint": "^
|
|
74
|
+
"grunt-eslint": "^26.0.0",
|
|
74
75
|
"grunt-exec": "~3.0.0",
|
|
75
|
-
"grunt-webpack": "^
|
|
76
|
+
"grunt-webpack": "^8.0.0",
|
|
76
77
|
"grunt-zip": "^1.0.0",
|
|
77
78
|
"html-webpack-plugin": "^5.6.7",
|
|
78
79
|
"imports-loader": "^5.0.0",
|
|
79
80
|
"mini-css-extract-plugin": "2.10.2",
|
|
80
81
|
"modify-source-webpack-plugin": "^4.1.0",
|
|
81
|
-
"nightwatch": "^3.
|
|
82
|
-
"postcss": "^8.5.
|
|
82
|
+
"nightwatch": "^3.16.0",
|
|
83
|
+
"postcss": "^8.5.15",
|
|
83
84
|
"postcss-css-variables": "^0.19.0",
|
|
84
85
|
"postcss-import": "^16.1.1",
|
|
85
86
|
"postcss-loader": "^8.2.1",
|
|
86
87
|
"prompt": "^1.3.0",
|
|
87
|
-
"sitemap": "^
|
|
88
|
-
"terser": "^5.
|
|
89
|
-
"webpack": "^5.
|
|
90
|
-
"webpack-bundle-analyzer": "^
|
|
91
|
-
"webpack-dev-server": "5.
|
|
88
|
+
"sitemap": "^9.0.1",
|
|
89
|
+
"terser": "^5.48.0",
|
|
90
|
+
"webpack": "^5.107.2",
|
|
91
|
+
"webpack-bundle-analyzer": "^5.3.0",
|
|
92
|
+
"webpack-dev-server": "^5.2.4",
|
|
92
93
|
"webpack-node-externals": "^3.0.0",
|
|
93
94
|
"worker-loader": "^3.0.8"
|
|
94
95
|
},
|
|
@@ -96,22 +97,23 @@
|
|
|
96
97
|
"@alexaltea/capstone-js": "^3.0.5",
|
|
97
98
|
"@astronautlabs/amf": "^0.0.6",
|
|
98
99
|
"@blu3r4y/lzma": "^2.3.3",
|
|
100
|
+
"@noble/hashes": "2.2.0",
|
|
99
101
|
"@wavesenterprise/crypto-gost-js": "^2.1.0-RC1",
|
|
100
102
|
"@xmldom/xmldom": "^0.8.13",
|
|
101
103
|
"argon2-browser": "^1.18.0",
|
|
102
104
|
"arrive": "^2.5.3",
|
|
103
105
|
"assert": "^2.1.0",
|
|
104
106
|
"avsc": "^5.7.9",
|
|
105
|
-
"bcryptjs": "^
|
|
106
|
-
"bignumber.js": "^
|
|
107
|
+
"bcryptjs": "^3.0.3",
|
|
108
|
+
"bignumber.js": "^11.1.3",
|
|
107
109
|
"blakejs": "^1.2.1",
|
|
108
110
|
"bootstrap": "4.6.2",
|
|
109
111
|
"bootstrap-colorpicker": "^3.4.0",
|
|
110
112
|
"bootstrap-material-design": "^4.1.3",
|
|
111
113
|
"browserify-zlib": "^0.2.0",
|
|
112
|
-
"bson": "^
|
|
114
|
+
"bson": "^7.2.0",
|
|
113
115
|
"buffer": "^6.0.3",
|
|
114
|
-
"cbor": "
|
|
116
|
+
"cbor": "10.0.12",
|
|
115
117
|
"chi-squared": "^1.1.0",
|
|
116
118
|
"codepage": "^1.15.0",
|
|
117
119
|
"crypto-api": "^0.8.5",
|
|
@@ -120,8 +122,8 @@
|
|
|
120
122
|
"ctph.js": "0.0.5",
|
|
121
123
|
"d3": "7.9.0",
|
|
122
124
|
"d3-hexbin": "^0.2.2",
|
|
123
|
-
"diff": "^
|
|
124
|
-
"dompurify": "^3.4.
|
|
125
|
+
"diff": "^9.0.0",
|
|
126
|
+
"dompurify": "^3.4.8",
|
|
125
127
|
"es6-promisify": "^7.0.0",
|
|
126
128
|
"escodegen": "^2.1.0",
|
|
127
129
|
"esprima": "^4.0.1",
|
|
@@ -132,7 +134,6 @@
|
|
|
132
134
|
"flat": "^6.0.1",
|
|
133
135
|
"geodesy": "1.1.3",
|
|
134
136
|
"handlebars": "^4.7.9",
|
|
135
|
-
"hash-wasm": "^4.12.0",
|
|
136
137
|
"highlight.js": "^11.11.1",
|
|
137
138
|
"ieee754": "^1.2.1",
|
|
138
139
|
"jimp": "1.6.0",
|
|
@@ -141,7 +142,7 @@
|
|
|
141
142
|
"js-sha3": "^0.9.3",
|
|
142
143
|
"jsesc": "^3.1.0",
|
|
143
144
|
"json5": "^2.2.3",
|
|
144
|
-
"jsonata": "^2.1
|
|
145
|
+
"jsonata": "^2.2.1",
|
|
145
146
|
"jsonpath-plus": "^10.4.0",
|
|
146
147
|
"jsonwebtoken": "9.0.3",
|
|
147
148
|
"jsqr": "^1.4.0",
|
|
@@ -154,9 +155,9 @@
|
|
|
154
155
|
"loglevel-message-prefix": "^3.0.0",
|
|
155
156
|
"lz-string": "^1.5.0",
|
|
156
157
|
"lz4js": "^0.2.0",
|
|
157
|
-
"markdown-it": "^14.
|
|
158
|
+
"markdown-it": "^14.2.0",
|
|
158
159
|
"moment": "^2.30.1",
|
|
159
|
-
"moment-timezone": "^0.6.
|
|
160
|
+
"moment-timezone": "^0.6.2",
|
|
160
161
|
"ngeohash": "^0.6.3",
|
|
161
162
|
"node-forge": "^1.4.0",
|
|
162
163
|
"node-md6": "^0.1.0",
|
|
@@ -164,11 +165,12 @@
|
|
|
164
165
|
"notepack.io": "^3.0.1",
|
|
165
166
|
"ntlm": "^0.1.3",
|
|
166
167
|
"nwmatcher": "^1.4.4",
|
|
167
|
-
"otpauth": "9.
|
|
168
|
+
"otpauth": "^9.5.0",
|
|
168
169
|
"path": "^0.12.7",
|
|
169
170
|
"popper.js": "^1.16.1",
|
|
170
171
|
"process": "^0.11.10",
|
|
171
|
-
"protobufjs": "^
|
|
172
|
+
"protobufjs": "^8.6.2",
|
|
173
|
+
"punycode.js": "^2.3.1",
|
|
172
174
|
"qr-image": "^3.2.0",
|
|
173
175
|
"reflect-metadata": "^0.2.2",
|
|
174
176
|
"rison": "^0.1.1",
|
|
@@ -176,15 +178,15 @@
|
|
|
176
178
|
"snackbarjs": "^1.1.0",
|
|
177
179
|
"sortablejs": "^1.15.7",
|
|
178
180
|
"split.js": "^1.6.5",
|
|
179
|
-
"sql-formatter": "^15.
|
|
181
|
+
"sql-formatter": "^15.8.1",
|
|
180
182
|
"ssdeep.js": "0.0.3",
|
|
181
183
|
"stream-browserify": "^3.0.0",
|
|
182
|
-
"tesseract.js": "^
|
|
183
|
-
"ua-parser-js": "^
|
|
184
|
+
"tesseract.js": "^7.0.0",
|
|
185
|
+
"ua-parser-js": "^2.0.10",
|
|
184
186
|
"unorm": "^1.6.0",
|
|
185
187
|
"url": "^0.11.4",
|
|
186
188
|
"utf8": "^3.0.0",
|
|
187
|
-
"uuid": "^
|
|
189
|
+
"uuid": "^14.0.0",
|
|
188
190
|
"vkbeautify": "^0.99.3",
|
|
189
191
|
"xpath": "0.0.34",
|
|
190
192
|
"xregexp": "^5.1.2",
|
|
@@ -194,18 +196,21 @@
|
|
|
194
196
|
"start": "npx grunt dev",
|
|
195
197
|
"build": "npx grunt prod",
|
|
196
198
|
"node": "npx grunt node",
|
|
197
|
-
"repl": "node --
|
|
198
|
-
"test": "npx grunt configTests && node --
|
|
199
|
+
"repl": "node --no-warnings src/node/repl.mjs",
|
|
200
|
+
"test": "npx grunt configTests && node --no-warnings --no-deprecation --openssl-legacy-provider tests/node/index.mjs && node --no-warnings --no-deprecation --openssl-legacy-provider --trace-uncaught tests/operations/index.mjs",
|
|
199
201
|
"testnodeconsumer": "npx grunt testnodeconsumer",
|
|
200
202
|
"testui": "npx grunt testui",
|
|
201
203
|
"testuidev": "npx nightwatch --env=dev",
|
|
202
204
|
"lint": "npx grunt lint",
|
|
203
205
|
"lint:grammar": "cspell ./src",
|
|
204
206
|
"postinstall": "npx grunt exec:fixCryptoApiImports && npx grunt exec:fixSnackbarMarkup",
|
|
205
|
-
"newop": "node
|
|
206
|
-
"minor": "node
|
|
207
|
+
"newop": "node src/core/config/scripts/newOperation.mjs",
|
|
208
|
+
"minor": "node src/core/config/scripts/newMinorVersion.mjs && npm version minor --git-tag-version=false && echo \"Updated to version v$(npm pkg get version | xargs), please create a pull request and once merged use 'npm run tag'\"",
|
|
207
209
|
"tag": "git tag -s \"v$(npm pkg get version | xargs)\" -m \"$(npm pkg get version | xargs)\" && echo \"Created v$(npm pkg get version | xargs), now check and push the tag\"",
|
|
208
210
|
"getheapsize": "node -e 'console.log(`node heap limit = ${require(\"v8\").getHeapStatistics().heap_size_limit / (1024 * 1024)} Mb`)'",
|
|
209
211
|
"setheapsize": "export NODE_OPTIONS=--max_old_space_size=2048"
|
|
212
|
+
},
|
|
213
|
+
"engines": {
|
|
214
|
+
"node": ">=24 <25"
|
|
210
215
|
}
|
|
211
216
|
}
|
package/src/core/ChefWorker.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import Chef from "./Chef.mjs";
|
|
10
|
-
import OperationConfig from "./config/OperationConfig.json"
|
|
10
|
+
import OperationConfig from "./config/OperationConfig.json" with { type: "json" };
|
|
11
11
|
import OpModules from "./config/modules/OpModules.mjs";
|
|
12
12
|
import loglevelMessagePrefix from "loglevel-message-prefix";
|
|
13
13
|
|
package/src/core/Recipe.mjs
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @license Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import OperationConfig from "./config/OperationConfig.json"
|
|
7
|
+
import OperationConfig from "./config/OperationConfig.json" with { type: "json" };
|
|
8
8
|
import OperationError from "./errors/OperationError.mjs";
|
|
9
9
|
import Operation from "./Operation.mjs";
|
|
10
10
|
import DishError from "./errors/DishError.mjs";
|