From ba6feced6281ef41aa7b9cc3219ef09f96521730 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 28 Jul 2026 15:30:08 +0000 Subject: [PATCH] chore(release): Update version to v1.4.462 --- CHANGELOG.md | 7 +++++++ cmd/fabric/version.go | 2 +- cmd/generate_changelog/changelog.db | Bin 4542464 -> 4550656 bytes cmd/generate_changelog/incoming/2167.txt | 4 ---- nix/pkgs/fabric/version.nix | 2 +- 5 files changed, 9 insertions(+), 6 deletions(-) delete mode 100644 cmd/generate_changelog/incoming/2167.txt diff --git a/CHANGELOG.md b/CHANGELOG.md index a5c4c745..400dc10f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## v1.4.462 (2026-07-28) + +### PR [#2123](https://github.com/danielmiessler/Fabric/pull/2123) by [ksylvan](https://github.com/ksylvan) and [OdinKral](https://github.com/OdinKral): fix: block path traversal in pattern name lookup + +- **Security Fix:** Blocked path traversal attacks in pattern name lookup (closes #2094) — pattern names containing `..` could previously escape the patterns directory and read arbitrary files via `filepath.Join`; a guard has been added at the top of `getFromDB`, an i18n key `pattern_invalid_name` has been added to all 11 locale files, and test cases now cover all common traversal variants. +- New translations for the "invalid pattern" user-facing string. + ## v1.4.461 (2026-07-28) ### PR [#2152](https://github.com/danielmiessler/Fabric/pull/2152) by [AUTHENSOR](https://github.com/AUTHENSOR): fix: shell-escape extension values to prevent command injection diff --git a/cmd/fabric/version.go b/cmd/fabric/version.go index 0f595fc8..6a3a0a03 100644 --- a/cmd/fabric/version.go +++ b/cmd/fabric/version.go @@ -1,3 +1,3 @@ package main -var version = "v1.4.461" +var version = "v1.4.462" diff --git a/cmd/generate_changelog/changelog.db b/cmd/generate_changelog/changelog.db index 2105f7b8cc3b63c7b6e90b36eb83f1f4f32dbd3d..69aec75961343b2361c77d4cf8f5d305ff154a22 100644 GIT binary patch delta 6710 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 delta 1708 zcmbuO(I&P*Li>wN=tCcBOy+y| z&z$rB=bZU7ZR5ST?PxEKW$+sqhO6$9{b4hj zyrmtwKVo5}qQZKlBVbTACFiagpSIrPk-tq^#Z zuxnUy>1w*dGCeoqXB(Gm#5cq+hHO=FLnMarhNgJ`wjX)TrurtiadSMp^Te;5{tKp@ z@F7%38bZj6&DUvv2u{@EPFefR_H!v-`) z(nrxjo$0RescF9{Y|7~>OD3UXn4=@3$YVqu@v!?1(I2;0X7 z&B?RJjj${EZly7Yo2kJ?3Q#d3Y4zIgT)2CcnDG(=k8 zUZjw{=dBH7*k6`K9;8VEY296<(6S5G%ksjsDcV^orHh<)7>@1y7Apce@Nnisw@yGiv2RM#nwQHEmZnoUZi-n(_=vQF zv_zx@SWxNFh_ssH__I*9?4AwEc9hSQ9eqDpp*7p3le!mN6s_4S(VD&Tsq*LTKPoqo z-J`PW-_1-$MrHN$Te5;%5~=OFeEas>p{jiD)q%(HMR^-g$KBhvrK3;(e;yOT_}1w=ae$U9fSD3i`<4=g~@f=MqZq6L%1 z*Q$|=@*!V6CQqt-pV9|az9TwRMLXB{?3iq+c4&#A+L6HvUZ!(l^k$t8yaHYYCBP3# zK^a&|Z`K7A3%i(WBtj%mLlb0;p3{`=JKD;vA;<0nbE19C0ovCb+_*7O;CdKyrK#I+ pKzCD@%LllgXVY6a+H)ru@rhVBz!#<|`c?$ayVn{~PpEFPQ)U diff --git a/cmd/generate_changelog/incoming/2167.txt b/cmd/generate_changelog/incoming/2167.txt deleted file mode 100644 index 0a5760cb..00000000 --- a/cmd/generate_changelog/incoming/2167.txt +++ /dev/null @@ -1,4 +0,0 @@ -### PR [#2123](https://github.com/danielmiessler/Fabric/pull/2123) by [ksylvan](https://github.com/ksylvan) and [OdinKral](https://github.com/OdinKral): fix: block path traversal in pattern name lookup - -- **Security Fix:** Blocked path traversal attacks in pattern name lookup (closes #2094) — pattern names containing `..` could previously escape the patterns directory and read arbitrary files via `filepath.Join`; a guard has been added at the top of `getFromDB`, an i18n key `pattern_invalid_name` has been added to all 11 locale files, and test cases now cover all common traversal variants. -- New translations for the "invalid pattern" user-facing string. diff --git a/nix/pkgs/fabric/version.nix b/nix/pkgs/fabric/version.nix index a86de663..9a91820f 100644 --- a/nix/pkgs/fabric/version.nix +++ b/nix/pkgs/fabric/version.nix @@ -1 +1 @@ -"1.4.461" +"1.4.462"