git-2.43.5-1.el8_10
エラータID: AXSA:2024-8477:08
Git is a distributed revision control system with a decentralized architecture. As opposed to centralized version control systems with a client-server model, Git ensures that each working copy of a Git repository is an exact copy with complete revision history. This not only allows the user to work on and contribute to projects without the need to have permission to push the changes to their official repositories, but also makes it possible for the user to work with no network connection.
Security Fix(es):
* git: Recursive clones RCE (CVE-2024-32002)
* git: RCE while cloning local repos (CVE-2024-32004)
* git: additional local RCE (CVE-2024-32465)
* git: insecure hardlinks (CVE-2024-32020)
* git: symlink bypass (CVE-2024-32021)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer the CVE page(s) listed in the References section.
CVE-2024-32002
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, repositories with submodules can be crafted in a way that exploits a bug in Git whereby it can be fooled into writing files not into the submodule's worktree but into a `.git/` directory. This allows writing a hook that will be executed while the clone operation is still running, giving the user no opportunity to inspect the code that is being executed. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. If symbolic link support is disabled in Git (e.g. via `git config --global core.symlinks false`), the described attack won't work. As always, it is best to avoid cloning repositories from untrusted sources.
CVE-2024-32004
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, an attacker can prepare a local repository in such a way that, when cloned, will execute arbitrary code during the operation. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. As a workaround, avoid cloning repositories from untrusted sources.
CVE-2024-32020
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, local clones may end up hardlinking files into the target repository's object database when source and target repository reside on the same disk. If the source repository is owned by a different user, then those hardlinked files may be rewritten at any point in time by the untrusted user. Cloning local repositories will cause Git to either copy or hardlink files of the source repository into the target repository. This significantly speeds up such local clones compared to doing a "proper" clone and saves both disk space and compute time. When cloning a repository located on the same disk that is owned by a different user than the current user we also end up creating such hardlinks. These files will continue to be owned and controlled by the potentially-untrusted user and can be rewritten by them at will in the future. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4.
CVE-2024-32021
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, when cloning a local source repository that contains symlinks via the filesystem, Git may create hardlinks to arbitrary user-readable files on the same filesystem as the target repository in the `objects/` directory. Cloning a local repository over the filesystem may creating hardlinks to arbitrary user-owned files on the same filesystem in the target Git repository's `objects/` directory. When cloning a repository over the filesystem (without explicitly specifying the `file://` protocol or `--no-local`), the optimizations for local cloning will be used, which include attempting to hard link the object files instead of copying them. While the code includes checks against symbolic links in the source repository, which were added during the fix for CVE-2022-39253, these checks can still be raced because the hard link operation ultimately follows symlinks. If the object on the filesystem appears as a file during the check, and then a symlink during the operation, this will allow the adversary to bypass the check and create hardlinks in the destination objects directory to arbitrary, user-readable files. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4.
CVE-2024-32465
Git is a revision control system. The Git project recommends to avoid working in untrusted repositories, and instead to clone it first with `git clone --no-local` to obtain a clean copy. Git has specific protections to make that a safe operation even with an untrusted source repository, but vulnerabilities allow those protections to be bypassed. In the context of cloning local repositories owned by other users, this vulnerability has been covered in CVE-2024-32004. But there are circumstances where the fixes for CVE-2024-32004 are not enough: For example, when obtaining a `.zip` file containing a full copy of a Git repository, it should not be trusted by default to be safe, as e.g. hooks could be configured to run within the context of that repository. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. As a workaround, avoid using Git in repositories that have been obtained via archives from untrusted sources.
Update packages.
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, repositories with submodules can be crafted in a way that exploits a bug in Git whereby it can be fooled into writing files not into the submodule's worktree but into a `.git/` directory. This allows writing a hook that will be executed while the clone operation is still running, giving the user no opportunity to inspect the code that is being executed. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. If symbolic link support is disabled in Git (e.g. via `git config --global core.symlinks false`), the described attack won't work. As always, it is best to avoid cloning repositories from untrusted sources.
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, an attacker can prepare a local repository in such a way that, when cloned, will execute arbitrary code during the operation. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. As a workaround, avoid cloning repositories from untrusted sources.
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, local clones may end up hardlinking files into the target repository's object database when source and target repository reside on the same disk. If the source repository is owned by a different user, then those hardlinked files may be rewritten at any point in time by the untrusted user. Cloning local repositories will cause Git to either copy or hardlink files of the source repository into the target repository. This significantly speeds up such local clones compared to doing a "proper" clone and saves both disk space and compute time. When cloning a repository located on the same disk that is owned by a different user than the current user we also end up creating such hardlinks. These files will continue to be owned and controlled by the potentially-untrusted user and can be rewritten by them at will in the future. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4.
Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, when cloning a local source repository that contains symlinks via the filesystem, Git may create hardlinks to arbitrary user-readable files on the same filesystem as the target repository in the `objects/` directory. Cloning a local repository over the filesystem may creating hardlinks to arbitrary user-owned files on the same filesystem in the target Git repository's `objects/` directory. When cloning a repository over the filesystem (without explicitly specifying the `file://` protocol or `--no-local`), the optimizations for local cloning will be used, which include attempting to hard link the object files instead of copying them. While the code includes checks against symbolic links in the source repository, which were added during the fix for CVE-2022-39253, these checks can still be raced because the hard link operation ultimately follows symlinks. If the object on the filesystem appears as a file during the check, and then a symlink during the operation, this will allow the adversary to bypass the check and create hardlinks in the destination objects directory to arbitrary, user-readable files. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4.
Git is a revision control system. The Git project recommends to avoid working in untrusted repositories, and instead to clone it first with `git clone --no-local` to obtain a clean copy. Git has specific protections to make that a safe operation even with an untrusted source repository, but vulnerabilities allow those protections to be bypassed. In the context of cloning local repositories owned by other users, this vulnerability has been covered in CVE-2024-32004. But there are circumstances where the fixes for CVE-2024-32004 are not enough: For example, when obtaining a `.zip` file containing a full copy of a Git repository, it should not be trusted by default to be safe, as e.g. hooks could be configured to run within the context of that repository. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. As a workaround, avoid using Git in repositories that have been obtained via archives from untrusted sources.
N/A
SRPMS
- git-2.43.5-1.el8_10.src.rpm
MD5: bc70372d420788b963955c9e077c724e
SHA-256: 96188b363be0f9cceecaf7ad38bf0636cdb30ec5b1e0fc972e6a217f1760b040
Size: 7.14 MB
Asianux Server 8 for x86_64
- git-2.43.5-1.el8_10.x86_64.rpm
MD5: 15161340e4858426706bcdec9918c5b6
SHA-256: a61a7455672d9d22ba44bdcfe6c2ed3756eb5313c77069efbbb25744ea3f5765
Size: 91.25 kB - git-all-2.43.5-1.el8_10.noarch.rpm
MD5: 6e8d061e777e4481df845727188f890c
SHA-256: 20f49ae92978d234ee492a32f743de87de542480b437e24b984e184f2d412748
Size: 48.07 kB - git-core-2.43.5-1.el8_10.x86_64.rpm
MD5: 3d1be635182f72bd48d5b34ca59d8bbe
SHA-256: 0f5c8a7d16c0f28583b999f92bd04fae2f823777fa76c50eaa3cbfb8ce658f0e
Size: 11.08 MB - git-core-doc-2.43.5-1.el8_10.noarch.rpm
MD5: 516cf4578755972073998da5dea3f387
SHA-256: d2d22c9b1b8b24786d40b3648edadb4318349e7214e967107de3c637f52e2c1a
Size: 3.06 MB - git-credential-libsecret-2.43.5-1.el8_10.x86_64.rpm
MD5: aac3067e2d1508ec9afa5d55d9a7cfe5
SHA-256: 0713e7bd6ce3296ddc63bd84075dab4e2a6586cfb4a5b79383e178ca55993aa7
Size: 55.11 kB - git-daemon-2.43.5-1.el8_10.x86_64.rpm
MD5: 0ca37fd34692d34e946b6fef31e35b3c
SHA-256: 35197947e8b4912386b7f4a3405f44ee5cd9077fbc41ded3f8a29099e1da7a28
Size: 1.05 MB - git-email-2.43.5-1.el8_10.noarch.rpm
MD5: ca5e6cec172d9b0899cc5e605a1094b5
SHA-256: de991d4722f9486044423ce01be8057c9570bd7bbef1e1eb2ef809e8fe098f75
Size: 93.21 kB - git-gui-2.43.5-1.el8_10.noarch.rpm
MD5: d5e0e6e8067cab331c47ae94a7a3dd53
SHA-256: 235ebdff7fe257568f567cf6f72644339b7cd93d8988a31df6724c7598f7b7b0
Size: 305.75 kB - git-instaweb-2.43.5-1.el8_10.noarch.rpm
MD5: 77c0a45d6f47bbf71c2c647021328f4b
SHA-256: 5162e058a0251c0b750c85f15d19f4c97c02502e4b7b0fd7ab34de6fbb214a75
Size: 62.98 kB - gitk-2.43.5-1.el8_10.noarch.rpm
MD5: 3699ce73955d0e2ff281dec414e50273
SHA-256: 1042570b475a85079d5f846880a4cd850066f158b243f9651a8cb0e276ce1399
Size: 208.80 kB - git-subtree-2.43.5-1.el8_10.x86_64.rpm
MD5: 632605b656111a20842d0c83cb0ad921
SHA-256: e3468575a06adf9330234ba0010c533e6c998e995d2879ad63167e254495afba
Size: 72.67 kB - git-svn-2.43.5-1.el8_10.noarch.rpm
MD5: cf68aace5f6588bbd05b800f8fe4accf
SHA-256: 3bef1467d49b9fa4403640e0f5c87f549fcfd294c6853033eeedff6282fb1956
Size: 110.41 kB - gitweb-2.43.5-1.el8_10.noarch.rpm
MD5: ead4f8fed0b202331900a15b33c01001
SHA-256: ed701d9505bb063f7a8fb54c00fd9b74b9629ca40eeb9c033514bd4b9b2fdc07
Size: 189.79 kB - perl-Git-2.43.5-1.el8_10.noarch.rpm
MD5: 1e39c86883f0514de9a5b8bcff7b4837
SHA-256: 11657aeea526ef30948d0a01d30d889832b098d71f1f0935c671107a5e18ecfb
Size: 77.84 kB - perl-Git-SVN-2.43.5-1.el8_10.noarch.rpm
MD5: bd7a1fab9cfaf2fbf1c3e5dfba07c85c
SHA-256: 154a22a3f15df69782f0b8855dfbb5c9c2f5c6c104e0ca30a7de23f08e6155b3
Size: 94.57 kB