Live data from Hacker News

Ask HN: How do you trust that your personal machine is not compromised?

news.ycombinator.com

111–120 of 469 posts

Re: Ask HN: How do you trust that your personal machine is not compromised?

#111
ex-AOSP dev here

Android and ChromiumOS are likely the most trustable computing platforms out there; doubly so for Android running on Pixels. If you don't prefer the ROM Google ships with, you can flash GrapheneOS or CalyxOS and relock the bootloader.

Pixels have several protections in place:

- Hardware root of trust: This is the anchor on which the entire TCB (trusted computing base) is built.

- Cryptographic verification (verified boot) of all the bootloaders (IPL, SPL), the kernels (Linux and LittleKernel), and the device tree.

- Integrity verification (dm-verity) of the contents of the ROM (/system partition which contains privileged OEM software).

- File-based Encryption (fscrypt) of user data (/data partition where installed apps and data go) and adopted external storage (/sdcard); decrypted only with user credentials.

- Running blobs traditionally run in higher exception levels (like ARM EL2) in a restricted, mutually untrusted VM.

- Continued modularization of core ROM components so that they could be updated just like any other Android app, ie without having to update the entire OS.

- Heavily sandboxed userspace, where each app has very limited view of the rest of the system, typically gated by Android-enforced permissions, seccomp filters, selinux policies, posix ACLs, and linux capabilities.

- Private Compute Core for PII (personally identifiable information) workloads. And Trusty Execution Environment for high-trust workloads.

