Slashdot Mirror


Apple Data Security Framework

rschroeder writes: "Apple has opened their Common Data Security Architecture framework, which "contains an expandable set of cryptographic algorithms to perform code signing and encryption operations while maintaining the security of the cryptographic keys." Lots of good info in addition to the code."

37 of 77 comments (clear)

  1. Apple and CDSA by Anonymous Coward · · Score: 2

    CDSA is more than just an equivalent of openSSL...
    CDSA is a standard that was established by the open groups, a number of corporations are working on CDSA products, it does provide a large range of services other than providing a common API for cryptographic services, trust policy, certificate library and so on.
    While it offers a standard way of securely communicating data, it also offers a common way to establish policies and the many things. it was meant to be a complete solution for security, especially for e-commerce.

    It's nice to see an implementation openly available, if no one uses it it will still be easier to ensure interoperability with MacOS X...
    Also it brings some publicity to CDSA, which is not bad.

    In my opinion, it's a good thing.

  2. Re:Good first step by Anonymous Coward · · Score: 2
    Unfortunately, the attacks on apple not being security conscious, much like them not contributing back to the community, are totally unfounded by people who have watched what the company has been doing for the past year.

    The reality is, the Apple is not secure concerns are media spins by folks who are looking for a problem to write about. Not finding it, they write about "concerns" and play on the ignorant OS advocates and trollers, who respond and draw everyone else into the mix.

    It's been like this for ages. Look at the /. articles. There's one that Apple is not being security conscious. Then there's an Ask Slashdot which accuses Apple of too many upgrades. Now this, where Apple has simply adapted technology to fit their machines--it's doubly played as if Apple invented it (they make no such claim) and is trying to take credit for it, and that Apple is upping security, as if Apple wasn't secure in the first place.

    Sorry, but there have been MORE exploits for Linux than MacOS X from the time MacOS X has been released. Worse, Linux has been around awhile, while MacOS X, being the new, unproven OS, should have been littered with holes. The opposite proves true, but you won't have people in the media or other OS advocates pointing that out.

  3. Intel CDSA by Anonymous Coward · · Score: 3

    Ummm... who cares about Apple? CDSA was developed by Intel. Intel is responsible for the bulk of CDSA. Intel built the code with portability in mind. That's why Apple was able to port it. http://developer.intel.com/ial/security/ http://developer.intel.com/ial/security/press.htm Intel released the source code in 2000: http://developer.intel.com/pressroom/archive/relea ses/in092500.htm

  4. Re:Wow... more more more... by Have+Blue · · Score: 2

    For the last few versions, the Mac OS has been loading it's "ROMs" off disk early in the boot process. Look in the system folder for a file named Mac OS ROM.

    Of course, you're probably still right but about some other bit of hardware. Macs still have NVRAM, after all.

  5. Re:OpenSSL? by awa · · Score: 3

    Short answer: No.

    Longer answer: It's a security framework with hooks to a lot of things. If you'd read at least the introduction you'd have seen that it does, indeed, contain support for SSL, PGP and many other standard security/encryption/ham-and-cheese-sandwich technologies. Actually it's the MacOS X implementation of the OpenGroup standard. I do not know (did not find information more like it), however, if they _did_ implement the whole schmiel.

    Longer longer answer: read the OpenGroup documentation. Download the code. Read the code. Come back and tell us about it.

    --
    --Moo
  6. Re:Secure except for... by drig · · Score: 2

    A cool thing about the CDSA is that you can replace any part you don't like. So, if you feel the NSA has compromised it, you can replace the crypto portions with your own provider based on OpenSSL.

    -Dave

    --
    Citizens Against Plate Tectonics
  7. Re:Some Background by maggard · · Score: 2
    First off the URL is http://msdn.microsoft.com/library/psdk/crypto/cryp toref1_0lwh.htm, yours was mangled.

    Secondly I don't see any references as to the encryption used - it's a MS-specific blackbox as far as I can tell. Considering MS's shaky history of security implementations & the general problem of closed-source encryption this isn't particularly comperable to Apple's Open Source implementation of an outside published standard written by broad coalition of interested users.

    Finally what uses this? Win2k has literally thousands of API's, some excellent, some half-baked, some simply broken or braindead, many overlapping or redundant. Having an API is one thing, using it or getting it used is another, particularly in the archeology that is Win2k.

    Under MacOS 9 & 10 the Keychain is availiable from within the Finder, the Chooser, it's more modern implementation the Network Browser, the en/de-cryption applets, MS's Internet Explorer, most FTP clients including Interarchie & Fetch plus numerous other applications.

    --
    I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
  8. Some Background by maggard · · Score: 5
    First of all it needs to be pointed out Apple has been supporting encryption in their products for several years now.

    One of the features of MacOS 9 has been the ability to encrypt any file via a set of system-level services. A second feature has been the ability to use a "Keychain" service where passwords & other information can be securely stored & automatically retrieved by authorized applications. A third feature has been the ability to use a Voiceprint as a password.

    Here are a number of examples of how these features can be used:

    1. Macs running MacOS 9 and greater support Multiple Users. Thus folks can (or must) log in in order to access their materials. This login can be accomplished via typed password or Voiceprint. Macs with access to an appropriate server can store individual preferences on the server and these can used applied from client Macs as the user logs in.

    2. In order to encrypt or decrypt a file under MacOS 9 and greater on need simply drag-and-drop the file/folder/drive to the encryption application. This service can also be called from within any application utilizing the cryptographic API's.

    3. Utilizing the "Keychain" any program can store or retrieve settings, passwords and other secured bits of information. Thus instead of saving one's web-account passwords in an easily read text file they're stored encrypted in a file where explicit authorization must be given for access. The same for the other various servers one might utilize regularly or occasionally - their login information and passwords can be stored under a single master-password and applied at need.
    Now, lots of folks are going to start reading this and trying to imagine lots of ways they could break this, the possible downsides, etc. Yes, it's not completely foolproof. On the other hand it's a lot better then many other OS's offer, particularly when you realize it's widely supported throughout the OS and by many (most?) applications. Furthermore it seems fairly well thought out and after being out in the field a bit it seems to be working well.

    It's good to see Apple is finally documenting the same hooks in MacOS X. Presumably by completely opening the material a better evaluation of the processes can be made and improvements implemented by third parties. Furthermore since it's a standard promulgated by a number of companies all in the security field this has a good chance of being implemented in a wide range of products.

    It would also be great if other OS development folks could take this code and use it to compare/contrast their own efforts in this direction and use them to improve themselves, possibly even work towards adopting some common material where the specs are vague.

    Finally, before going and making wild-assed assumptions based on how you assume this stuff is implemented or blue-skying on it's possible flaws howzabout investing the 10 minutes and actually getting the facts first, not wasting all of the rest of ours time? This is all Open Source and it's well documented so it's not up to everyone else to teach you: Go read it for yourself.

    --
    I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
    1. Re:Some Background by 3G · · Score: 2
      Now, lots of folks are going to start reading this and trying to imagine lots of ways they could break this, the possible downsides, etc. Yes, it's not completely foolproof...

      No, but it's a good start. Unfortunately, any Mac can be accessed by anyone with a copy of the Mac OS 9 cd. All they need to do is put the cd into the tray and hold down the "c" key after hitting the reset switch. The machine will boot off the cd, and allow access to any file on any of the drives attached. Copy, delete, do what you like.

      Granted, you can't open specific files that have been encrypted by the system. But like I said, it's a start.

      What's even more interesting in my opinion is that Apple has recognized this vulnerability and finally released an Open Firmware update that password-protects the machine before the OS is loaded - either from the cd or internal hard drive.But they don't recommend using it.

      OS 9 will never have security that's on par with any *NIX OS (it's just not multi-user at its heart), but it is better than nothing.

      --
      Blue skies... Barthie burgers... girls.
    2. Re:Some Background by richardbondi · · Score: 2

      Windows 2000 has an equivalent of the keychain, the DPAPI, documented at http://msdn.microsoft.com/library/psdk/crypto/cryp toref1_0lwh.htm.

      Windows NT utilized a third party package to provide similar capabilities, the PStoreAPI.

      Richard Bondi

  9. No, Darwin isn't MacOS X lite by maggard · · Score: 5
    Darwn is the base of MacOS X. Yes it's OpenSource. Yes it's freely avialable, Apple even hosts the servers & has engineers assigned to porting it to non-Apple platforms (to wit the x86.)

    That said there's a long distance between Darwin & MacOS X. Carbon, Quartz, Aqua, QuickTime, Classic - all are critical parts of MacOS X that aren't in Darwin. Without them Darwin is an interesting BSD variant with a Mach-based kernel, reworked IO & some nifty OO & "Frameworks" support and innovative configuration-files-settable-via-XML technology.

    That doesn't a clone make. Indeed it's debatable if Apple could themselves easily make a clone-able Mac at this point. So much of MacOS X (not Darwin) is PPC-specific and relies so heavily on Apple hardware implementations it might not be easily possible.

    Sure Next was ported many times & MacOS X has inherited much of that flexibility but since then there's been massive rewrites. It's likely that most of everything above Darwin might require a lot of work now move to another architecture or even motherboard design, there appear to be lots of assumptions made in the design.

    Sure there are always rumors of MacOS X running on x86/Alpha/etc. chips and there was a Rhapsody release that was cross-platform as well as stories of a beta MacOS 8 runnable on an IBM RS6000 but at this point it seems unlikely that the MacOS X now out there could be easily moved to either an Intel-standard motherboard architecture (BIOS/ Northbridge/Southbridge etc.) or to another workstation architecture using OpenFirmware etc.

    Possible: Yes.
    Easily Achieved: No
    Possible by someone other then Apple? No

    Darwin does not MacOS X make.

    --
    I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
    1. Re:No, Darwin isn't MacOS X lite by connorbd · · Score: 2

      Why couldn't they create MacOS X/x86 easily?

      My thought on the matter: get a Sandpoint board or something similar, get Darwin running on it, then copy over all the rest of the system and see if it will work. Unless they are in fact making high-level components hardware-dependent, it should work. Maybe not flawlessly mind you (Apple System Profiler would probably choke), but unless Apple's pulling some kind of funny business like was suggested above it shouldn't really be a problem... That is, after all, what microkernels are for...

      /Brian

    2. Re:No, Darwin isn't MacOS X lite by connorbd · · Score: 2

      Which is why I figure that porting it should be possible...

  10. Re:Wow... more more more... by TWR · · Score: 2
    For the last few versions, the Mac OS has been loading it's "ROMs" off disk early in the boot process. Look in the system folder for a file named Mac OS ROM.

    Yes, but there's still a boot ROM on the Macs. The ROM-in-RAM does load a "ROM" from a file on disk, but the Boot ROM (basically a BIOS) does quite a bit at startup. Here's info from the original iMac's developer notes:

    "The Boot ROM contains the code needed to start up the computer, initialize and examine the hardware, provide a device tree to describe the hardware, provide hardware access services (RTAS), and control to the OS. The Boot ROM can be grouped into the following major pieces. "

    Granted, this doesn't contain a significant portion of the OS, like the ROMs used to, but it's pretty key.

    -jon

    --

    Remember Amalek.

  11. Re:Wow... more more more... by TWR · · Score: 2
    No, there's more than OpenFirmware there; read the tech notes on the New World architecture. For example, the Ethernet driver is in the ROM, so Macs can be booted over the network (single System Folder on a server for a roomful of iMacs).

    -jon

    --

    Remember Amalek.

  12. Re:Thanks Apple by TWR · · Score: 3
    . I'd personally like to see Apple take the initiative to install the operating system in a very secure state.

    Uh, it is. By default, Mac OS X ships with Mac file sharing off, FTP off, Apache off, and ssh off. Telnet is disabled in all versions since 10.0.1. If you want to turn them on, it's just a checkbox, but 99% of all Mac users won't turn on any of them except for Mac file sharing, which should be pretty safe; I don't know of any AppleTalk exploits.

    -jon

    --

    Remember Amalek.

  13. Re:Wow... more more more... by TWR · · Score: 3
    Darwin makes Mac cloning possible, at least for small operators.

    No, it doesn't. Darwin alone isn't much more than a BSD variant, and I'd be pretty surprised if Apple isn't using the copyrighted ROMs on every Mac's motherboard as some sort of dongle for the higher-level Mac OS X functionality. You couldn't copy those ROMs without Apple's permission and that will happen over Steve's cold, dead body.

    Whether or not Apple could survive under a licensing system is a different debate. But I doubt that it'd be possible technically without Apple's blessing.

    -jon

    --

    Remember Amalek.

  14. Re:AppleTalk exploits by csw · · Score: 2

    Xinet (available for Solaris/SPARC and Irix) does use encrypted AFP passwords, and otherwise does an excellent job as a Unix AFP server. Helios, on the other hand, uses cleartext passwords. Xinet costs a bit of money, but might well be worth it.

  15. License prevents implementing this spec? by mwa · · Score: 2
    Following the links to the Open Group and the Open Group Publications on the Web terms and conditions, I see:

    "2.You are permitted to read the HTML and PDF versions of Open Group publications using your HTML browser/Acrobat software and to download them for your own personal use provided you have given your name and email address for each publication requested. However, you are NOT permitted to amend, copy, reprint, offer for sale, or otherwise re-use material from these documents without explicit permission from The Open Group.

    I assume "otherwise re-use material" would include actually implementing the specification.

  16. Funny thing about the security there... by russb · · Score: 2

    Funny thing. I clicked to download the code, server authentication box came up. I entered nothing and clicked ok. Let me right through :) I wonder if they are implementing their own procedures and standards. rb

  17. Re:OpenSSL? by MochaMan · · Score: 3

    Is the the MacOSX equivalent of OpenSSL?

    No. This is an extensible architecture that allows you to add modules for a ton of algorithms. Think of it more as a pluggable architecture something like Java's JCE.

    I'd assumed that OpenSSL would work on MacOSX, given all the spiel about it being Unix based.

    Mac OS X ships with TCPWrappers, OpenSSL and OpenSSH installed by default since version 10.0.1. There's a GUI interface available in the System Preferences panel to turn it on and off (if you're an administrator - ie. are in the wheel group).

  18. CDSA specification... by victim · · Score: 3

    For those of you wondering what a CDSA might really be, you can read all about it here at the opengroup.

    Good stuff.

  19. Re:Thanks Apple by macdaddy · · Score: 2
    I have to agree with that. I'm not a BSD person myself (yet, but I've been thinking about playing broadening my horizons a bit) but I think that would be cool.

    --

  20. Auth Encryption by macdaddy · · Score: 2
    I use netatalk on my LinuxPPC boxes. I don't have much time to spend on configuring it (it's pretty simplistic as it is) but it seems like you can configure netatalk to encrypt the auth. There is a "uams" directory. I can't say for sure or not but I'm pretty sure you can do it. You might want to check in on a newer version over at their new website. Development picked up again a while back. Good luck buddy.

    --

  21. Thanks Apple by macdaddy · · Score: 4
    Thanks for taking a step or two towards security responsiblity. It's nice to see a company step up to the plate and swing once in a while. If you can maintain or even better improve security with your OS's, you can take a much needed step in front of a number of other companies that don't worry about security concerns until their blunders go public and threaten to hurt their bottomline or public image. Security never has ben a major problem for Apple because very little can be done to a Mac remotely. Now with OS X upon us, those old beliefs are out the window. I'd personally like to see Apple take the initiative to install the operating system in a very secure state. Pre-configure TCP wrappers in a DENY ALL state. Turn off everything that doesn't absolutely have to be on. Wrap everything wether it's on or not. Even packet filter certain things would be nice. Take the initiative to make things a litle more secure, unlike Irix and Redhat that tend to turn on way more services than are really needed. That could greatly limit the number of security concerns now and down the road. Sure you may find a new sploit for ftpd down the road but if it's already disable and/or secured to allow access only to a few hosts.... Of course this is just my opinion, I could be wrong.

    --

    1. Re:Thanks Apple by passion · · Score: 2

      Of course, they could always just ship Aqua for OpenBSD... ; )

      --
      - passion
  22. The UNIX volume leader... by jcr · · Score: 2

    Keep in mind, that with the number of machines Apple sells, they're on track to be the volume leader for UNIX installations by the end of this year.

    Fortunately, Mac OS X is pretty tight right out of the box. As installed, all services are *off*, and there is already a nice GUI app for configuring IPFW (BrickHouse.app, look for it on softrak at www.stepwise.com)

    AFAIK, nobody running a NeXT machine ever got 0wn3d, despite a grievous early mistake in the window server, due to the platform being a very small target (~50K seats, max.)

    Basically, any exploits that work on netBSD are a hazard for Mac OS X, except that they'll have to be re-compiled for PPC.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."
  23. Re:Is this even a valid observation? by Noer · · Score: 3

    Hardly. Microsoft is a minority shareholder, and hardly has much weight to throw around in that manner.

    The main leverage Microsoft has on Apple is the threat of cancelling MS Office for the Mac. But that does make MS a ton of money, so they're not just doing it for leverage purposes.

    --
    -- "Those who cast the votes decide nothing. Those who count the votes decide everything." -Joseph Stalin
  24. Good first step by Noer · · Score: 3

    This seems like a good first step for Apple to be taken more seriously, especially given public concerns about Apple not taking security seriously.

    I'm glad to have the opportunity to look into this framework now. Hopefully Apple will keep addressing the security holes that'll pop up elsewhere in the OS from time to time.

    Will this silence the rabid anti-Apple critics who haven't used a Mac since 1984 (if ever)? Not a chance.

    --
    -- "Those who cast the votes decide nothing. Those who count the votes decide everything." -Joseph Stalin
  25. Re:Is this even a valid observation? by frankie · · Score: 2
    Unless Apple releases it's code for Microsoft systems

    Any code posted on their Publicsource site is open for all comers. For example, OpenPlay runs on Mac, Win, and various *nixes.

    As for CDSA, a couple other people are already working on Windows and Linux implementations.

  26. AppleTalk exploits by ReelOddeeo · · Score: 2

    Mac users won't turn on any of them except for Mac file sharing, which should be pretty safe; I don't know of any AppleTalk exploits.

    Just because there are no exploits, doesn't mean you have security. (See my last sentence below.)

    I remember from an Apple developer's conference about 1987 (yes that's EIGHY seven) that when the password traverses an AppleTalk network, it is DES encrypted, or something like that.

    In recent years, you can use AFP (Apple Filing Protocol) over TCP as well as over AppleTalk. Now I don't know about Apple's implementation of AFP over TCP, but when I use a Netatalk server on a Linux box, the password is in the clear. Apparently, Netatalk doesn't have or use a UAM on the Mac side to scramble the password. Even bad ol' Microsoft does this -- although you need to use a custom UAM from MS to access AFP on an NT Server from a Mac. But it's easy, just drop the UAM into your System Folder. And has been this way for years. (UAM = <something> authentication module, or somesuch.)

    At home, on Cable Modem, I have a Linux box, static IP, domain name. At work, using my Mac I sometimes mount my home directory using AFP. It's so easy. Just go to the chooser, mount it, etc. My home directory from Linux at home on my Mac desktop at work!

    I've often suspected that the password goes naked (in the clear). I just now positively confirmed it. I ran Ethereal (from a Win98se box), while I mounted my home directory from home (Linux) to my Mac desktop. Yup, the password is in the clear. It's right there in the packets.

    The next logical step is to write the cute dude responsible for dsniff to see what the possibilities are to get dsniff to reveal AFP passwords over TCP.

    The irony of this is that Mac mounting an AFP server volume is insecure only when the server is a Linux box. (well, actually Netatalk)

    --

    Those who would give up liberty in exchange for security and DRM should switch to Microsoft Palladium!
  27. Re:Wow... more more more... by uid8472 · · Score: 2

    The ROM in ROM is also known as Open Firmware; it's covered by an IEEE standard (off the top of my head, 1275?) and is also used by Sun (and I think a few other Unix-hardware makers) for their hardware. Not exactly proprietary...

  28. Wow... more more more... by connorbd · · Score: 2

    Apple's got themselves in an interesting situation here. The more low-level stuff they put out for all to play with, the harder they lock down the high-level stuff.

    Seems to me that Apple's in kind of a strange situation -- Darwin makes Mac cloning possible, at least for small operators. Apple needs to do some fast thinking at this point -- going completely Open Source is a good idea because MS-style licensing enforcement at this point goes out the window. But that means they need to start moving boxes, and more importantly, motherboards.

    No doubt this is an interesting place for Apple to be working. They are giving up control, hopefully looking ahead to a point where software licensing is meaningless. That's good. Giving away an extensible crypto architecture is even better (not to mention that it makes hash of what little is left of export controls on crypto).

    Apple should stay the course. Their next trick, though, needs to be establishing a commodity PowerPC hardware market. I'd be interested to see how that can be pulled off...

    /Brian

  29. Microsoft Response by dynoman7 · · Score: 2

    Oh yeah! Well we can perform code signing AND encryption operations while maintaining the security of the cryptographic keys AND chew gum AND standing on our heads, walking backwards. Did we mention that it will cost a lot more?

    --
    Blarf.
  30. Is this even a valid observation? by 2nd+Post! · · Score: 2

    Unless Apple releases it's code for Microsoft systems (it might, given it's streaming server and Quicktime softwares).

    Apple code for Apple OS, right?

    Geek dating!

  31. All that security, but insecure setuid by joe_n_bloe · · Score: 2
    Oddly enough, Darwin has insecure setuid scripts. It also has the setuid race condition kernel bug that has been excised from more civilized Unixen. Until Mac OS X came along, such boxes were becoming scarce. It's like deja vu all over again! It's hard to believe a company would ship a "new" operating system with this same old crap in it.

    Here's hoping someone at Apple fixes this before someone else not at Apple finds a way to hack the soon-to-be-masses of Mac OS X boxen en masse.

    1. Re:All that security, but insecure setuid by MichaeI+Sims · · Score: 3

      That's true, but MacOSX ships with almost all of its services turned off, as did Mac OS 9 and its predecessors. For instance, the two services (ftpd and ntpd) which were the subject of recent Apple advisories are not enabled in the default configuration. So it will still take a substantial amount of work to get a shell on an OS X desktop from which an attacker can exploit the local vulnerabilities.