Slashdot Mirror


Researcher Discloses Methods For Bypassing All OS X Security Protections

Trailrunner7 writes: For years, Apple has enjoyed a pretty good reputation among users for the security of its products. That halo has been enhanced by the addition of new security features such as Gatekeeper and XProtect to OS X recently, but one researcher said that all of those protections are simple to bypass and gaining persistence on a Mac as an attacker isn't much of a challenge at all. Gatekeeper is one of the key technologies that Apple uses to prevent malware from running on OS X machines. It gives users the ability to restrict which applications can run on their machines by choosing to only allow apps from the Mac App Store. With that setting in play, only signed, legitimate apps should be able to run on the machine. But Patrick Wardle, director of research at Synack, said that getting around that restriction is trivial. "Gatekeeper doesn't verify an extra content in the apps. So if I can find an Apple-approved app and get it to load external content, when the user runs it, it will bypass Gatekeeper," Wardle said in a talk at the RSA Conference here Thursday. "It only verifies the app bundle. If Macs were totally secure, I wouldn't be here talking," Wardle said. "It's trivial for any attacker to bypass the security tools on Macs."

130 comments

  1. Good enough to criticize the mechanisms by Anonymous Coward · · Score: 5, Insightful

    But can we have a demo since it is so trivial?

    1. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      See, that was my first response, "If it's so 'trivial' why hasn't it been done?" I would like to see a put-up or shut-up session done on this. Since it's "trivial" to do.

    2. Re:Good enough to criticize the mechanisms by LordLimecat · · Score: 4, Informative

      Its done every year at Pwn2Own.

    3. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 5, Informative

      Not sure how to 'demo' this to you guys - but this is exactly how to do it:
      1) Find a Apple-signed or Mac App store binary the contains an *external relative reference* to a dylib. Apple's Instruments.app works great
      2) Create a .dmg or .zip file that contains Instruments.app as well as the external folders/frameworks with the dylibs that app tries to load - these can be unsigned/malicious
      3) Hide the files/folders, and create a top-level icon/alias to Instruments.app. This icon can be anything (e.g. 'Flash Installer'). This makes the download look believable :)
      4) Get users to download this ('free photoshop!' - see OSX/iWorm for an example of Mac user's being dumb) *or* inject this into internet downloads if you have network-level presence. Tons of OS X software is distributed over HTTP :/
      5) Even if the user has Gatekeeper set to 'only allow code from the Mac App Store' when the user runs the download the unsigned dylibs will be loaded and execute. In other words, Gatekeeper fails to do what it was designed to do - prevent MiTM attacks/user's from running unsigned code.

      more technical details here [PDF]: https://www.virusbtn.com/pdf/magazine/2015/vb201503-dylib-hijacking.pdf

    4. Re:Good enough to criticize the mechanisms by MachineShedFred · · Score: 3, Interesting

      Yeah, my thoughts exactly. And, by the way, how is it a problem with the OS if a signed app has a vulnerability you are exploiting? That sounds like a problem with the app to me.

      "Oh, I can own OS X - I just need to convince Microsoft Outlook to run arbitrary code with privilege elevation!"

      *Yawn*

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    5. Re:Good enough to criticize the mechanisms by fisted · · Score: 1

      not sure why this is at -1

    6. Re:Good enough to criticize the mechanisms by Khyber · · Score: 0

      Because apple fan-mods are out in force with points.

      --
      Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
    7. Re:Good enough to criticize the mechanisms by Richard_at_work · · Score: 2

      Its a problem because the OS isn't checking the entirety of the app for correct signatures, just part of it. Which kinda removes the point of checking at all.

    8. Re:Good enough to criticize the mechanisms by tgv · · Score: 1

      I'm an Apple fan (well, 80%), and I would mod it up. It's important information. It's at +5 now, but I can't understand why anyone would want to mod it down, except for a malicious hacker.

    9. Re:Good enough to criticize the mechanisms by AmiMoJo · · Score: 2

      The OS is supposed to sandbox apps so that if they do get 0wned the damage is limited and the rest of the OS and apps are not compromised. Apple has attempted to do that on OS X, but clearly it hasn't worked as well as they were hoping. Even if an app get compromised that isn't supposed to let the code take full control of the OS.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    10. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 1

      if apple sells an app from the apple store then its freakin responsible for the app....you know why its difficult for apple?because they just pay for the brains of these app developers and then they resell it....so they are busy minting money instead of being responsible for the app store?

    11. Re:Good enough to criticize the mechanisms by Rosyna · · Score: 1

      I'm not sure how this differs from the ability to set dyld environment variables to get dyld to search other paths for loading libraries (very useful for debugging). Of course, doing that requires the ability to set environmental variables (which any user can do with the Terminal). And dyld environmental variables are cleared for apps that run as root.

      To me, this presentation looks like an overview of Mac OS X management and debugging features and an ad for "knockknock".

    12. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      Security through obscurity.

    13. Re:Good enough to criticize the mechanisms by azav · · Score: 2

      It's, son, it's.

      --
      - Zav - Imagine a Beowulf cluster of insensitive clods...
    14. Re:Good enough to criticize the mechanisms by azav · · Score: 1

      > Mac user's

      Mac user's what?

      > MiTM attacks/user's

      OMG, there you go again. It's users, not user's.

      No apostrophe on a plural, Sparky.

      --
      - Zav - Imagine a Beowulf cluster of insensitive clods...
    15. Re:Good enough to criticize the mechanisms by LordLimecat · · Score: 0

      I dont believe I ever used the word trivial in this comment thread, and your incredible hostility doesnt really make me want to respond to the question on 2012 / 2013. Congrats, you figured out how to "win" a discussion!

    16. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      because this exploit means you already have control of the target computer, as what researcher described.

      look, ldpreload works on every computer inlcuding linux, but doesn't make it easy to inject dlls left and right. you still need privileges, and to obtain those is the hard part

    17. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      http://blogs.msdn.com/b/oldnewthing/archive/2007/08/07/4268706.aspx

      It rather involved being on the other side of this airtight hatchway

      this research is bogus

    18. Re:Good enough to criticize the mechanisms by jythie · · Score: 2

      In this case not really. All he is describing is the first in a chain of requirements, the next one being finding a signed application that can be exploited. Probably doable, but a different (and somewhat duller) problem.

    19. Re:Good enough to criticize the mechanisms by jythie · · Score: 1

      I am not sure I would really call this a failure in its design, but an inherent security issue that is present on every OS ever built: any application that allows any type of data input (which a framework is) can potentially have problems with how it loads the data.

    20. Re:Good enough to criticize the mechanisms by jythie · · Score: 1

      Social engineering is usually the easy part.

    21. Re:Good enough to criticize the mechanisms by jythie · · Score: 2

      sandboxing always involves a trade off. Apps do not have full root capabilities, but a compromised app can still do damage within its range, which unfortunately is the range of what people want apps to be doing.

    22. Re:Good enough to criticize the mechanisms by AmiMoJo · · Score: 1

      Sure, but the problem here is that the exploit executes in the sandbox process which has root. A normal, non-sandboxed app would run at normal user level and, as you say, be limited in the damage it can do. The sandboxing was supposed to add an extra layer of security, but backfired and actually helped the app to trivially get root access.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    23. Re:Good enough to criticize the mechanisms by jythie · · Score: 1

      Well, it only executes in a root context if the application is given root access. There is not much you can do when you click the little 'yes I want to run this as root' confirmation. The OS can not really prevent exploits from being exploited in root level applications.

    24. Re:Good enough to criticize the mechanisms by MachineShedFred · · Score: 1

      In no way does what the guy is describing magically allow code to take control of the full OS. If an application is executing, and then executes a maliciously crafted dylib, that dylib is still running as the user who executed the parent application - a.k.a. not root unless you've bent over backwards to re-enable the root user and log in as root because you completely hate security and best practices. If it wants to do something outside the permissions envelope of that user, it will still have to ask permission just like anything else on the OS; even if you are running as admin - all that gets you is the ability to put in your password to allow it, rather than have to click cancel. The only way around that is to also combine a privilege elevation exploit - and now we're getting into the incredibly improbable that you could find a signed app that would do both without a user seeing anything odd.

      At the end of the day, GateKeeper wasn't designed to prevent that anyway, and this guy is presenting a massive straw man. GateKeeper was designed to give you a decision point between clicking on the random thing that appeared in your downloads folder, and getting owned. That's it.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    25. Re:Good enough to criticize the mechanisms by MachineShedFred · · Score: 1

      Following your "logic", Best Buy is responsible for the millions of computers that get infected with shit from running copies of Windows that were purchased at Best Buy and not patched / maintained? Because Best Buy just "pays for the brains of these app developers and then they resell it" ?

      Brilliant.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    26. Re:Good enough to criticize the mechanisms by Penguinisto · · Score: 1

      Agreed... I stopped bothering at "So if I can find an Apple-approved app and get it to load external content..."

      It's a possible corner-case privilege escalation at most, and nothing near the breathless 'OMGWTFBBQwe'reallgonnaDIE!' summary and headline. Oh, and it still requires the user to do something stupid.

      Wake me when someone finds a way to take remote control of an OSX box without first requiring a complicit keyboard actuator to help him do it.

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    27. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      Hey everyone! I found the pedantic asshole!

    28. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      still doesn't make it an exploit in osx

    29. Re:Good enough to criticize the mechanisms by jythie · · Score: 1

      Not only does it require the user to be complicit, it requires the download channel to be vulnerable to man in the middle attacks so that the content can be changed mid stream. This is of course possible, but modern browsers make it non trivial to accomplish on all but the most focused cases.

    30. Re:Good enough to criticize the mechanisms by macs4all · · Score: 3, Informative

      4) Get users to download this ('free photoshop!' - see OSX/iWorm for an example of Mac user's being dumb) *or* inject this into internet downloads if you have network-level presence. Tons of OS X software is distributed over HTTP :/

      so, again, like every other OS X exploit, this depends solely on Social Networking to propagate.

      So, IOW, after about 100 or so Macs worldwide get infected, whatever package was responsible for spreading malware via this method would be added to Apple's malware list, be pushed out automatically to all users of OS X, and, like those infrequent times before, that would be that...

      Then, Apple simply adds checking of DyLibs and other add-ons to OS X, and closes this hokey forever. Problem solved!

      So, thanks to the black hat who brought this exploit to Apple's attention; so that they can take care of it.

    31. Re:Good enough to criticize the mechanisms by macs4all · · Score: 1

      Security through obscurity.

      That was an excuse a decade ago; but have you visited an Apple Store in the past 8 years or so? They could keep them open 24/7 and they'd still be mobbed!

    32. Re:Good enough to criticize the mechanisms by macs4all · · Score: 2

      No apostrophe on a plural, Sparky.

      In fact, there is.

      In the plural form of the possessive, the apostrophe comes AFTER the pluralization; e.g., "users' ".

    33. Re:Good enough to criticize the mechanisms by macs4all · · Score: 1

      Its a problem because the OS isn't checking the entirety of the app for correct signatures, just part of it. Which kinda removes the point of checking at all.

      Apple updating Gatekeeper in 3... 2... 1...

      There! Problem all gone!

    34. Re:Good enough to criticize the mechanisms by macs4all · · Score: 1

      In no way does what the guy is describing magically allow code to take control of the full OS. If an application is executing, and then executes a maliciously crafted dylib, that dylib is still running as the user who executed the parent application - a.k.a. not root unless you've bent over backwards to re-enable the root user and log in as root because you completely hate security and best practices.

      so, IOW, about 100 Mac Users worldwide.

    35. Re:Good enough to criticize the mechanisms by doccus · · Score: 1

      Then, Apple simply adds checking of DyLibs and other add-ons to OS X, and closes this hokey forever. Problem solved!

      So, thanks to the black hat who brought this exploit to Apple's attention; so that they can take care of it.

      WEll, not quite. Apple doesn't add essential security updates to pre Lion (10.7) systems. Since the rot set in after 10.6.8, many users are still on these OS versions simply because they're more accessible.. i.e. no new "improvements", and of course, many (like me) have just THOUSANDS of $ invested in software that is entirely obsoleted by 10.7 and up systems. These are developers that have either been bankrupted , or driven out of business, by the endless "improvements" in OSX (like the highly respected "Little Wing pinball", or Unsanity, creators of "Shapeshifter"), or they no longer supply updates to their OSX software. Using Snow Leopard, which is the last version to support the last 10 years worth of OSX software, exposes you to everyt malignant code for OSX in existence. Apple believes that the risk of infecting those user's computers with worms or trojans is good for the company's bottom line, somehow.... or what they are implying is that there is NO such malware after all...

    36. Re:Good enough to criticize the mechanisms by macs4all · · Score: 1

      Then, Apple simply adds checking of DyLibs and other add-ons to OS X, and closes this hokey forever. Problem solved!

      So, thanks to the black hat who brought this exploit to Apple's attention; so that they can take care of it.

      WEll, not quite. Apple doesn't add essential security updates to pre Lion (10.7) systems. Since the rot set in after 10.6.8, many users are still on these OS versions simply because they're more accessible.. i.e. no new "improvements", and of course, many (like me) have just THOUSANDS of $ invested in software that is entirely obsoleted by 10.7 and up systems. These are developers that have either been bankrupted , or driven out of business, by the endless "improvements" in OSX (like the highly respected "Little Wing pinball", or Unsanity, creators of "Shapeshifter"), or they no longer supply updates to their OSX software. Using Snow Leopard, which is the last version to support the last 10 years worth of OSX software, exposes you to everyt malignant code for OSX in existence. Apple believes that the risk of infecting those user's computers with worms or trojans is good for the company's bottom line, somehow.... or what they are implying is that there is NO such malware after all...

      As the owner of many PPC Macs, including a G5 tower that runs 10.5, (as well as "modern" Macs that can run Yosemite), and who has Mac consulting clients that still run 10.6.8'for the same reasons you mention (familiarity and software investment), I fully understand!

      However, for at least the Intel Macs, there is a relatively inexpensive solution: Run 10.6 SEVER under virtualization.

      So, for $69, you can purchase VMWare Fusion 7 (standard edition) direct from VMWare and then by CALLING Apple, for $19.95, you can (still) purchase the only version of OS X which is authorized by Apple for virtualization: MacOS X 10.6 Server Install Retail disc, part #0Z691-6495. So, for under $100, you can keep your Snow Leopard environment for your stuff that won't run on current versions of OS X, and still have a Mac that can enjoy security updates, newer features, etc.

      Is it ideal? No. Do I wish Apple would support OS versions forever? You bet! However, it DOES provide a relatively inexpensive way to "bridge the Lion-gap", especially for those who have significant investments in pre-Lion software). Heck, you could even still run any PPC stuff under Rosetta!

      So, how does this help with vulnerabilities? Simple. Like my friends who have both OS X and Windows on their Macs, you simply don't use your "vulnerable" OS to access the Internet. However, in the case of OS X, I'm not sure whether malware targeting new versions of OS X would have much luck running under Snow Leopard, anyway.

      And as for having to use SL Server, I couldn't find a reasonable " guide" online to doing the same thing with a "client" version of 10.6.8, so I decided that using Server was a good enough solution.

      And as for OS X being "ruined" in recent versions, I think that, if you start actually using newer versions, you'll find it is actually not nearly as "iOS-ified" or "ruined" as people would have you believe, and that the new features, such as vastly improved Multi-monitor support, Convergence, being able to do calls and texts from your Mac, etc, are really pretty damned nice!

    37. Re:Good enough to criticize the mechanisms by macs4all · · Score: 1

      Sorry for replying to my own post.

      When I mentioned running PPC apps under OS X Server 10.6, an alarm went off in my head about the Server install not including Rosetta. Seems I was right. But there is an easy solution. Rosetta can be installed from the 10.6 Server DVD by executing a Command Line in Terminal.

      Also, while searching for the above, I ran into an Apple Support Forum thread that talked about installing the 10.6.8 OS X client under Parallels. However, the method for that unauthorized virtualization is left as an exercise for the reader...

    38. Re: Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      Mod parent up. This is one of the most informative things I've ever read on /. in a comment.

      It's usually people just trying to win semantic wars about stuff and trash Microsoft (or open sores or whatever).

      Nicely done. I've got a Mac and I /don't/ have any of that old-skool software you mention, but if I did this is exactly what I'd want to do (or perhaps dual-boot... not sure if OS X likes side-by-side installs).

    39. Re: Good enough to criticize the mechanisms by macs4all · · Score: 1

      Mod parent up. This is one of the most informative things I've ever read on /. in a comment.

      It's usually people just trying to win semantic wars about stuff and trash Microsoft (or open sores or whatever).

      Nicely done. I've got a Mac and I /don't/ have any of that old-skool software you mention, but if I did this is exactly what I'd want to do (or perhaps dual-boot... not sure if OS X likes side-by-side installs).

      First, thanks for the "props" (blush); but now I feel ashamed.

      Why? Because of what you mentioned about dual-booting two versions of OS X. And then it hit me: you're right! That's the ZERO-Cost (not counting download bandwidth) solution! So, here you go...

      And also, since all accessible partitions automatically mount at startup (unless you do some simple command-line witchery), you should have no problem accessing/moving any desired stuff from the "old OS" to the new one. IIRC, these Partitions appear in the Finder like any other Volume.

      Now, like any other dual-boot system, you really are only "in" ONE OS at a time. So, if you want to start migrating your "life" to the newer OS, but still seamlessly incorporate your Legacy apps into your workflow, then dual-boot is NOT for you. In that case, use the Virtualization method instead.

      But if you only occasionally need to run some apps in the "old" OS, then dual-boot might be for you!

    40. Re:Good enough to criticize the mechanisms by Anonymous Coward · · Score: 0

      I dont believe I ever used the word trivial in this comment thread, and your incredible hostility doesnt really make me want to respond to the question on 2012 / 2013. Congrats, you figured out how to "win" a discussion!

      "Trivial" was used in the two posts you answered to, so either you should fucking know what the word means, or you admit your post was fucking off-topic. And you didn't answer my question, because your claim was wrong, of course. You sure know how to lose a discussion, simply by being you.

  2. root = same process by jbolden · · Score: 5, Informative

    And using the same logic I can get root on any Unix box.
    1) Find an application that has root
    2) Get it to load external content
    3) The new content bypasses all the protections on the box.

    Gatekeeper prevents downloaded applications that are untrusted from accidentally being run. It doesn't prevent trusted applications from doing anything.

    1. Re:root = same process by SuperBanana · · Score: 4, Insightful

      Gatekeeper also isn't "all MacOS X security". There's separate malware detection, and in order to do much of anything the user has to enter their computer account password.

      It's a minor part of OS X security, mostly designed to keep casual users from installing stuff outside the apple store.

    2. Re:root = same process by bondsbw · · Score: 1

      I suppose the upshot is that the OS X app store doesn't behave like some of the other app stores.

      The iOS and Windows app stores do not allow you to publish an application that can execute external code. The APIs are restricted and their use may be discovered during the approval process.

      OS X app store submission process doesn't appear to have the same restrictions.

      --
      All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.
    3. Re:root = same process by jbolden · · Score: 1

      Well it requires special permission to get an app that can run execute internal code on the iOS store. They do exist. For example gambit scheme, and I have a calculator with a javascript interpreter... They just want reasonable protections.

      OSX app store though is mostly wide open. There are some restrictions, for example sandboxing and use of external services, but mostly the idea is that the App Store for OSX should have 95+% the diversity of OSX applications.

    4. Re:root = same process by dottrap · · Score: 4, Informative

      Gatekeeper prevents downloaded applications that are untrusted from accidentally being run. It doesn't prevent trusted applications from doing anything.

      Exactly. Mod parent up.

      And this is a *good* thing.

      Apple has a separate sandboxing and entitlements system for more security. Apple makes apps distributed on the Mac App Store enable sandboxing. But for those apps (usually tools) that can't work within the limitations of the sandbox, developers can still ship outside the Mac App Store and do whatever they want. Code signing for GateKeeper is merely a trust checkbox that it is unlikely the vendor is doing anything really malicious or Apple would revoke their certificate and possibly pursue legal/criminal action for really nefarious activities since Apple gets a paper trail to hunt you down with as part of the process of getting a key to sign with.

      If everything was locked down in the name of security, we would be denied all sorts of useful things.

    5. Re:root = same process by __aabppq7737 · · Score: 1

      Yeah, that's how to build a botnet. The problem is just finding out how to do step 1 and step 2.

    6. Re:root = same process by __aabppq7737 · · Score: 1

      My bad, page 11 of https://www.rsaconference.com/... outlines 20+ ways that "Project Zero" has identified to break into a Mac's external safety nets.

    7. Re:root = same process by tlambert · · Score: 5, Informative

      Gatekeeper also isn't "all MacOS X security". There's separate malware detection, and in order to do much of anything the user has to enter their computer account password.

      It's a minor part of OS X security, mostly designed to keep casual users from installing stuff outside the apple store.

      Yes.

      There's also Mandatory Access Controls (MAC Framework) in the kernel itself, and there's BSM secure auditing in the kernel itself, and there's discretionary access controls, such as standard UNIX permissions, and there's POSIX.1e draft (it was never ratified as a standard) ACLs, and then there's whatever malware detection or antivirus protection you've jammed into the kernel as a MAC module via a KEXT, and in the absence of any access controls whatsoever, it's default deny, and then there's code signing, and encrypted pages within executables.

      They didn't bypass any of that, and they wouldn't really be able to, even if they were root, because you can't get the Mac port for the kernel virtual address space without jumping through a massive number of hoops (which is why jailbreaking phones is non-trivial, and everyone uses script kiddy tools to do it, instead of jailbreaking from scratch).

      And yeah, it's pretty stupid that Gatekeeper or anything else would be running as root and thus be exploitable with the escalated privilege available at install time, since it'd be pretty easy to just have it run as a role-based account, and have the kernel's cooperation, after cryptographic verification of the developer keys at the kernel level. But that doesn't let you bypass "All OS X Security": getting root doesn't really get you nearly 1/10th of the security bypassed (less, if you've installed third party anti-malware KEXTs that refuse to be unloaded except in single user mode during boot as part of an uninstall script, and are therefore always active).

      They clearly do not understand the concept of "security in depth".

    8. Re: root = same process by Anonymous Coward · · Score: 0

      Wait... who is "they"?

    9. Re: root = same process by Anonymous Coward · · Score: 0

      That was a great post

    10. Re: root = same process by Anonymous Coward · · Score: 0

      This is just Apple evil scheme to get users to demand that all Mac can only run app store software. Don't get con by it. We need to be able to run other software too.

    11. Re:root = same process by tlhIngan · · Score: 1

      Gatekeeper also isn't "all MacOS X security". There's separate malware detection, and in order to do much of anything the user has to enter their computer account password.

      It's a minor part of OS X security, mostly designed to keep casual users from installing stuff outside the apple store.

      Actually, it keeps people from running stuff downloaded from untrusted sources.

      Basically, anything downloaded from the Internet is considered "bad" unless they paid Apple to either host it in the Mac App Store, or they paid Apple for a code signing certificate and signed the app.

      Gatekeeper can be worked around in two ways - install the app via a "trusted method" - which could be from a read-only media (e.g., CD or DVD), output of the OS X developer tools or other mechanism (e.g., external file server). Or you wipe out the extended attributes of a downloaded file since that's how OS X tracks trust level.

      Gatekeeper only activates on untrusted sources. Trusted sources are fine.

      This has resulted in an interesting situation since OS X inadvertently promotes open source - the output of the compiler is trusted, thus will never activate Gatekeeper. If you don't want to get a signing certificate from Apple, just distribute the source code...

    12. Re: root = same process by Anonymous Coward · · Score: 0

      The gatekeeper block can be optionally turned off in the system settings, and also per application basis.

    13. Re:root = same process by Anonymous Coward · · Score: 0

      #define DEFAULT_LECTURE "\n" \
      "We trust you have received the usual lecture from the local System\n" \
      "Administrator. It usually boils down to these three things:\n\n" \
      " #1) Respect the privacy of others.\n" \
      " #2) Think before you type.\n" \
      " #3) With great power comes great responsibility.\n\n"

    14. Re:root = same process by Goaway · · Score: 1

      Or, you know, you could just turn off Gatekeeper if you don't like it.

    15. Re: root = same process by Anonymous Coward · · Score: 0

      "they" are the secret world government Illuminati, controlling our minds via contrail chemicals and OS X Apps. It is clear that Apple is aware and complicit in this global scam to install spambots and steal your credit card info.

    16. Re:root = same process by jythie · · Score: 1

      *nod* expecting a system to do more than it is intended to do might represent a problem with user expectations, but that is a whole other domain.

    17. Re:root = same process by Anonymous Coward · · Score: 0

      Gatekeeper prevents downloaded applications that are untrusted from accidentally being run. It doesn't prevent trusted applications from doing anything.

      This vulnerability makes it possible to make an untrusted application into a trusted application. In other words, it breaks the whole definition of "trusted".

    18. Re:root = same process by Anonymous Coward · · Score: 0

      Unless it is turned off by default, the fact that you 'could turn it off' makes the big assumption that people know about it in the first place.

    19. Re:root = same process by jbolden · · Score: 1

      A trusted application is trusted to authorize applications. That's what it means to trust. If you want applications that are only semi-trusted: capability computing, sandboxing, virtual machines... permissions systems are not the way to go.

    20. Re:root = same process by Anonymous Coward · · Score: 0

      Or just right-click on the app the first time, say 'yes I understand this is unsigned and run the unsigned app. Once it's done once, it will run for you thereafter.

  3. Worse than the summary by Sowelu · · Score: 5, Insightful

    The summary made it sound like "wow, if a program runs arbitrary code, then arbitrary code might run" which is kind of...tautological. But the article has other goodies, like "the security check to keep dangerous code out of the kernel...runs with user permissions", and "code signing only rejects an app if it has an untrusted signature, but lets it through if it has no signature".

    1. Re:Worse than the summary by gwolf · · Score: 3

      Ugh, quick, messy fingers. I wanted to mod this "Insightful". Clicked on "redundant".

      So, posting to undo my bad deed. I could just comment "yeah, you're right" and be less publicly embarassed... But I deserve the shame :-P

  4. easist method by Anonymous Coward · · Score: 0

    I thought that was a national security order or warrant from the secret courts.

  5. If Macs Were Totally Secure... by Anonymous Coward · · Score: 0

    "If Macs were totally secure, I would just be here talking - instead, I'm demoing!" Wait. That's not what he said.

  6. Seems to not understand how it works by BitZtream · · Score: 1, Insightful

    This guy seems to think the fact that his computer is usable is an exploit. He doesn't mention anything that isn't just documented and known as the 'way it works'.

    Pretty much everything he talks about makes it clear he doesn't actually understand the features and how they actually work. Every comment he makes ... makes almost no practical sense. Its not technically incorrect, its just pointless and doesn't actually mean anything from a security perspective. Its like saying These makes are insecure; the sky is blue; and magically the second is supposed to backup the first.

    --
    Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    1. Re:Seems to not understand how it works by Em+Adespoton · · Score: 4, Informative

      The clueless meter went off the charts for me at "by the addition of new security features such as Gatekeeper and XProtect to OS X recently" -- XProtect has been around since mid-10.6, and Gatekeeper is just a wrapper around XProtect.

      The actual Synack presentation is better (I saw the precursor at CSW): "Gatekeeper doesn't verify an extra content in the apps. So if I can find an Apple-approved app and get it to load external content, when the user runs it, it will bypass Gatekeeper," is the real security flaw here. CSW had a good presentation on how to do this leveraging dylibs. With a simple exploit dropping a crafted dylib, you can run any code you can force the user to download via drive-by as root. And it's persistent, without adding a bunch of extra junk to the target system.

      That said, this method still relies on working exploits (or more often, patched torrents of popular software). The skill level to pull off the entire attack chain is fairly high too -- you're going to see governments and organized crime using these techniques, not your average bot herder.

    2. Re:Seems to not understand how it works by Anonymous Coward · · Score: 0

      Yea, Gatekeeper many times is defeated because users turn it off in order to run some third party software. But its like Windows User Account Control in that if the user does something stupid their is not much you can do to stop it. Baring preventing them from installing anything but approved apps. I also believe just because you can legitimately prove a exploit does not mean it is easily exploitable in the wild. I like OS X because its better then Windows in some ways for security and yet don't assume anything. I would say a Chrome OS system would also be considered a well protected OS given its walled garden of what can run on it.

    3. Re:Seems to not understand how it works by Em+Adespoton · · Score: 1

      The entire point behind gatekeeper is that it prevents (most) of the most common attack vectors: web downloads and email-borne malware. Using the XProtect engine, it does a really good job of this. So much so that most of the malware authors that were targeting these attack vectors have since moved on to the greener pasture that is Android. However, until the common torrent clients start setting the download flag on files, cracked commercial software and "videos" downloaded via torrents will still be a really easy way to take over a victim's Mac.

      Of course, if someone's downloading cracked software, they're going to expect the checksum to fail anyway, and use the right-click-"open" method to evade GateKeeper even if the torrent clients start setting the metadata appropriately.

    4. Re:Seems to not understand how it works by Anonymous Coward · · Score: 0

      Ok, so what you're saying is that if a user breaks the law and runs pirated software on their machine they may get exploited by malware? That's about as obvious a "Duh" as the presenter's idiotic claims. Of course, if you pirate software there is a very high probability that software will contain malware, DUH!

    5. Re:Seems to not understand how it works by Anonymous Coward · · Score: 0

      Most OS X software is still distributed over internet, since the Mac App Store is so restrictive. A lot of this is distributed over HTTP :/ In the past, if an network-level remote attacker injected code into this download (MiTM) - Gatekeeper would detect this and block the software from running (i.e. it verified the digital signature of the download). Using this bypass, the attacker's malicious injections will not be detected and when the user runs their download - the attacker's malicious code will also be executed :(

    6. Re:Seems to not understand how it works by Anonymous Coward · · Score: 0

      however, no exploit there to be seen in the article, just some self entitled security expert discovering dll load order as implemented on every single os out there today

      here's the catch:
      > With a simple exploit dropping a crafted dylib

      if I already own the machine, I own the machine. and if I have the privilege of placing a lib in any highly linked position, I am already to the point I can just fetch the information I need or do the things I need to do.

      heck, at that level of privilege I could just patch gatekeeper out of the system altogether

  7. Did you hear that? by Anonymous Coward · · Score: 0, Troll

    It'as if millions of hipsters suddenly cried out in terror and were suddenly silenced.

  8. link to slides by Anonymous Coward · · Score: 0

    https://www.rsaconference.com/writable/presentations/file_upload/ht-r03-malware-persistence-on-os-x-yosemite_final.pdf

  9. We're doomed ! by alexhs · · Score: 1

    Oh no !
    Web browsers allow for remote code execution through Javascript ! (and Flash and Java applets, if you feel adventurous)
    We're all doomed !

    --
    I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
  10. Re:Clickbait by CauseBy · · Score: 3, Insightful

    Yeah it really is stupid. Is he saying "If you let me run malicious code on your computer, then I can run malicious code on your computer"? That's what it sounds like to me.

    As far as I've ever heard, it is theoretically impossible to stop that kind of attack. If a user runs your code, then yeah, duh, your code can do whatever. I don't think that counts as a security vulterability.

  11. Re:Clickbait by peragrin · · Score: 3, Insightful

    Not quite it is more if you have a good approved app and If that app has a security flaw, you can use that flaw to hijack the OS.

    Still it seems stupid. It is like saying you have permission to run scripts you can run a malicious script.

    --
    i thought once I was found, but it was only a dream.
  12. Re:Clickbait by arglebargle_xiv · · Score: 4, Funny

    It does sound and awful lot like the notorious MS07-052: Code execution results in code execution

    .

  13. Another "claim" by bitwise+counselor · · Score: 1

    Here's another article about one of his claims posted here http://apple.slashdot.org/stor...

  14. In other words... by EmeraldBot · · Score: 1

    If they run an app, they can... run an app? The only way to stop something like this would be to prevent any programs from running. Security would be limiting what that malicious code can do - to prevent it from running at all, you'd also have to prevent the machine from running ANY code, at all. And wouldn't that code execute inside OS X's sandbox? I'm not to update on Apple security, so I apologize, but doesn't it sandbox applications?

    Personally, I'm wondering something. I know that files are locked off through permissions by default, but is the actual hard drive space itself (the physical blocks) as well? If not, couldn't you physically overwrite parts of it, and so add on your own code to be executed at boot time? If that's not possible, I apologize for the stupid suggestion. Just wondering...

    --
    "Set a man a fire, he'll be warm for the rest of the night. Set a man afire, he'll be warm for the rest of his life."
    1. Re:In other words... by MachineShedFred · · Score: 1

      In order to have raw access to the disk, you need to elevate permissions to root. If you can do that, there's no reason to go after the block storage - you already own the whole thing.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
  15. Researcher rediscovers dll hijacking by Anonymous Coward · · Score: 0

    These sorts of vulnerabilities exist in any OS with externalized code unless that is signed and verified before execution as well.

  16. Therefore... by Anonymous Coward · · Score: 1

    do not install Flash.

  17. Re:Clickbait by Eythian · · Score: 1

    I think it's more saying "we have a security gizmo so that if you manage to run code here, it can't get out", and using a flaw to get out.

  18. Is it trivial to have an app with extra baggage? by Wild_dog! · · Score: 2

    Seems like placing an application in the app store that has this "Extra Content" might be a bit problematic.
    Perhaps not, but has there been any apps from the Mac App store with extra code to side load a program onto a Mac?

  19. Easy Fix by Greyfox · · Score: 1

    If I read this right, wouldn't "sudo find / -type f | sudo xargs chmod 440" at a command line render the system completely immune to any further tampering?

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    1. Re:Easy Fix by Anonymous Coward · · Score: 0

      Yes, just like rm -rf / would.

  20. Bah by Greyfox · · Score: 1

    I mean, of course, 660. Getting over a bout of food poisoning that seems to be affecting my focus more than I thought it was.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  21. Hi I'm Patrick by Anonymous Coward · · Score: 5, Informative

    Aloha - hopefully this provides some more context and technical insight into my 'claims.' I'm honestly not trying to overhype everything and feel I have a decent understanding how computers/malware/exploits work -thanks to my time at the NSA ;). My goal is simply to show that Apple's built-in security mechanisms are trivial to bypass by malware/local attackers.

    1) So yes, Gatekeeper is designed to only allow downloaded code to execute if its signed, or from the Mac App Store. This prevents a lot of attacks, such as user's infecting themselves with trojans, or downloads that have been modified in transit (e.g. by a remote attacker w/ some network level access). The technique I described (full technical details here: https://www.virusbtn.com/pdf/magazine/2015/vb201503-dylib-hijacking.pdf), allows anybody to inject unsigned code into internet downloads. Then, even if the user has set Gatekeeper to only allow code from the Mac App Store, the unsigned code is allowed to run. Since most (e.g. all OS X AV security products and about 2/3 of the apps in my dock) OS X software is distributed via HTTP and/or user's are dumb and download all sorts of shady code - IMHO, this bypass is a problem. Yes, I understand the user still has to run the code - my point is that we can completely bypass Gatekeeper.

    2) In OS X, kernel extensions must be signed. The techniques I described are known (see: https://reverse.put.as/2013/11/23/breaking-os-x-signed-kernel-extensions-with-a-nop/), but allow any unsigned kernel extension to be loaded, even on Yosemite.

    3) I also showed the Apple blotched the rootpipe patch, meaning any local user can priv-esc to get r00t, even on fully patched OS X 10.10.3 or 10.10.4 beta (video of poc: https://vimeo.com/125345793).

    4) XProtect (Apple's built in AV product) is signature-based, thus can be trivial bypassed. Yes this is obvious.

    1. Re:Hi I'm Patrick by GrahamCox · · Score: 2

      allows anybody to inject unsigned code into internet downloads. Then, even if the user has set Gatekeeper to only allow code from the Mac App Store, the unsigned code is allowed to run

      Wrong. Anyone can inject code into any data stream trivially. It's getting it to run that's the tricky part. How exactly are you going to do that? If the code that's performing the download is in on the plot, then fine, but a) you would have to get that code past the App Store review, and b) you would have to expect Apple to revoke your signature with maximum prejudice the moment you were caught, and c) you would still have to work around the sandboxing all App Store apps require to do anything truly nasty. Getting an innocent app to run the injected code is another option, but that's back to requiring some other known exploit, such as a buffer overrun.

      The short answer is: injecting the code isn't the problem, getting it to run undetected is.

    2. Re:Hi I'm Patrick by MachineShedFred · · Score: 1

      I still don't see how this is any different from just exploiting an app vulnerability, regardless of the presence of GateKeeper. What you describe is no different than the hundreds of arbitrary code execution vulnerabilities found in Flash, Java, etc. since the dawn of these frameworks.

      GateKeeper was never meant to keep all malicious code from executing, ever. It was meant to give you an "are you really sure you want to run this thing that appeared in your downloads folder" chance to not screw yourself over because some git with a website thought it would be cool to force-download some garbage to your computer.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    3. Re:Hi I'm Patrick by Anonymous Coward · · Score: 4, Informative

      The injection attack scenario I envision is where an remote attacker (with network level presence) can inject code into user's legitimate downloads. Like when I go download Wireshark, MS Word, Adium, or most OS X security product (all over HTTP) - attacker MiTM's this. The key point here is that the user is going to run what they download (which is now infected). The main point is, Gatekeeper is designed to and should block such modifications/injections - that is to say (Gatekeeper) shouldn't allow infected downloads w/ unsigned code to run. That's all i'm claiming - Gatekeeper's checks can be bypassed. Also i specified 'internet downloads' since this doesn't impact content downloaded directly from the Mac App Store (this is separately verified).

    4. Re:Hi I'm Patrick by Anonymous Coward · · Score: 1

      Fair point - I don't disagree. But Apple touts Gatekeeper a cornerstone component of their security posture - and we can bypass it. Gatekeeper has one job - but fails at that. IMHO this is a problem (if a user says 'only allow code from the Mac App Store', Gatekeeper should enforce that). Also, Gatekeeper did a decent job protecting 'dumb' OS X users from downloading unsigned/malicious trojans (which yes, allowed attackers to build various OS X botnets in the past). Now hackers can return to their old methods of infection - which was previously blocked by Gatekeeper. Finally, before, I had a warm-fuzzy feeling that if I downloaded legitimate content over the internet, even if it was downloaded over HTTP, Gatekeeper would verify the digital signature automatically and thus prevent MitM attacks...now, I can't be sure of that :/

    5. Re:Hi I'm Patrick by benjymouse · · Score: 2

      1) Are you saying that the signature does not cover the entire download, and that an attacker could supplement or exchange content of the download without invalidating the signature, and have the injected code execute when the user starts the app?

      2) Sounds bad.

      3) Sounds bad

      4) That a signature-based AV engine is only effective when attacks have been reported, analysed and a has been signature developed is bloody obvious. All an AV engines is good for is herd immunity. Which is sorta ok, except that they are peddled as the most important security product *you* can use. Some AV engines more advanced than XProtect use heuristics (or se they claim) but I have to admit that I am *really* sceptical about the claims of the effectiveness.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    6. Re:Hi I'm Patrick by Anonymous Coward · · Score: 5, Informative

      1) Yes - exactly :) The .dmg or .zip isn't wholly signed. When the user clicks the application, only it's signature is verified (so we can't modify it/it's bundle in anyway). However, if the application attempts to load external relative content, such as dylibs (outside it's bundle, but still on the .dmg), *that* content is not verified. So an attacker can inject a legit/vulnerable app + external .dylibs into any insecure (HTTP) internet download - or host such a malicious .dmg/.zip. Of course, we'll make the .dmg/.zip look totally legit, since we can hide files/folders, set a top-level alias/icon/background etc.

      2) Agreed

      3) Agreed

      4) Agreed - I wrote a simple p.o.c. malware that generically bypassed all (popular) 3rd-party OS X security tools (AV, Firewall tools, etc) - even though it did common malware 'things' like persist, exfil data, download/execute commands. Your skepticism of their claims/effectiveness seem right on :/

    7. Re:Hi I'm Patrick by Anonymous Coward · · Score: 0

      So ##someone with access to the Internet## the NSA can potentially infest downloads in transit with malware.
      And it is ##humanly possible## a hobby of the NSA to create a fake library that includes malware.
      And ##malfeasants## the NSA can potentially rebundle an application without affecting the code signature (which was only put there for verification anyway).
      And users (no apostrophe for the plural btw.) can potentially end up with a compromised downloaded application which they then, unsuspectingly, run, and face unforeseen consequences.

      It's a great attack vector, and it would certainly fool me - I have no idea what goes on inside an application just by looking at its icon, but none of this seems to be anything new.

  22. I keep telling you... by koan · · Score: 1

    One of these days....

    OSX is insecure, Apple is either incompetent and/or complicit with the FBI/NSA.

    --
    "If any question why we died, Tell them because our fathers lied."
  23. Re:Clickbait by Anonymous Coward · · Score: 1

    Gatekeeper is supposed to prevent unsigned/non-Mac App Store code from running... so either if a download has been MitM'd or if the user was coerced into downloading something shady (e.g. trojan). The bypass I described bypasses this requirement - allowing unsigned code to be injected into existing downloads or hackers to now re-distribute unsigned/malicious trojans. So yah, it's about allowing unsigned code to execute - when Gatekeeper should block that.

  24. Re: Clickbait by Anonymous Coward · · Score: 0

    Allowing unsigned code into the app bundle changes the app bundle and makes the signature invalid. That's how signatures work. The idea here is that a legitimately signed and installed app can then execute code outside the app bundle which will run without additional controls in place.

    For example, if there's a text field in the app where you can enter a command and hit "run", then you can run whatever the hell you want.

    That's not exactly a flaw in the Gatekeeper model, but one could argue that Gatekept(?) apps might want to refuse to execute certain dangerous system calls (e.g. exec, system, etc.).

  25. Re: Clickbait by arglebargle_xiv · · Score: 3, Interesting

    Allowing unsigned code into the app bundle changes the app bundle and makes the signature invalid. That's how signatures work. The idea here is that a legitimately signed and installed app can then execute code outside the app bundle which will run without additional controls in place.

    It depends. If you can add metadata to the bundle without it being detected (a problem that has cropped up with Linux repositories several times) then this is a genuine vuln. If OTOH it's something like "If you install a Python interpreter then you can use that to run arbitrary code that isn't validated by Gatekeeper" then it's a "Code execution results in code execution" issue. In the great tradition of journalists everywhere, the ThreatPost article never provided any links to any original material, so all we have is the writer's interpretation of what's actually going on,

    Assuming the previous reply was by the guy who gave the talk, is it online anywhere?

  26. Re: Clickbait by Anonymous Coward · · Score: 0

    The bypass allows at network-level remote attacker to inject executable code (a dylib) into a legitimate download (.dmg/.zip) without it being detected. When the user goes to run their download - the injected unsigned code is then also executed. IMHO Gatekeeper should block that -so yah its a Gatekeeper bypass not a remote code execution vulnerability. The RSA slides are somewhat short on details ([PDF] https://s3.amazonaws.com/s3.sy...) - for full technical details see: [PDF] https://www.virusbtn.com/pdf/m... (page 15+ describes the Gatekeeper bypass).

  27. Re:Clickbait by z3alot · · Score: 0

    Hmm, theoretically impossible? I guess, *in principle*, any user could always just reformat and install Windows XP, but granting that at least *some* system components can be trusted, there is the notion of http://en.wikipedia.org/wiki/Proof-carrying_code/ which, although not commonly implemented due to the technology not being there yet for widespread adoption, could conceivably be implemented as a system wide policy.

    The idea is that each piece of code contains within it a proof of its compliance with some formally specified security policy defined by the system, which the system verifies before the code is allowed to execute. The result is, as long as you can trust the security policy and things like the program loader, you can trust everything that executes, regardless of origin.

    While writing this, it occurs to me that maybe the issue with even this system is no security policy could simultaneously allow all nonmalicious software features while excluding all malicious features, even in principle. A proof of this isnt so obvious to me though

  28. Re:Clickbait by Anonymous Coward · · Score: 0

    A security vulture-ability?

  29. SANDBOXING?! Not apple! by Anonymous Coward · · Score: 0

    One of the main problems here is that Apple themselves do not adhere to their own sandboxing.

    So you can get something distributable from the App Store that actually isn't sandboxed.

    That's Apple's own apps, and ONLY APPLES OWN APPS.

    If Apple actually had to sandbox their own applications, they would implement reasonable security ways for their apps to do what they want.

    Instead, they give their own apps carte-blanche and other developers have to deal with the sandboxing. This is why Coda from Panic left the App Store, for example.

    Sandboxing is a freaking mess for applications that actually want to *do something*.

    -- Frustrated, Anonymous Developer...

    (FAD, not FAN).

  30. Re:I'm a Mac. I'm a PC. by Goaway · · Score: 1

    No. Coming up on ten years ago, dude. Time to move on.

  31. Re:Clickbait by stealth_finger · · Score: 1

    As far as I've ever heard, it is theoretically impossible to stop that kind of attack. If a user runs your code, then yeah, duh, your code can do whatever. I don't think that counts as a security vulterability.

    No, definitely not a security issue when you have a piece of software that is only supposed to let the app store signed code run and then as long as there's a signature somewhere near it will run whatever the fuck you've put in this app that macuser101 has no suspicion of because 'macs are virus proof'. It will be a funny day when the first big mac virus sweeps through now that macs are numerous enough to present a valid target and casually brushes aside any token security measures.

    --
    Wanna buy a shirt?
    https://www.redbubble.com/people/stealthfinger/shop?asc=u
  32. You still use OS X though, I bet. by Anonymous Coward · · Score: 0

    Linux, BSD and Windows just suuuuuuck so much compared to OS X that even if it were the least secure OS, most security researchers would still run it exclusively. Source: I am a security researcher.

    1. Re:You still use OS X though, I bet. by macs4all · · Score: 1

      Linux, BSD and Windows just suuuuuuck so much compared to OS X that even if it were the least secure OS, most security researchers would still run it exclusively. Source: I am a security researcher.

      Wish I had mid points! Mods: Mod the Parent "Insightful".

  33. Re:Clickbait by jythie · · Score: 2

    Yeah, it is only a little better then 'if I have physical access I can change things, so the machine is insecure!'

  34. Re: Clickbait by jythie · · Score: 1

    Every once in a while some security tries restricting more system calls, but the functionality it strips breaks so many applications and annoys so many developers (and thus users who are no longer able to run things that used to work) that the attempt is backed off from.

  35. Kaspersky by jeremyp · · Score: 1

    My browser tells me that the SSL certificate for the site hosting TFA is owned by Kaspersky Labs. Now, whilst that doesn't necessarily mean that what the author says is wrong, I do get suspicious when anti-virus software vendors publish articles about new ways in which my computer is not secure.

    --
    All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
  36. Re: Clickbait by jythie · · Score: 1

    That is the job of the browser/downloader to detect, not Gatekeeper. Gatekeeper validates the App, not various data files it comes with.

  37. Re:Clickbait by Anonymous Coward · · Score: 0

    It will be a funny day when the first big mac virus sweeps through now

    I'm really anti-Apple, but people have been saying this for a long time, and it's still not true.

  38. 10+ years of OSX and still no virus outbreaks by jsepeta · · Score: 1

    this guy's theoretical hack is still not practical, probable, or verified in meatspace. It's vaporware.

    --
    Remember kids, if you're not paying for the service, YOU ARE THE PRODUCT THAT IS BEING SOLD.
  39. Re:Is it trivial to have an app with extra baggage by edtice1559 · · Score: 1

    If I understand the exploit, what you do is take an app from the app store, modify it, and for some reason, the signature is still valid! The user gets a prompt if they want to install this app from a trusted source with a valid signature. And they say yes. Now you've gotten your payload onto the machine.

  40. Re:Is it trivial to have an app with extra baggage by edtice1559 · · Score: 1

    Sorry to reply to myself but I realized I missed an important part. There is still social engineering to get the user to run your app since you have to get it to them some other way.

  41. Re:Is it trivial to have an app with extra baggage by Wild_dog! · · Score: 1

    Plus if you have your machine set to only install from the app store, doesn't it have some sort of handshake problem? I don't know how it all works, but I know when I install a new version of the OS on a Mac it only lets installs through the app store work by default. You have to disable that feature to install "Trusted" apps from outside of the App Store environment. You can also choose to wing it and allow all apps you find to install if you click the right check box.

  42. Re:Is it trivial to have an app with extra baggage by Wild_dog! · · Score: 1

    In security it says:

    Allow Apps downloaded from:
    (3 check boxes)

    1. Mac App Store
    2. Mac App Store and identified developers
    3. Anywhere

    Seems like if you only had the Mac App Store checked then there would be no threat.
    Even if option 2 was selected, it seems like it might be fairly safe if the developer's are not trying to infest a computer.
    Obviously, option 3 would allow for all kinds of mayhem.

  43. news at 11 by Anonymous Coward · · Score: 0

    OSX, like all software, has bugs, some of those bugs are security flaws, and some of those flaws are serious. Third party software run on OSX has bugs, some of those bugs are security flaws, and some of those flaws are serious. Malware protection is imperfect.

    Is anyone actually surprised by this? The real measures of security are:
    - did you make a real effort to get it right the first time?
    - how professionally do you respond to security flaws, and how well do you enable customers to be protected from those flaws?
    - how well do you prevent those flaws from reappearing in the future?

    Simply having flaws isn't much of a measurement, as this article tries to imply. Having flaws just means that you are developing real software, not vaporware . It's what you do about them that matters.

  44. Re:Clickbait by macs4all · · Score: 1

    Gatekeeper is supposed to prevent unsigned/non-Mac App Store code from running... so either if a download has been MitM'd or if the user was coerced into downloading something shady (e.g. trojan). The bypass I described bypasses this requirement - allowing unsigned code to be injected into existing downloads or hackers to now re-distribute unsigned/malicious trojans. So yah, it's about allowing unsigned code to execute - when Gatekeeper should block that.

    Wrong.

    Gatekeeper's default setting allows only signed apps; but the user can opt for lesser security. But that's on the user, not Apple.

  45. Gatekeeper by Anonymous Coward · · Score: 0

    That sounds like Gatekeeper is more about protecting the Apple Store revenue stream than about the user's security.

  46. Even better security hack by Anonymous Coward · · Score: 0

    It's really easy to disable GK. People on all other platforms have been ignoring prompts for years or blindly following instructions and ignoring the "OMG YOUR SECURITIES!!!1111"

    Step 1: Make a fake 2 hour long video (padded with blank or corrupted video) with the first 5 minutes explaining how to turn off GK.
    Step 2: Tell the user to properly play the video, you need to install this app or codec on this website somewhere.
    Step 3: Rename the video file to some upcoming hot blockbuster movie, say "Avengers Ultron.mp4"
    Step 4: Release on torrent / streaming / etc. sites

    You know, what people have been doing for years everywhere else.

    It's also pretty simple with i devices too. Just replace Step 2 with "In a roundabout way, tell them how to root their phone and install this app.

    People who don't read prompts or have a hard-on for free stuff will always be stupid.

    1. Re:Even better security hack by ebvwfbw · · Score: 1

      Easier than that. Just say it's a video of Job's next blockbuster project that nobody knows about. He didn't complete it before he died. All you have to do is download this codec to see it...

      I bet you'd get 90% of the apple Fanbois. That's because they'd all download it in the 1st 10 minutes it would be out there.

  47. Re: Clickbait by Anonymous Coward · · Score: 0

    GPP here. If the app bundle is modified in transit - such as adding metadata, doesn't that change its signature and therefore Gatekeeper barfs? Or is the vulerability really that Gatekeeper sucks at checking sigs?

    My understanding is that the app bundle is what you download. You don't download the app bundle plus some other junk that can be totally fishy, and Gatekeeper only checks the non-fishy part.

    I don't have a huge amount of experience installing tons of Mac software, but generally speaking I've seen two kinds: .dmg files that contain a .app bundle you drop in /Applications to install and .dmg files (or .zip I suppose) that just have raw binaries in there (e.g. Eclipse). The former are signed and checked by Gatekeeper. The latter are neither signed nor checked by Gatekeeper.

    Now back to the App Store. The App Store will never allow you to install the latter type of application. 100% of the stuff Apple slings through the App Store is signed app bundles. None of those things have dark corners that can be subverted by MitM attacks, do they? (I don't know, I've never downloaded a single thing through the App Store due to my knowingly-ironic preference for OSS stuff and dislike for the Apple walled garden).

    This really sounds to me like "code execution leads to code execution" "vulnerability". But there has to be something here... I just don't understand it yet. Nobody would embarrass themselves at RSA with a big pile of nothin'.

  48. Re: Clickbait by arglebargle_xiv · · Score: 1

    Thanks for the link, the VB one contained the info I was after. Looks like a nice piece of work, and definitely a Gatekeeper bypass, just like the Linux repository signing bypasses where they didn't verify metadata.