alecm<p><strong>What the history of OpenBoot, Phrack, Mudge & Solaris, can teach us about the wisdom (or not) of Apple’s building their iPhone security debugging-backdoor-NSA-hack thing</strong></p><p>In the days before people really, <em>really</em>, cared about security — when it was more amazing that mainstream computers <em>worked at all</em> rather than that they offered falsifiable guarantees about privacy and integrity, and most of all in the days before hackerdom decided that it would be great if all the world’s computation ran on <em>“…surely 640Kb is enough for anyone?”</em> glorified MS-DOS personal computers rather than on architectures specifically designed to carry the weight of “big data”… back in those days there was the concept of a <em>monitor</em>.</p><p>By <em>monitor</em> we don’t mean <em>VDU</em> nor <em>LCD screen</em>, but instead that what you considered to be your entire computer operating system was something which could be paused, inspected, poked, amended, restarted or halted, all by a little parasitic computer system which probably polled the device tree and booted it up in the first place. The consequence of the monitor was that — beyond being a mere “boot loader” — you were essentially <em>running your entire operating system kernel under a live debugger on a 24×7 basis</em>. </p><p>This “debugger” was the <em>monitor</em>; sometimes it was separate hardware, sometimes it was just a firmware-level subsystem with which you could interrupt your operating system at any point, and call back into. At Sun Microsystems (in particular, but much the same was available elsewhere) the monitor evolved into a complete and flexible little solution called OpenBoot, which subsequently became a PCI standard (<a href="https://flylib.com/books/en/3.126.1.41/1/" rel="nofollow noopener noreferrer" target="_blank">it is/was(?) even in MacOS</a>) and it was massively powerful.</p><p>Unfortunately: with great power comes great responsibility, which (per the first paragraph) people were not really aware of, yet.</p><p>So, in July 1998, <a href="https://en.wikipedia.org/wiki/Peiter_Zatko" rel="nofollow noopener noreferrer" target="_blank">Mudge</a> posted in Phrack an article titled <a href="http://phrack.org/issues/53/9.html#article" rel="nofollow noopener noreferrer" target="_blank">“FORTH Hacking on Sparc Hardware” explaining how to use the monitor to change the UID of your shell process to be zero/the <em>root</em> user:</a></p><pre><code>Fire up the trusty OpenBoot system via L1-A and get the pointer to thecred structure via :ok hex f5e09000 18 + l@ .f5a99858ok goNow, get the effective user id byok hex f5a99858 4 + l@ .309 (309 hex == 777 decimal)ok goOf course you want to change this to 0 (euid root):ok hex 0 f5a99858 4 + l!ok gocheck your credentials!Alliant+ iduid=777(mudge) gid=1(other) euid=0(root)</code></pre> <p><strong><em>tl;dr — press some keys, type a magic incantation in Forth and you become “root”</em></strong></p><p>Let’s just say that OpenBoot was a very powerful and essential medicine… but that provision of that power caused security side-effects/issues that were not going to go away in any short period of time. An <a href="https://www.giac.org/paper/gcih/182/privilege-elevation-system-memory-editing-sun-sparc-platform/101427" rel="nofollow noopener noreferrer" target="_blank">excellent little white paper from GIAC</a> provided a synopsis and context from a few years later, in 2001.</p><blockquote><p>The technique of elevating user privileges by manually editing system runtime memory is an exploit that can be used to subvert all operating system security measures. This vulnerability is not operating system platform specific and exists in all computer hardware that utilizes a programmable firmware component for hardware control and bootstrapping procedures. This paper will explain this vulnerability as a class of exploit and utilize the SUN Microsystems’ OpenBoot programmable ROM (PROM) and Solaris as a technical example.</p><p><a href="https://www.giac.org/paper/gcih/182/privilege-elevation-system-memory-editing-sun-sparc-platform/101427" rel="nofollow noopener noreferrer" target="_blank">https://www.giac.org/paper/gcih/182/privilege-elevation-system-memory-editing-sun-sparc-platform/101427</a></p></blockquote> <p>Speaking as one of the people who had to clean up the mess: we/Sun Microsystems should have done a lot more to mitigate the ability of people to get at this powerful medicine; this issue was significant amongst others which drove Sun’s internal security community to create and force the adoption of <a href="https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/secure-sys-dev/using-secure-default-configuration.html#GUID-815E7957-FFC3-4F2C-8EE4-1CE27D5BE709" rel="nofollow noopener noreferrer" target="_blank">the “Secure By Default” initiative</a>, and to formalise customer provision and promote adoption of <a href="https://docs.oracle.com/cd/E19056-01/sec.tk42/819-1504-10/SST_RN.html" rel="nofollow noopener noreferrer" target="_blank">the Solaris Security Toolkit</a> which (amongst many other configuration changes) locked-down several different routes by which the OpenBoot monitor could be exploited.</p><p>From the perspective of 2023: this all should have happened 5, perhaps 10 years before Mudge’s posting, but there was neither the corporate will — nor customer will/expertise — to address the matter at that time.</p><p>So when I look at Apple, and t<a href="https://alecmuffett.com/article/108745" rel="nofollow noopener noreferrer" target="_blank">here’s an apparent hardware debugging widget in the memory which can be driven by undocumented means to poke the entire system</a>, for a device which they are literally advertising as robust and secure, my reactions are basically:</p><ol><li>Dude…</li><li>Dudes…</li><li>Dudettes…</li><li>What the fuck?</li><li>This is history repeating itself…</li><li>Like really, what the fuck?</li><li>At least when <em>we</em> did it, it was in a world where hardly anyone cared.</li></ol> <a class="" href="https://www.addtoany.com/add_to/copy_link?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/threads?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/mastodon?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/hacker_news?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Falecmuffett.com%2Farticle%2F108789&linkname=What%20the%20history%20of%20OpenBoot%2C%20Phrack%2C%20Mudge%20%26%20Solaris%2C%20can%20teach%20us%20about%20the%20wisdom%20%28or%20not%29%20of%20Apple%E2%80%99s%20building%20their%20iPhone%20security%20debugging-backdoor-NSA-hack%20thing" rel="nofollow noopener noreferrer" target="_blank"></a><a class="" href="https://www.addtoany.com/share" rel="nofollow noopener noreferrer" target="_blank"></a> <p><a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://alecmuffett.com/article/tag/apple" target="_blank">#apple</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://alecmuffett.com/article/tag/essay" target="_blank">#essay</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://alecmuffett.com/article/tag/mudge" target="_blank">#mudge</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://alecmuffett.com/article/tag/openboot" target="_blank">#openboot</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://alecmuffett.com/article/tag/operation-triangulation" target="_blank">#operationTriangulation</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://alecmuffett.com/article/tag/sun-microsystems" target="_blank">#sunMicrosystems</a></p><p><a href="https://alecmuffett.com/article/108789" rel="nofollow noopener noreferrer" target="_blank">https://alecmuffett.com/article/108789</a></p>