151003osxelcapitaninstall100619116orig
Security

Outdated Git version in OS X puts developers at risk

The OS X command line developer tools include an old version of the Git source code management system that exposes Mac users to remote code execution attacks.

The Git client allows developers to interact with source code repositories. It is not installed by default on Mac OS X, but it is included in the Command Line Tools package for Xcode, Apple's integrated development environment (IDE).

Software developers who create applications for OS X or iOS are likely to use Xcode and to have Apple's Command Line Tools package installed on their Macs. The latest version of this package includes Git version 2.6.4, released in December.

The problem is that Git 2.6.4 has two serious vulnerabilities that were publicly disclosed last month. The flaws, tracked as CVE-2016-2315 and CVE-2016-2324, affect both client and server deployments on Git. On the client side, they could lead to remote code execution when cloning a repository with a large filename or a large number of nested trees.

The vulnerabilities were fixed in Git 2.7.4, released on March 17, but one month later Apple still hasn't released an update to its Command Line Tools package.

Even worse, since the Git binary is installed as a system-level program, on OS X El Capitan (10.11) users can't easily replace or update it themselves, according to systems administration expert Rachel Kroll. That's because Apple's latest OS X version includes System Integrity Protection (SIP), a mechanism that prevents modifying programs in certain protected directories like /usr and /bin, even with root privileges.

"Maybe you want to be clever and protect your users by disabling it until you can figure something else out," Kroll said in a blog post. "Well, sorry. You also can't 'chmod -x' to at least keep it from being used. It will also fail."

Fortunately, there is a workaround, because /usr/bin/git is just a clever link to /Applications/Xcode.app/Contents/Developer/usr/bin, which can be modified. Running "chmod -x" on the latter binary will remove its execution privileges and ensure that no users or programs accidentally run it.

Then you have to wait until Apple releases a patched version as part of a future Command Line Tools package. However, Git is important for development tools and preventing its use could affect workflows.

Apple did not immediately respond to an inquiry about its plans of patching the Git binary that the company distributes.

"If you rely on machines like this, I am truly sorry," Kroll said. "I feel for you."

IDG Insider

PREVIOUS ARTICLE

« Wild Vegas VR porn experience gives room service a new twist

NEXT ARTICLE

Lawmakers call for middle ground on law enforcement access to encryption »
author_image
IDG News Service

The IDG News Service is the world's leading daily source of global IT news, commentary and editorial resources. The News Service distributes content to IDG's more than 300 IT publications in more than 60 countries.

  • Mail

Recommended for You

Trump hits partial pause on Huawei ban, but 5G concerns persist

Phil Muncaster reports on China and beyond

FinancialForce profits from PSA investment

Martin Veitch's inside track on today’s tech trends

Future-proofing the Middle East

Keri Allan looks at the latest trends and technologies

Poll

Do you think your smartphone is making you a workaholic?