Security by Incompetence: Why your password isn't the problem

This post was migrated. The content was written 2019-24-2

User error may be the most common reason people get hacked, but there are many more factors at play.

Many security experts claim that user error is the most common way people get their accounts compromised. This has been a common stance on security, and is entirely correct – a weak password will ruin your day as soon as someone decides they're interested in you, at least, enough to let one of their computers sit for a few hours guessing the passwords you thought were secure.

For example, the rules of secure passwords are generally considered to be:

  1. A good password is 8 characters or longer
  2. A good password should use both uppercase and lowercase
  3. A good password should use letters, numbers, and symbols
  4. A good password should not contain an English word or phrase
  5. A good password should not be your username, or any public information about you

According to these rules, we can look at some of the common ways people write passwords, and see how secure they are. Many “secure” passwords can be broken in a few minutes, while many “insecure” passwords are actually very hard to break. For example:

But none of that matters.

From this point, I'm not even going to mention the security of passwords. Here's why: Let's say you have the most secure password ever. Let's also assume that you follow proper security practice, don't fall for scams, and remain vigilant online. There's a good chance that all your security is irrelevant. Not because it's futile – anyone who says you don't need all that should be sued for slander, or at the very least, be banned from giving security advice. But even with that, many services not only fail to properly secure their systems, but they barely manage to include security at all.

Many services will use vastly outdated security mechanisms, and describe it as “cutting edge” or will use the mechanisms in a way that every reputable expert would look at, trying to decide whether laughing or crying would be more appropriate of a response. In my personal experience, I was asked to test an app to see whether someone could break in. So I got to work, and less than 4 hours later I had a neatly packaged version of it that would bypass the password. After all, what if you forget it? You can't be expected to call the IT help desk, when you could just not use a password, right?

My version of the app, which was basically the original, minus the need for any kind of authentication at all, didn't use a clever exploit. All it did was pinky promise to the server that you really should be logging in, and because of that, I was able to log in as every user with an account, including the admins. It might also be good to note: I never had any clue what their passwords were, and for all I care, the users were the foremost experts in cyber security (although the developers certainly weren't). They weren't, but that's irrelevant, anyway when it comes to an app like that.

But that's just one app, right?

 In security, we like to use anecdotal one-off examples to communicate the nature of many things, or at least I do. This way, I can show a real-life case where it actually happened, but it leaves my point to the argument of “well, that's just one case – the majority of the time the security's fine” after which I take 15 seconds to copy and paste a link from Google of a major incident that hit the news.

Iran Reportedly Hacked US Drones in Iraq, Syria, Got Intel From Them
How Iran hacked super-secret CIA stealth drone
Insurgents hack U.S. drones using $26 software

Yes, you read correctly – $26 to hack a multi-million dollar top-secret drone, and I'm sure the CIA would rather us not have anything near remote access to them. Yes, I admit that's not exactly recent, but we can stop living with the false confidence encouraged when people claim it was the “exception” and not the norm. That's also just the first example that popped into my head. If you want a more comprehensive list, I could waste a couple hours putting together a list of similar security incidents that really should never have happened anyway.

I could also use the example that the website (yes, that's a real website) has significantly better security than my bank at It's not that Chase has bad security, but should really be one-upping a bank? I could point out also, for anyone in the United States, that the Defense Intelligence Agency ( gives an error when you try to visit securely. Update: The DIA has fixed their website to allow secure connections, after this article was posted.

I'm not a developer, why should I care?

If you're just a user, consider this a cautionary tale, explaining the dangers of the word “secure” in marketing campaigns. Many companies will use buzzwords like encrypted, decentralized, anonymous, secure, and more; all while having precisely zero security offered by their product or service. Is Windows secure? If you go by their rather impressive track record of nearly every released version of SMB allowing attackers remote access, I'd hesitate to use their system for anything more than playing the latest and greatest Solitaire. SMB also happens to be a remote administration protocol. It's enabled by default, and users generally don't know how to disable it.

As a developer, I'm offended. Real developers actually have real security!

I've heard this one before – someone saying if developers don't care about security, how did we get stuff like VPNs, firewalls, proxies, intrusion prevention systems, OpenPGP/GPG, and Tor?

Although that's a valid point, it's important to realize that everything on that list is specifically designed for security, and while you'd hope my bank uses the same security-first philosophy, they just don't. I can debate all day about this, but the fact is credit card numbers are little better than a weak password, and I can generate a valid social security number in 40% of my guesses, just picking them randomly. In a world like this, the impressive part isn't that hackers can access so much – I'm impressed by how much they can't do.

Although the problem is usually the user, that doesn't mean there aren't just as impactful issues built into the service you're using. That statement really just says there are more issues on the user-side, not that there aren't problems behind the scenes, too; there are.

All original non-code/non-software content is committed to the public domain, except where otherwise explicitly stated. Code/software is licensed under the BSD 3-clause license, except where otherwise explicitly stated. Content not originally created by Serpent Security may be subject to separate licensing terms.