阅读更多



Git 官方近日发布了一条重要的消息,所有版本的 Git 客户端在大小写不敏感的文件系统上均存在安全漏洞,包括 Windows 和 Mac 的客户端。

攻击者可以通过构造特殊 repo 内容覆盖 Git 的仓库级配置文件 .git/config。因为该漏洞只存在于客户端中,所以网站与企业版都不会受到直接的影响。

GitCafe 友情提醒,升级到 V2.2.1 等紧急维护版本即可以解决这个问题。

漏洞!大小写惹的祸?

这个漏洞源于对大小写不敏感或者不区分大小写的文件系统。比如攻击者可以建立一个恶意的 Git 树使 git/config 被覆盖,从而修改 Git 仓库中的代码。

OS X (HFS+) 或任何 Windows (NTFS, FAT) 版本的 Git 客户端上都存在这一问题。对于 Linux 客户端,如果它的文件系统对字母大小写敏感,那么它就不受此漏洞的影响。

不过,GitCafe 必须提醒大家的一点是,即使这个漏洞不会太影响到 Linux 的用户,如果你提供的是托管的服务,而你的用户可能会获取你的服务到 Windows 或者 Mac OS X 机器上,我们强烈地建议你更新以保护还在使用现有 Git 版本的用户。

所以请使用 Git 的用户和企业尽快更新客户端。同时如果用户访问代码副本托管在不安全或者不受信任主机上的 Git 库时,一定要格外小心。

Git 官方称,当下托管在网站上的库中是不可能包含恶意程序的,因为在托管时其已经进行了严格的检查。

Git 官方还建议所有 Git 用户都应该立即更新他们的 Git 应用程序,不仅限于 Windows 和 Mac 用户,网页版用户也同样需要。

升级到 V 2.2.1

升级到 V2.2.1 等紧急维护版本可以解决。

V2.2.0 以后的更改如下:

  1. Hartmut Henkel (1):

    • l10n:de.po: 修复拼写错误
  2. Jeff King (8):

    • unpack-trees:  将错误条目添加到索引
    • read-tree: 为混乱的路径 . 和 git 添加测试
    • verify_dotfile(): 阻止 .git 不区分大小写
    • t1450: 重构 .、. .、.git fsck 测试
    • fsck: 注意到 .git 不区分大小写
    • use utf8: 添加 is_hfs_dotgit() 的帮助
    • 读缓存: 选择不允许 HFS +.git 变体
    • fsck: 抱怨位于树中的 HFS +.git 别名
  3. Johannes Schindelin (3):

    • 路径: 添加 is_ntfs_dotgit() 的帮助
    • 读缓存: 选择不允许 NTFS.git 变体
    • fsck: 抱怨位于树中的 NTFS .git 别名
以下 Git 版本中不包含该漏洞:

  • V1.8.5.6
  • V1.9.5(专门针对 Windows 用户)
  • V2.0.5
  • V2.1.4
  • V2.2.1


希望各位开发者尽快升级客户端到稳定的版本。
  • 大小: 401.2 KB