This is not to say Android is without exploits, but it seems it is most further ahead of the mainstream OSes. This is not a particularly high bar because of closed-source firmware and baseband, but this ties in generally with the need to trust the hardware vendors themselves (see point #1).

Re: Ask HN: How do you trust that your personal machine is not compromised?

#112
post #20
post #9

Here's a short, fairly practical guide that you might find helpful: https://www.ncsc.gov.uk/files/Cyber-Essentials-Requirements-... . It is aimed mostly at small businesses, but I find a lot of the guidance to be pretty relevant to my personal IT. My even shorter (and incomplete) summary of the document would be: configure your router and firewall; remove default passwords and crapware from your devices; use a lock s…

Do you lock your computer every time you leave your desk? And do you always check for keylogger thumbdrives and such?

On MacOS, poke the TouchID key to Lock Screen. When back, poke it again to unlock. Make this rote.

On Windows, Win-L to lock.

Re: Ask HN: How do you trust that your personal machine is not compromised?

#113
post #20

Earlier quoted context omitted.

Do you lock your computer every time you leave your desk? And do you always check for keylogger thumbdrives and such?

For me: No, and no. But as that would require someone breaking into my apartment, I don’t worry too much.

I work from home and still lock my screen because I have cats that will walk on my desk if I'm not looking. 4 paws and an open vim or slack window are a dangerous combination!

Re: Ask HN: How do you trust that your personal machine is not compromised?

#114
post #95

Earlier quoted context omitted.

Since you mention routers, I’m curious what brand you use. Since Ubiquity started fown the cloud-first path I’ve switched to Mikrotik. While they do seem to have regular CVEs (which is good, I think?), they also don’t seem to have a public bug bounty program.

> Since Ubiquity started fown the cloud-first path I’ve switched to Mikrotik I was thinking about getting a Ubiquity router because it has good support for setting up wired VLANs without needing to go down the path of finding a solid OpenWrt router. Is it really true that you can't access the router's dashboard and configure things without associating an online account to your router?

https://www.lifewire.com/ubiquiti-promised-premium-secure-ro... [2021]

Re: Ask HN: How do you trust that your personal machine is not compromised?

#115
I only have limited trust. Between 3D printing slicers from Chinese companies, many packages from PyPI and Rust crates, there is always a danger that something is compromised somewhere.

I try to limit attack surface in the following ways:

- I only use M1 Macs as desktops. This reduces attack service in various ways. M1 Macs do not have anything like UEFI firmware, it all starts from the iBoot ROM and the whole chain is verified with signatures. The OS is on a sealed system Volume that is read-only and signed. Altogether, this limit firmware/OS attacks.

- I use a U2F key and/or the Secure Enclave of the Mac for credentials (SSH keys, 2FA). They are set up to require user confirmation.

- When possible, I will install applications from the Mac App Store, since they are sandboxed by default.

- I use separate work and private Macs.

- I clean and factory restore my Macs every few months.

- I use some tools like Knock Knock to see if there is anything suspicious.

Compromise is obviously possible, but I try to push it into 'mostly state actor' territory, because I am not interesting to most state actors.

Re: Ask HN: How do you trust that your personal machine is not compromised?

#116
I dont! In fact I assume it has been to some extent and that I would be unable to detect this.

Going from that assumption, I take care to keep encrypted backups of all of my important files both locally on another machine and remotely.

I also use two-factor authentication wherever possible, because I find it unlikely that the same attacker would gain access to both my PC and phone.

Additionally, I have a second phone with no SIM card that I use for some TOTP 2 factor accounts that I wish to remain especially secure.

Operating at the assumption that you have already been compromised allows you to prepare for the worst should you truly be.

Re: Ask HN: How do you trust that your personal machine is not compromised?

#117
I don't know, really. I have a ton of "personal machines" when it gets right down to it, but I'll think client wise.

I distro hop chronically on most of my machines. Sometimes multiple OS reinstalls across machines per week. Some installs have lasted a few months but it's rare.

I try to stick to official repos when I do reinstall, so I'm outsourcing that trust to the distro maintainers.

If it's on the disk, it's gone except for a few important files I keep in a self-hosted Nextcloud sync folder.

I use LUKS encryption to ensure leaving the laptop on the bus is a non-event. If it was ever in somebody's possession for very long (border, police, lost and found) I'd just put it in the garage and never touch it again.

Firmware malware is pretty uncommon, still, so I'm just hoping for the best there.

Re: Ask HN: How do you trust that your personal machine is not compromised?

#118
post #102

Earlier quoted context omitted.

Lock my computer: Always[1][2]. Check for keylogger thumbdrives: I use a laptop so it would be immediately obvious. But now that you say it I haven't checked the charger USB-outlet on the back of my cabled keyboard. [1]: it has happened I have failed. Once a year or something. [2]: I sometimes try to allow myself to go downstairs in my own house to fetch a cup coffe without locking when I am alone, but I find it so s…

What bugs me is when this is applied to remote workers in a way that seems optimized for in-office environments. For example IT enforces that your screen becomes locked after 15 minutes of inactivity and also ties in your local computer 's user login password to your SSO login to access everything. It's a contradiction around password best practices. If you force people to input their password multiple times a day th…

TouchID or windows machines with Windows Hello touch solves morale issue.

Then they don't type most of the time and the length of 'memorable passwords' (like correct-horse4BATTERY!staple) isn't a problem.

Re: Ask HN: How do you trust that your personal machine is not compromised?

#119
post #102

Earlier quoted context omitted.

Lock my computer: Always[1][2]. Check for keylogger thumbdrives: I use a laptop so it would be immediately obvious. But now that you say it I haven't checked the charger USB-outlet on the back of my cabled keyboard. [1]: it has happened I have failed. Once a year or something. [2]: I sometimes try to allow myself to go downstairs in my own house to fetch a cup coffe without locking when I am alone, but I find it so s…

What bugs me is when this is applied to remote workers in a way that seems optimized for in-office environments. For example IT enforces that your screen becomes locked after 15 minutes of inactivity and also ties in your local computer 's user login password to your SSO login to access everything. It's a contradiction around password best practices. If you force people to input their password multiple times a day th…

Oh yes. Having my machine lock very fast when I wfh is really annoying. Past that, with so many systems to log into, I sometimes feel like all I do is authenticate and authenticate all day long. SSO is probably saving a lot of this, but at my megacorp it still sucks.

Re: Ask HN: How do you trust that your personal machine is not compromised?

#120
I assume it is, per Intel ME / AMD PSP's ability to read everything - memory, CPU registers, disk, inspect all network traffic, directly utilize onboard GbE for bidirectional communication.

For adversaries below the level of the US intelligence agencies, I run everything virtualized and compartmentalized with Qubes, the installation image for which I verified the dev-provided cryptographic signature matches. I try to rigorously avoid any software operated by Google, Amazon, Microsoft, Apple, Facebook, disable all JS by default in my LibreWolf browser, refuse to connect directly websites protected by cloudflare, audit source code for almost everything I run in userland, etc etc etc.

This is all for my personal machine. For work devices, I assume they're pwned even worse and I do nothing but actual work on them.

On the mobile side, GrapheneOS on a Pixel for my first phone, and a linux phone with hardware killswitches for bt/wifi, cam/mic, and baseband for my second phone.

All of this in addition to solid fundamentals like network traffic monitoring, very restrictive firewall, offline encrypted hardware password manager with no password reuse, etc.

Post reply on HN