diff options
author | Johannes Sixt <j6t@kdbg.org> | 2025-05-20 08:56:09 +0200 |
---|---|---|
committer | Taylor Blau <me@ttaylorr.com> | 2025-05-23 17:04:31 -0400 |
commit | 311d9ada3a7c2c49669d656a0359cc3a9ccfeeef (patch) | |
tree | 2a415d4e14344093eda9d6e2a0daa026ae564989 /git-gui/lib/sshkey.tcl | |
parent | a7d1716fa648f6557ea9c91e0f04bae2e8738e6a (diff) | |
parent | a437f5bc93330a70b42a230e52f3bd036ca1b1da (diff) |
Merge branch 'js/fix-open-exec'
This addresses CVE-2025-46835, Git GUI can create and overwrite a
user's files:
When a user clones an untrusted repository and is tricked into editing
a file located in a maliciously named directory in the repository, then
Git GUI can create and overwrite files for which the user has write
permission.
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Diffstat (limited to 'git-gui/lib/sshkey.tcl')
-rw-r--r-- | git-gui/lib/sshkey.tcl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/git-gui/lib/sshkey.tcl b/git-gui/lib/sshkey.tcl index c0c5d1dad8..c3e681b899 100644 --- a/git-gui/lib/sshkey.tcl +++ b/git-gui/lib/sshkey.tcl @@ -7,7 +7,7 @@ proc find_ssh_key {} { ~/.ssh/id_rsa.pub ~/.ssh/identity.pub } { if {[file exists $name]} { - set fh [open $name r] + set fh [safe_open_file $name r] set cont [read $fh] close $fh return [list $name $cont] @@ -86,7 +86,7 @@ proc make_ssh_key {w} { set cmdline [list [shellpath] -c \ {echo | ssh-keygen -q -t rsa -f ~/.ssh/id_rsa 2>&1}] - if {[catch { set sshkey_fd [_open_stdout_stderr $cmdline] } err]} { + if {[catch { set sshkey_fd [safe_open_command $cmdline] } err]} { error_popup [mc "Could not start ssh-keygen:\n\n%s" $err] return } |