@fedify/fedify 1.4.0-dev.599 → 1.4.0-dev.607
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/CHANGES.md +94 -0
- package/esm/deno.js +1 -1
- package/esm/runtime/url.js +7 -1
- package/esm/vocab/vocab.js +176 -176
- package/esm/webfinger/lookup.js +21 -1
- package/package.json +1 -1
- package/types/runtime/url.d.ts.map +1 -1
- package/types/webfinger/lookup.d.ts.map +1 -1
package/CHANGES.md
CHANGED
@@ -48,6 +48,29 @@ To be released.
|
|
48
48
|
[#195]: https://github.com/dahlia/fedify/issues/195
|
49
49
|
|
50
50
|
|
51
|
+
Version 1.3.4
|
52
|
+
-------------
|
53
|
+
|
54
|
+
Released on January 21, 2025.
|
55
|
+
|
56
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
57
|
+
[[CVE-2025-23221]]
|
58
|
+
|
59
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
60
|
+
had followed the infinite number of redirects, which could lead to
|
61
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
62
|
+
|
63
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
64
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
65
|
+
could lead to a security breach. Now it follows only the same scheme
|
66
|
+
as the original request.
|
67
|
+
|
68
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
69
|
+
had followed the redirects to the private network addresses, which
|
70
|
+
could lead to a SSRF attack. Now it follows only the public network
|
71
|
+
addresses.
|
72
|
+
|
73
|
+
|
51
74
|
Version 1.3.3
|
52
75
|
-------------
|
53
76
|
|
@@ -192,6 +215,29 @@ Released on November 30, 2024.
|
|
192
215
|
[#193]: https://github.com/dahlia/fedify/issues/193
|
193
216
|
|
194
217
|
|
218
|
+
Version 1.2.11
|
219
|
+
--------------
|
220
|
+
|
221
|
+
Released on January 21, 2025.
|
222
|
+
|
223
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
224
|
+
[[CVE-2025-23221]]
|
225
|
+
|
226
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
227
|
+
had followed the infinite number of redirects, which could lead to
|
228
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
229
|
+
|
230
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
231
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
232
|
+
could lead to a security breach. Now it follows only the same scheme
|
233
|
+
as the original request.
|
234
|
+
|
235
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
236
|
+
had followed the redirects to the private network addresses, which
|
237
|
+
could lead to a SSRF attack. Now it follows only the public network
|
238
|
+
addresses.
|
239
|
+
|
240
|
+
|
195
241
|
Version 1.2.10
|
196
242
|
--------------
|
197
243
|
|
@@ -416,6 +462,29 @@ Released on October 31, 2024.
|
|
416
462
|
[#118]: https://github.com/dahlia/fedify/issues/118
|
417
463
|
|
418
464
|
|
465
|
+
Version 1.1.11
|
466
|
+
--------------
|
467
|
+
|
468
|
+
Released on January 21, 2025.
|
469
|
+
|
470
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
471
|
+
[[CVE-2025-23221]]
|
472
|
+
|
473
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
474
|
+
had followed the infinite number of redirects, which could lead to
|
475
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
476
|
+
|
477
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
478
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
479
|
+
could lead to a security breach. Now it follows only the same scheme
|
480
|
+
as the original request.
|
481
|
+
|
482
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
483
|
+
had followed the redirects to the private network addresses, which
|
484
|
+
could lead to a SSRF attack. Now it follows only the public network
|
485
|
+
addresses.
|
486
|
+
|
487
|
+
|
419
488
|
Version 1.1.10
|
420
489
|
--------------
|
421
490
|
|
@@ -681,6 +750,31 @@ Released on October 20, 2024.
|
|
681
750
|
[#150]: https://github.com/dahlia/fedify/issues/150
|
682
751
|
|
683
752
|
|
753
|
+
Version 1.0.14
|
754
|
+
--------------
|
755
|
+
|
756
|
+
Released on January 21, 2025.
|
757
|
+
|
758
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
759
|
+
[[CVE-2025-23221]]
|
760
|
+
|
761
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
762
|
+
had followed the infinite number of redirects, which could lead to
|
763
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
764
|
+
|
765
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
766
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
767
|
+
could lead to a security breach. Now it follows only the same scheme
|
768
|
+
as the original request.
|
769
|
+
|
770
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
771
|
+
had followed the redirects to the private network addresses, which
|
772
|
+
could lead to a SSRF attack. Now it follows only the public network
|
773
|
+
addresses.
|
774
|
+
|
775
|
+
[CVE-2025-23221]: https://github.com/dahlia/fedify/security/advisories/GHSA-c59p-wq67-24wx
|
776
|
+
|
777
|
+
|
684
778
|
Version 1.0.13
|
685
779
|
--------------
|
686
780
|
|
package/esm/deno.js
CHANGED
package/esm/runtime/url.js
CHANGED
@@ -38,7 +38,13 @@ export async function validatePublicUrl(url) {
|
|
38
38
|
}
|
39
39
|
// To prevent SSRF via DNS rebinding, we need to resolve all IP addresses
|
40
40
|
// and ensure that they are all public:
|
41
|
-
|
41
|
+
let addresses;
|
42
|
+
try {
|
43
|
+
addresses = await lookup(hostname, { all: true });
|
44
|
+
}
|
45
|
+
catch {
|
46
|
+
addresses = [];
|
47
|
+
}
|
42
48
|
for (const { address, family } of addresses) {
|
43
49
|
if (family === 4 && !isValidPublicIPv4Address(address) ||
|
44
50
|
family === 6 && !isValidPublicIPv6Address(address) ||
|