来自: 微信
0
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • git版本管理工具详细教程和常见工作场景介绍

    1 git简介 2 Git使用环境安装与基本使用 3 git 各使用场景操作说明 4 git submode 5 repo 介绍 6 代码评审及工具介绍 7 图形化操作介绍 8 git服务器搭建 9 其它介绍与问题处理

  • Git版本控制工具

    使用比较广泛的有三个版本控制工具:CVS、SVN、Git第一个被大规模使用的版本控制工具,诞生于1985年;由荷兰阿姆斯特丹VU大学的Dick Grune教授实现的,也算是SVN的前身(SVN的出现就是为了取代CVS的)。因其命令行...

  • git代码版本控制

    git就是一个分布式的版本控制软件,直接记录快照。

  • Git版本控制系统

    Git是目前世界上最先进的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 1、谈谈Git与SVN的区别 Git是分布式的,svn不是:这个是Git和其他非分布式的版本控制系统的,最主要的区别。 Git把内容按元...

  • Git完全指南

    Git 一、学习目标 了解Git的历史、安装、基本操作、高级命令。 二、基础知识 2.1版本控制工具 版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况的系统。 2.1.1版本控制发展 2.1.1.1本地...

  • Git分布式版本控制工具详细使用步骤

    Git安装2.1 软件下载2.1.1 Git下载2.1.2 TortoiseGit下载2.1.3 中文语言包下载2.2 软件安装2.2.1 安装Git2.2.2 安装TortoiseGit2.2.3 安装中文语言包3. 使用Git管理文件版本3.1 创建版本库3.1....

  • Git Windows版的安装与使用(保姆级教程,附案例)

    git安装与使用的保姆级教程,图文齐全,一步一步教,小白看了都说好 ~,安装、使用、创建仓库、同步代码、检查代码、创建分支、合并主分支等等...

  • Git学习笔记

    版本控制1.1 关于版本控制版本控制(Version Control Systems)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。这个系统可以自动帮我们备份文件的每一次更改,并且可以非常方便的恢复到...

  • Git介绍

    一、版本管理介绍 1、文件的版本 为了记录文件内容的版本变化,经常会将==文件另存重命名==,然后再修改。 2、版本控制软件 2.1 概念 版本控制软件是一个用来记录文件变化,以便将来查阅特定版本修订情况的系统,...

  • Git分布式版本控制系统

    二,GIT分布式版本控制系统 2.1 Git简介 2.1.1 git是什么? Git在Wikipedia上的定义:它是一个免费的、分布式的版本控制工具,或是一个强调了速度快的源代码管理工具。Git最初被Linus Torvalds开发出来用于管理...

  • 程序员必知:这是一份全面 & 详细的 Git与Github 介绍指南

    前言 如果你从事 互联网技术研发,那么你一定需要 了解 Git & Github 本文将采用 图 & 表的方式,向你全面介绍 Git 与 Github,包括其功能、应用场景 &...下面,我将 Git与 其他类型的版本控制系...

  • git详细教程

    一、版本控制概要 1.1、什么是版本控制 版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。 ...

  • git操作

    资料 一、介绍 这篇指南以大家在SVN中已经广为熟悉使用的...行文中实践原则和操作示例并重,对于Git的资深玩家可以梳理思考提升,而新接触的同学,也可以跟着step-by-step操练学习并在实际工作中上手使用。 工作流其

  • Git、Github 学习复习笔记 包括(Git基本操作、Github基本使用、Git分支操作)

    本文包含 Git基本操作与 Github 等内容,参考于 黑马PPT (本文大量截取黑马PPT方便演示学习)通过自己理解整理,所以这是一篇用于小白新手入门,或者复习使用的笔记,主要包括(Git基本操作、Github基本使用、Git...

  • Git分布式版本控制系统(上)

    Git分布式版本控制系统(上) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便哦 1. 企业高效持续集成平台场景介绍 2. GIT分布式版本控制系统...

  • git

    资料 一、介绍 这篇指南以大家在SVN中已经广为熟悉使用的...行文中实践原则和操作示例并重,对于Git的资深玩家可以梳理思考提升,而新接触的同学,也可以跟着step-by-step操练学习并在实际工作中上手使用。 工作流其

  • GIT和GitHub

    什么是GITGIT是一个开源的分布式版本控制系统,用于高效的管理各种大小项目和文件。代码管理工具的用途防止代码丢失,做备份项目的版本管理和控制,可以通过设置节点进行跳转建立各自的开发环境分支,互不影响,方便...

  • 快速学会GIT

    远程仓库1.1、什么是版本控制1.2、常用术语1.3、常见的版本控制器1.4、版本控制分类1.4.1、本地版本控制1.4.2、集中版本控制1.4.3、分布式版本控制1.5、Git与SVN最主要区别二、Git安装与配置2.1、什么是Git2.2、搭建...

  • git入门-基本操作与http/ssh连接远程仓库

    Git是目前世界上最先进的分布式版本控制系统。 ex: “最终最终最终稿” 除非你就是传说中的改一步备份一次永远不删除的大师! 如果不是我相信git可以帮助你 2.Git与Github 2.1、两者的区别 Git是一个分布式版本控制...

  • setting.xml文件,修改Maven仓库指向至阿里仓

    setting.xml文件,修改Maven仓库指向至阿里仓

Global site tag (gtag.js) - Google Analytics