QUOTE(okuribito @ Dec 18 2018, 02:13 PM)
Thx bro, saw that & thinking thru the implications. How does CIMB store passwords? As Is? or after hashing?
If after hashing, old passwords longer than 8char
should not be able to get in if just key in first 8 chars. Why? becos the hash would be diff. No? Only way can get in is IF the old password was stored As Is. Wonder if that makes sense

QUOTE(brkli @ Dec 18 2018, 02:29 PM)
no, the code snippet does not prove anything on how they store the password. it only shows thier 'lazy' development to do not want to change backend API, so they convert/translate those inputs (for this case password) as front end.
QUOTE(silverhawk @ Dec 18 2018, 06:18 PM)
This is not necessarily the case. What the Javascript is doing is encrypting the password for transmission. If you read the code, it also does the same thing for username. You might ask.. why? Its to protect against sniffing or mitm attacks. This way even if an attacker sniffs out your traffic, its not obvious what your actual plaintext username/password is. They can still replay the request to get in, but at least they don't know what your actual username/pass is.. which you might be using for other sites as well.
The backend could then just decrypt the value, then run it through a different hash/encryption algorithm to check against the DB.
The stupid thing about CIMB was having a max limit on password length. Even now it doesn't make sense that its limited to 20 chars, if you're encrypting/hashing passwords the max length shouldn't really matter.
silverhawk the encryptedPass = MFPInit.encrypteMY(password) is the encryption u mentioned, right? Curious, isn't that encryption done by the user's browser based on the bank's ssl cert for security during transmission? Based on the fact that pre-18Nov passwords can be used when truncated to 1st 8 characters, I strongly believe they store raw passwords somewhere in their system. If they ONLY store hashes, there's nothing to compare when shortened old passwords are submitted! Did I misunderstand anything?