
A trivial example is to boot a live USB, mount the Linux root partition, and edit /etc/passwd and /etc/shadow to give yourself a backdoored user with root privileges.
Given physical access to an unencrypted laptop, an evil maid attack is extremely easy. Leaving my laptop hard drive unencrypted. Yet my Epic Games account had 2FA on – and I’m not even that much of a gamer. It took me an embarassingly long time to add 2FA to my password manager, Bitwarden. Inconsistent use of two-factor authentication. This scheme was likely brute-forceable by a determined adversary, and in addition if my password on one insecure site got leaked, it would also compromise all of my other account passwords. My previous password generation algorithm was something I came up when I was much younger and dumber. This is the fun part: detailing a number of missteps I’ve made with security in the name of convenience over the last several years. Laptop: Lenovo ThinkPad X1 Carbon Gen 9.
Baseline setup Hardwareįor this post, I’ll be using the following hardware: Additionally, we should not be locked out of our own accounts even with one device missing.Īddressing the remote threat model will be the subject of this post, whereas the physical threat model will be addressed in part two. For now, the way I think about this scenario is that an attacker can have physical access to one of the following:Įven with any one of these devices in their possession, the adversary should never be able to access any of our data or accounts. This is the situation where an attacker has physical access to a device (i.e. If an account or password has been compromised, our data and accounts on other services should still be protected.
Personal information dumps from poorly secured servicesĪn attacker, even with these tools, should not be able to get into our accounts. This is the situation where an attacker doesn’t have physical access to your system. If you have such a determined attacker trying to break into your system, then you probably have bigger problems than reading this blog post. This is important because an adversary with significant resources (e.g. Threat modelīefore delving into the details, we should take a moment to lay out a threat model – the types of attacks that an attacker is permitted to perform and that our setup should be able to reasonably defend against.
This post covers the first steps I took towards that end, starting with password generation and better two-factor authentication. In the last few weeks, I started to change that and significantly upgraded my personal security.
This means I had a lot of configuration set up for convenience, but without much in the way of security. I’m someone who’s been reasonably technical for a long time, but was not really interested in security until about a year and a half ago.