Add build script
[sudo-osx-update.git] / README_FIRST.txt
blob35cdbb9be65a416d1730a6bedf81356fa35aa518
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".  As of this writing (2013-09-23) the Apple Open
44 Source version of sudo corresponding to "1.7.4p6a" has not yet been posted.
46 So any version of OS X prior to 10.7.5/10.8.5 whose admin user has run sudo for
47 any reason (and has not subsequently run "sudo -K" or added a workaround of
48 "timestamp_timeout 0" to the sudoers file) is vulnerable to a root access
49 exploit.  OS X 10.7.5 is also vulnerable unless the security update has been
50 installed.
52 -------
53 License
54 -------
56 The license is "BSD" + "MIT" as shown on Apple's Open Source site for the sudo
57 sources.  The LICENSE file from within the sudo-1.7.10p7.tar.gz file has been
58 included in this directory as LICENSE.txt for convenience.
60 Please take note of the license's disclaimer of liability for this software:
62 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
63 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
64 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
65 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
66 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
67 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
68 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
70 --------
71 Building
72 --------
74 The build script will extract, patch, configure and make a new sudo executable
75 suitable for use on the current system.
77 ----------
78 Installing
79 ----------
81 The build script emits instructions on how to install the new sudo executable
82 when it's finished building.  Doing so WILL REPLACE YOUR EXISTING sudo!!!
84 A backup of the previously installed sudo executable is highly recommended
85 before proceeding!!!
87 ----------
88 References
89 ----------
91 [1] http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1775
92 [2] http://www.sudo.ws/sudo/alerts/epoch_ticket.html