3 ms·
> if you did not write (or at least read) the code that you’re using to do all of the above, then you’re at the mercy of whoever wrote it. It's worse than that
by michaelmior 5y ago
> if you did not write (or at least read) the code that you’re using to do all of the above, then you’re at the mercy of whoever wrote it.
It's worse than that. Even if you read the code, you have to trust that the code you read is the code a service is actually using. Even if you deploy the code yourself, you have to trust that the infrastructure you're running on does not have some type of backdoor. Even if you run your own infrastructure, hardware can still have backdoors. Of course, the likelihood of any of these things actually becoming a problem decreases significantly as you read through the paragraph.
- inetknght 5y ago> the likelihood of any of these things actually becoming a problem decreases significantly as you read through the paragraph. And yet, "likelihood" doesn't necessarily mean "hasn't been done". Just look at: * [0]: Intel ME * [1]: Solarwinds attack and CI systems * [2]: Ubiquiti attack and complete infrastructure compromise * [3]: And the famous Ken Thompson statement [0a]: https://news.ycombinator.com/item?id=15298833 https://news.ycombinator.com/item?id=15298833 [0b]: https://www.blackhat.com/eu-17/briefings/schedule/#how-to-hack-a-turned-off-computer-or-running-unsigned-code-in-intel-management-engine-8668 https://www.blackhat.com/eu-17/briefings/schedule/#how-to-ha... [1]: https://www.cisecurity.org/solarwinds/ https://www.cisecurity.org/solarwinds/ [2]: https://krebsonsecurity.com/2021/04/ubiquiti-all-but-confirms-breach-response-iniquity/ https://krebsonsecurity.com/2021/04/ubiquiti-all-but-confirm... [3]: https://users.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf https://users.ece.cmu.edu/~ganger/712.fall02/papers/p761-tho...
- michaelmior 5y agoIndeed. I mentioned those specific things because it has been done. However, I think the likelihood of the average user being affected by things near the end of the list is generally quite small. If we aren't willing to accept this, at some point, we can't use technology for anything important.
- dointheatl 5y ago> Even if you read the code, you have to trust that the code you read is the code a service is actually using. Don't forget to verify the code for the compiler to ensure that hasn't been compromised in order to inject an exploit into the binary at compile time.