README: add link for automatic readme display
[sudo-osx-update.git] / README_FIRST.txt
blobc8f6293fcd587dfc3f780694031e81133f7f2c4c
1 ================
2 SUDO OS X UPDATE
3 ================
5 -------------
6 What is this?
7 -------------
9 This project brings together the OS X specific patches for sudo together with
10 the official sudo 1.7.10p7 release to provide a fix for the CVE-2013-1775 [1]
11 vulnerability (details in [2]) to Mac OS X versions prior to 10.7.5/10.8.5
12 specifically versions 10.4.11, 10.5.8 and 10.6.8.
14 ----------
15 Background
16 ----------
18 Apple has included a version of sudo with Mac OS X from the beginning, but
19 while the version included in OS X has been based on an official sudo release
20 tarball it always has a few Apple-specific tweaks in it.  The earliest version
21 included by Apple was sudo-1.6.3p5 with Mac OS X 10.0.0.
23 As detailed in "Authentication bypass when clock is reset" sudo alert [2], sudo
24 versions 1.6.0 through 1.7.10p6 and sudo 1.8.0 through 1.8.6p6 inclusive are
25 affected by the problem.
27 The reason this problem is of particular concern on OS X is that most machines
28 running OS X will go through the standard Apple Setup Assistant that prompts on
29 initial use to create the first user account for the machine.  That account
30 will automatically be a member of the "admin" group and on OS X machines, the
31 "admin" group automatically has sudo access (the root account is disabled on OS
32 X unless explicitly enabled later by the user).
34 The problem arises in that members of the "admin" group may also change the
35 system clock time without needing to enter any password.  There's even a
36 command line utility to do this.
38 On 2013-09-12 Apple released a security update for OS X 10.7.5 that contains
39 an updated sudo with a fix for CVE-2013-1775 [1] and OS X 10.8.5 that also 
40 contains the same fix.  However, although a 10.6.8 security update was released
41 at the same time, it does NOT contain an updated sudo binary.  The updated sudo
42 version provided by the 10.7.5 security update and OS X 10.8.5 (as shown by
43 "sudo -V") is "1.7.4p6a".  The Apple Open Source version of sudo corresponding
44 to "1.7.4p6a" has been posted on their site [3].  Note that OS X 10.9.0
45 includes an sudo based on version 1.7.10p7.
47 So any version of OS X prior to 10.7.5/10.8.5 whose admin user has run sudo for
48 any reason (and has not subsequently run "sudo -K" or added a workaround of
49 "timestamp_timeout 0" to the sudoers file) is vulnerable to a root access
50 exploit.  OS X 10.7.5 is also vulnerable unless the security update has been
51 installed.
53 -------
54 License
55 -------
57 The license is "BSD" + "MIT" as shown on Apple's Open Source site for the sudo
58 sources.  The LICENSE file from within the sudo-1.7.10p7.tar.gz file has been
59 included in this directory as LICENSE.txt for convenience.
61 Please take note of the license's disclaimer of liability for this software:
63 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
64 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
65 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
66 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
67 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
68 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
69 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
71 --------
72 Building
73 --------
75 The build script will extract, patch, configure and make a new sudo executable
76 suitable for use on the current system.
78 ----------
79 Installing
80 ----------
82 The build script emits instructions on how to install the new sudo executable
83 when it's finished building.  Doing so WILL REPLACE YOUR EXISTING sudo!!!
85 A backup of the previously installed sudo executable is highly recommended
86 before proceeding!!!
88 ----------
89 References
90 ----------
92 [1] <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1775>  
93 [2] <http://www.sudo.ws/sudo/alerts/epoch_ticket.html>  
94 [3] <http://opensource.apple.com/source/sudo/sudo-67.1/>