Pwned passwords, open source in the .NET foundation and working with the FBI
troyhunt.com
troyhunt.com
—
https://en.wikipedia.org/wiki/Alfred_Nobel#Criticism
"Criticism of Nobel focuses on his leading role in weapons manufacturing and sales, and some question his motives in creating his prizes, suggesting they are intended to improve his reputation."
That seems backwards to me. Part of the purpose of reputation is to incent people to do good things.
Disclaimer: I was on staff at .NET Foundation 2016-2019.
Use scrypt [0], bcrypt [1], or argon2 [2], which are key derivation functions (KDF) built on top of pseudo-random functions (PRF) and designed to be slow.
In one interesting example, the Keybase founders deviced an experimental scheme to generate Bitcoin wallet addresses from a passphrase and a salt using KDFs [3], the advantage here being that the wallet then is fully non-custodial (note, there are better ways to implement non-custodial wallets [4]).
[0] https://blog.filippo.io/scrypt-all-the-things/
[1] https://codahale.com/how-to-safely-store-a-password/
The FBI forensic team / lab definitely has plenty of dictionaries.
Coincidentally, just few days ago a Russian owner of a platform for such exchanges got his sentence:
https://www.justice.gov/usao-sdca/pr/russian-hacker-sentence...
"DEER.IO sold not only stolen accounts, like the gamer accounts identified in the plea agreement, but also Americans’ personal information, to include names, current addresses, telephone numbers and at times Social Security numbers. On March 4, 2020, the FBI purchased 1,100 gamer accounts, and on March 5, 2020, the FBI purchased the personal information for over 3,600 Americans. On March 7, 2020, Firsov was arrested by the FBI in New York City when he flew into JFK Airport from Moscow."
Of the ones with details listed it seems most of them require intent to defraud or something similar in addition to possession of personal information. I think paying for the info could also be problematic, there are a few trafficking laws in that list.
In a similar vein, possession of the info with the intent to use it to hack into something would probably run afoul of the CFAA or other anti-hacking laws.
If you collect that info with the intent to submit it to haveibeenpwned I think you would probably be fine.
If you collect that info just for fun, but don't do anything with it, I suspect that's legal, but probably not well-advised, as I suspect cops/prosecutors/jurors would have trouble believing someone did that for fun, and would interpret it as evidence that you were up to something nefarious.
I don't think the stolen property angle is an issue. Digital information can't really be stolen: usually the problem is you've committed a copyright violation. In the US at least I doubt user names and passwords would qualify for copyright protection. (Generally, collections of facts do not qualify.)
That's not completely true. Generally, most ways you can "steal" data are illegal in their own right. Examples include computer fraud and wire fraud.
The Computer Fraid and Abuse act does actually detail punishment for the trafficking of passwords but said trafficking must be done knowingly and with an intent to defraud, so this specific usage would probably be fine
Though keep in mind that the FBI can go after whoever they want, sometimes without reason at all.
I think ultimately it comes down to the fact that he's not redistributing the lists of emails, and he doesn't retain pairs of (email + password hash). He designed the site to provide two useful queries ("what breaches included my email" and "has this password been seen in any breaches you processed"), which strike a responsible balance between disclosure and privacy.
Moreover, he has written about his intentions and acted with a fair deal of transparency, which is a strong contrast to some of the shady behavior you'll see from people dancing in the gray areas of the law.
That was probably a stepping stone to partnering with other organizations, which has snowballed into having the cooperation of the FBI, as well as the endorsement of multiple countries' governments.
The service implementation that I did with a bit different technical requirement is here https://github.com/janos/compromised as an alternative. It is actively used behind the NewReleases.io service.
It focuses on extremely low memory usage and supporting very high request rates on a commodity hardware, cheap vps or cloud instances.
Would it make more sense to break the NTLM hashes and then to rehash with something more secure (even a better SHA, like SHA256)
This is not quite as feasible for SHA1 (but it actually might be, even in bulk -- this was 9 years ago[0]!) as for NTLM, but I remember cracking NTLM hashes in bulk back in the late 90's on .3 Ghz servers, and I'm sure it would take a heartbeat to do it today.
0. https://arstechnica.com/information-technology/2012/12/oh-gr...
Fwiw, sha1, 256 or even md5 have similar levels of security when it comes to password hashing. The security properties you want for password hashing are very different than normal hashing.
If you're looking for preimage resistance, unless your passwords contain more than 128 bits of entropy, I suspect bruit forcing your password is still faster than a preimage attack on SHA-1, and will probably remain so for at least a decade. Collision attacks aren't useful for passwords (attacker chooses two passwords such that they have the same hash... I can't imagine a threat model under which this is useful to the attacker if that hash doesn't match any target's password hash. Maybe there is such a threat model, but it has to be a very outside-the-box attack.)
If you're worried about effort needed to bruit-force the password, use Argon2 or another memory-hard password hash/KDF.
PS: thanks for years of "Jon loves Community"
Is it safe if I simply add 2 factor authentication(edit: change password of course also) or do I need to add something else?
I'm shell shocked and now have a chemical dependency on locking things down. All of my machines now use ssh keys+passphrase and I no longer put any unencrypted traffic over LAN. Obviously there is a source of stress in my life.
And as far as RBA goes, if they don't go full-2FA, they'll often somehow go for password instead of second factor to verify. I tend to keep my password manager locked when not in active use, so that's more hassle for me on services that DO use WebAuthn (Github, Google) than if they'd just use WebAuthn for the "high risk action" verification.
Also, how worried you need to be depends on what you use the account for... People go off the deep end about securing every single account like it's Fort Knox, but you need to consider what is at risk if a given account is compromised, and what damage could be done with it.
If the email account itself was compromised, then you should also check any account that you signed up for using that email address, to make sure that you still have access (because if someone had access to your email, they could have used it to reset the password on those other sites).
HIBP links to this article which shows the history of the term before any of these games: https://www.inverse.com/gaming/pwned-meaning-definition-orig...
The one tangible instance mentioned is the Spice Girls hack — but follow the link to discover they didn't even use pwn, but 0wned!
I tried searching a few pre-00s bbs/usenet archives but could only find a couple of gaming-related instances. [1][2]
It'd be pretty interesting to see some hacking groups usage in the 80-90s. Maybe someone with better access to archives could see some trends?
[1] https://groups.google.com/g/alt.games.everquest/c/GN9tm8Esrw...
[2] https://groups.google.com/g/rec.games.computer.ultima.online...
Unless Y2K comes before 1989 it most certainly did not come from Counter-strike. Pwning something had existed throughout the 1990's hacker culture and likely was in use in the 80's too. There are some of us old enough to remember it being used. It probably stemmed from QWERTY keyboards and o/p being close to one another. "Pwned" is an easy typo from "Owned" and "owned by [some hacker/hacker group]" was always common way to deface hacked websites. It easily predates Counter-strike's release date by at least a decade so it could not have originated from CS.
How about trying to search through all the Phrack articles to find the use of the word "pwn" that doesn't refer to Phrack World News? Spoiler alert: you won't find any usage of "pwn" or "pwned" until well past 2000. If it was so much part of hacker culture you would have seen a reference in the earlier articles, but you don't.
That being said, it probably originated as a typo and that could have happened on multiple occasions.
Hack/phreak BBS culture and leetspeak went mainstream though IRC and video game chat.
Everything old is new again, nothing new under the sun, etc.
I'm waiting for !!1!!!1!11 to make a resurgence.
Nobody ever made that hilarious typo in a shooter before CS, lol
You are the arbiter of truth.