Rogue Source Code Repos Can Compromise Mac Security Due To Old Git Version (softpedia.com)
An anonymous reader writes: Recent Mac versions come bundled with a very old version of Git (2.6.4) that is vulnerable to two security flaws that allow attackers to execute code on the device when the user forks a Git repo holding "malicious" code. The problem is that users can't upgrade this Git repo, they can't change its runtime permissions, nor can they remove it because Apple blocks even root users from twiddling with some system-level programs. "If you rely on machines like this, I am truly sorry. I feel for you," the researcher wrote on her blog. "I wrote this post in an attempt to goad them [Apple] into action because this is affecting lots of people who are important to me. They are basically screwed until Apple deigns to deliver a patched git unto them."
Well why can't you just compile a new git and stick it in your path?
sudo port install git
Not that complicated.
sudo port install git
echo "export PATH=/opt/local/bin:\$PATH" >> ~/.bashrc
Oh! The humanity!
(Requires https://www.macports.org/insta...)
As an aside, it's possible to override SIP, but it's a bit of a PITA.
First, you turn off System Integrity Protection by following the directions on Apple's Configuring System Integrity Protection page.
Then, you replace it (or any other program you want, including /System/Library/Kernels/kernel).
Then, if you want, you turn System Integrity Protection back on.
When you make a copy of a git repository on your machine, it's called "cloning" the repo. "Fork" is a GitHub buzzword.
I'm annoyed this is a problem and would like Apple to fix it, but using bullshit to spread a story is a bit counter-productive.
It's not old (about 4 months since release, mid-Dec 2015) and unless you're using integrated git in Xcode, very easy to upgrade via brew or macports.
Granted, it's a bummer that Apple hasn't tended to the Git client shipped with Xcode.
That said, I'd argue just about anyone who takes the trouble to install and use Xcode and the associated command line stuff that comes with it is going to know how to steer ($PATH) around (fink, macports) a problematic tool once informed about it.
She got this onto Slashdot, so the hard part is on its way to being handled: getting the word out.
Luke, help me take this mask off
Does this mean that if your hardware vendor has a deity level above root then that is a bad thing?
134340: I am not a number. I am a free planet!
sudo port install nethack
In a band? Use WheresTheGig for free.
It's not Apple's fault here. The git community developers completely and utterly botched this vulnerability. They announced it to the world, claiming it was fixed in 2.7.1 only to retract that a few days later after releasing 2.7.3 and then finally fixing it in 2.7.4. Apple released Xcode 7.3 just a couple days after git-2.7.4 was released, so it's no surprise that it doesn't contain the fix.
Had the git community actually disclosed companies ahead of the announcement (and better yet, had released a fix before the announcement, or even have been *accurate* in the announcent), the vulnerability likely would have been fixed in Xcode 7.3. As it is, developers need to wait for Apple to spin an updated version of Xcode for this fix.
The blame lies 100% on the git community for this debacle.
See https://marc.ttias.be/oss-security/2016-03/msg00195.php for more details about how they completely failed here.
Why is everyone so focused on replacing /usr/bin/git on their Mac? It's not git. It's just a stub that uses libxcselect to find git within Xcode:
$ otool -L /usr/bin/git /usr/bin/git: /usr/lib/libxcselect.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)
If you really want to replace it, replace the one inside of Xcode:
$ xcrun -f git /Applications/Xcode.app/Contents/Developer/usr/bin/git
Or just wait for Apple to release an update with the fix, and go yell at the git developers for completely screwing up the disclosure of this vulnerability, thereby not giving companies time to prepare a release with the fix.
but my name isn't randalls
"Freedom in the USA is not the ability to do what you want. It is the ability to stop others from doing what THEY want"
git 2.6.4 was released about a month before Xcode 7.3 beta was first seeded to developers. How does "one month old" equate to "very old"?
Do you want Apple to update versions of key components after starting the beta process just because the version number changes? git 2.7.0 came out just days before Xcode 7.3 beta1. It makes sense that they'd stick with 2.6.4 as it was a very stable version and there was no compelling reason to update until just a couple days before Xcode 7.3 was released.
Or maybe they already jumped on it as soon as it was announced, and it'll be coming out soon in Xcode 7.3.1.
Maybe the reason it wasn't included in Xcode 7.3 was because of the horrific timing of the disclosure to the community and complete lack of disclosure of the vulnerability to companies shipping git.
$ git --version
git version 2.6.3
$ brew update
$ brew upgrade git
$ git --version
git version 2.8.1
Back to my
Sounds like this won't be resolved until Apple releases its next Xcode update (or Command Line Tools for Xcode if you aren't using the IDE). Looking at previous release dates it seems that Apple releases new versions every three months and the previous version was released 21st of March 2016.
iApologist much?
lucm, indeed.
[not the original poster, just normal reading comprehension...]
(Probably) what he means is "Apple doesn't support more than 3 buttons on mice, unless it's their own overpriced $75 "magic mouse". Button 4 and 5 could be used (for example) for back and forward in a browser"
(Didn't even know that Macs support mice with more than one button, hehe, so 3 is already a neat progress...)
this is why it won't work https://www.reddit.com/r/netse...
Go away!
Xcode isn't using it despite the path being set when launching xcode.
Change is certain; progress is not obligatory.
Umm. . . USBOverdrive? Works nicely on El Capitan. All 8 buttons on my Logitech are mapped to useful functions.
Even the stock MS & Logitech drivers let you remap the extra buttons if you don’t want to shell out the $20 for USBOverdrive. USBOverdrive lets you setup keyboard & mouse macros per-application which can come in handy.
Macs have natively supported two- and three-button mice since Mac OS 8 in 1997. Mice with additional buttons work fine provided you have an appropriate driver for them, just like on Windows. If the manufacturer doesn't supply a driver for their extra buttons, there's third-party drivers that work with any USB HID compliant mouse. Logitech gaming mice, with all their buttons, work just fine on Mac OS X. Your troll is out of date...
Drivers... But what if some "punk" feature on your Mac prevents you from installing any drivers not blessed by Apple?
What, you mean the USB HID standard that defines two axes of movement (X and Y) and three buttons? Or the Microsoft convention that certain buttons, on certain mice, should be mapped to forward and back—there being no actual standard for which USB HID button numbers should be mapped to those functions?
Apple builds themselves a walled garden, then utterly failed to prevent a fire from breaking out on the inside. This my friends is sweet poetic justice. A modern OS cannot exist in isolation like these hipster wannabes like to think it can. Apple is not omnipotent and it does not know what is best for you. Every informed Mac user I have ever met bought their system for the same reason, they don't want to take responsibility for their own security. Well guess what, that isn't possible and it never actually was.
I take it you're from planet Seinfeld, where even what you manage to learn about life (generally frowned upon) does basically nothing to change your behaviour. In your haste to hew to "simplicity", one large worm MIRVed into multiple smaller worms, and you basically went (inside your own mind) "and the rest is fine print", without a whit of that thought making it to your fingers (heaven forbid that your 5m effort turn into a 5m30s effort).
Technical debt, meet treading-lightly-upon-the-fine-print debt. Back in the seventies, never a closet door was opened on a sitcom without twenty pounds of unused sports equipment cascading down from the storage shelf. And yet, in at least 50% of the buying public, a giant "on sale" tag attached to a racket handle still succeeded in disabling the part of the brain chanting quietly to itself "and where would I put it?"
Some people by nature tend to read the fine print. I'm one of those people, so I know how it goes. It's all too easy to slide into an enabling role, where half your day is spent—for little official credit—helping extract fine-print avoiders from the sports-sock snow pack when the karma closet finally comes tumbling down.
"Gosh, I had no idea snow could be so heavy."
"Would you like some rum with that? I've got this keg thing around my neck."
"I thought those were mechanical gills."
"No, the sound effects are made by a Raspberry Pi. It's actually a keg of rum."
"Wow, you're awfully prepared. I take it you do these rescues a lot?"
"Enough to learn how the pattern goes a hundred times over."
"How does it go?"
"Here's where it starts. Someone tosses off a quick 5m answer, without even noting that fine print exists, even if it only takes an extra ten words."
"But everyone knows that fine print exists."
"To judge by the state of your closet, you're a lapsed Catholic and I'm your indulgence."
"You sound bitter."
"Just a minor side effect of my cellulose diet."
Yes, Apple does need to react to git. Apple does that by updating to newer versions of git in newer versions of Xcode.
The issue here was that this announcement was made at a time when it was too late to include in the March 21 release of Xcode 7.3.
> they don't contribute to it since I'd imagine if they did contribute to it they would have known it was coming
Care to elaborate on why you feel that way? Apple has made attempts to contribute to git only to get shot down and rejected in the past, but most of Apple's changes have since been merged into git upstream or are available for anyone that wants to see them on github.
http://marc.info/?l=git&m=126819399002363&w=4
http://marc.info/?l=git&m=129105538829766&w=4
http://marc.info/?l=git&m=137514771912513&w=4
etc...
Depending on what you mean by "clean shutdown", you should just have to do some RBAC setup:
Edit /etc/security/exec_attr and add the following profile:
exec_attr:Shutdown:suser:cmd:::/usr/sbin/shutdown:uid=0;gid=1
Add this profile to /etc/user_attr :::: profiles=Shutdown
yourusername
Then your user can shutdown with /usr/bin/pfexec /usr/sbin/shutdown
Instructions taken from here.
As to the more general topic, all major OSes operate on the "Principle of Least Privilege", which in this case means discouraging casual use of the superuser account, or disabling it entirely. With apologies to Twain, "Suppose you were logged in as root all the time, and suppose you were an idiot. But, I repeat myself."
Those who advocate genocide deserve every protection afforded by law, and none afforded by common human decency.
FWIW, the developer seed of Xcode 7.3.1 contains git 1.7.4.
Most decent programmers wil have updated their machine's git version using Homebrew. People who are not capable of doing it, probably won't even be using git in the first place. Also, it's possible to disable Apple's system protection by booting into recovery mode and running one or two commanda, thus giving root it's standard UNIX prerrogatives. Many users, myself included, choose to do this.
"I decided I could write something better than everything out there in two weeks. And I was right." - Linus Torvalds
"What, you mean the USB HID standard that defines two axes of movement (X and Y) and three buttons?"
Care to point out where it's limited to three buttons? Because my little cheap no-brand 7 button mouse from China has all buttons recognized, no drivers. Perhaps if you understood that the interface standard allows for having the report descriptor changed to show more buttons being present via the mouse firmware (and has been since.. 2001 at least) you might not have made such a crucial mistake.
Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
Since when does "very old" qualify as an accurate description of a release that occurred just over 4 months ago? While I believe Apple should fix this (and it shouldn't really be that hard), I think it's a bit disingenuous to characterize what they distributed this way. Especially when Debian is still distributing (patched) 2.1.4!
"A Mathematician is a machine for turning coffee into theorems." ~ Paul Erdos
"Mice with additional buttons work fine provided you have an appropriate driver for them, just like on Windows."
I don't even need drivers in Windows.
You probably haven't notice that Windows tends to actually installs drivers from the net every other time you plug in a more-than-three-button mouse. At least when moving between docking stations at work it does. And that's when it actually detects USB mouse and keyboard for a change.
Of course news about a fake are Fake News.
According to MacRumors (and presumably, Apple) and this image: http://cdn.macrumors.com/artic...
Mac Net Sales apparently accounts for just 9 PERCENT of Apple's revenues.
In other words, its Apple's second largest source of revenue, alone bigger than Oracle.
Of course news about a fake are Fake News.