
Backdoors in x86 assembly instructions microcode - peter_d_sherman
https://webcache.googleusercontent.com/search?q=cache:SBqrRHx9IDkJ:https://weekly-geekly.github.io/articles/427757/index.html+&cd=12&hl=en&ct=clnk&gl=us
======
peter_d_sherman
Excerpt:

"Do you still trust your processor?

The security of programs and operating systems is based on the security of the
hardware on which they are deployed. As a rule, software developers do not
take into account the fact that the hardware on which their software is
deployed may be untrusted, harmful. When iron behaves erroneously (regardless
of whether it is intentional or not), software security mechanisms are
completely depreciated. For many years, various models of protected processors
have been proposed: Intel SGX, AMD Pacifica, and others. Nevertheless, the
enviable regularity with which information about critical failures (from
recent ones, such as Meltdown and Specter) and the detected undocumented
debugging functions — leads to the idea that our selfless trust in processors
is groundless."

===END EXCERPT===

Phrased another way: If the hardware isn't secure, then the most secure
software -- ISN'T...

Which relates to the User Agreement -- of every single social network, online
service and website (Facebook, Amazon, Apple, Netflix, Google, etc.).

If they promise user privacy, then they promise user privacy based on their
part of the software stack, which may comprise several or more vendors, and
must include the underlying hardware.

If just one of those parts, such as the hardware, is flaky "a chain is only as
strong as its weakest link" \-- then so is that guarantee, so is that CONTRACT
that they made to their end-users... In other words, they are "guaranteeing"
something that they cannot know to be true across all machines and
configurations, and if they cannot know it to be true, they cannot guarantee
it...

Which in turn may open them up to future class-action lawsuits.

Also... think philosophically for a moment... would these companies have
became as successful as they are, if they would have advertised, in plain and
simple english, on their user sign-up pages, something like "HEY, WE CAN'T
GUARANTEE YOUR PRIVACY - Would you still like to sign up?".

And now think about stock prices, which exist as a valuation by a market given
relative to the ability to keep and maintain profitability from users... would
those stock prices have been the same had each company been up-front with its
users from the beginning?

Corporate Integrity it seems, at least in this case, is contrary to
profitability...

------
rolph
never did trust a processor or IDE component, from the day i learned how to
use them.

Whitepapers made me suspicious, the reserved words or bit values that where
mentioned but not documented despite the parent function being extensively
documented was one of the reasons.

the results of bit walking hardware instruction sets and trapping the
resulting output states gave me cause to suspect things.

the long and short of it is digital hardware is not open source, and is not an
operationaly secure platform.

The advent of microcode, was a major turning point, as processors were
effectively wiretapped at that point. It was heralded as a way of fixing
mistakes, post-production, so you could reprogram the microcode to do things
differently. This puts the user in a very compromised situation, and is
getting to be quite extensive as industry has gone beyond simple browser
manipulations, and is actually reaching into the firmware that drives the
hardware components, and manipulating systems out of band with the processor.
The result is a compromised network of digital processors hosted on your
mother board.

So what can we do when we design hardware? How about trap and dump? if a word
shows up on a bus, a home rolled bus controller/hard wired analogue device
could quench that word, [trap-dump] so any and all compromised digital
components would not hear evil instructions, and would be muffled from issuing
evil bus words.

The microcode is something that is usually an encrypted proprietary firmware,
unless the firmware can be opened, understood, and manipulated, by the actual
owner/user then evil commands and evil actions, must be censored from reaching
in or out. a massive undertaking but well worth it.

ya all can start following the breadcrumbs here:

[https://en.wikipedia.org/wiki/Microcode](https://en.wikipedia.org/wiki/Microcode)

[https://en.wikipedia.org/wiki/Microarchitecture](https://en.wikipedia.org/wiki/Microarchitecture)

[https://people.cs.clemson.edu/~mark/uprog.html](https://people.cs.clemson.edu/~mark/uprog.html)

[https://securiteam.com/securityreviews/5FP0M1PDFO/](https://securiteam.com/securityreviews/5FP0M1PDFO/)

~~~
peter_d_sherman
Hi Rolph, great links!

You might want to check out this old HN article:

"MyCPU – Homebrew Computer from Discrete Logic Gates":

[https://news.ycombinator.com/item?id=19926765](https://news.ycombinator.com/item?id=19926765)

...and not just the link, the comments in that article are information-rich as
well.

(There are several others in the same vein on HN, but I don't have them right
now...)

Those CPU's typically don't use microcode, and are generally interesting from
a hardware enthusiast's standpoint.

Hey, based on your previous HN comments and posts (Synchrotrons,
Electromagnetic Propulsion, Plasma Physics, etc.), you seem like a pretty
interesting guy!

If you want to have a longer conversation, why not email me at
peter.d.sherman@gmail.com ?

~~~
rolph
thanks P373 !

