One of the hackers suspected of being behind the TalkTalk breach, which led to the personal details of at least 150,000 people being stolen, used a vulnerability discovered two years before he was even born.
That method of attack was SQL injection (SQLi), where hackers typically enter malicious commands into forms on a website to make it churn out juicy bits of data. It's been used to steal the personal details of World Health Organization employees, grab data from the Wall Street Journal, and hit the sites of US federal agencies.
"It's the most easy way to hack," the pseudonymous hacker w0rm, who was responsible for the Wall Street Journal hack, told Motherboard. The attack took only a "few hours."
But, for all its simplicity, as well as its effectiveness at siphoning the digital innards of corporations and governments alike, SQLi is relatively easy to defend against.
(Score: 3, Interesting) by darkfeline on Saturday November 28 2015, @04:16AM
SQL injections are a solved problem. It's been completely solved. It's like the smallpox of server vulnerabilities.
Yet so long as idiots exist, SQL injections will exist, and I don't need to tell you the ETA for solving the former problem.
SQL injection variants exist in all sorts of places, where strings don't get properly escaped. One particularly unfunny variant is when backslashes in passwords during registration and login receive different escaping rules; I no longer use special characters in passwords.
Join the SDF Public Access UNIX System today!
(Score: 0, Disagree) by Anonymous Coward on Saturday November 28 2015, @05:25AM
Your comment suggests that you save the password in plain text, which is a big no-no. Fix that problem (e.g. save a salted hash of the password), you will fix the problem with special characters. In principal you would also not need to further escape the password any more.
(Score: 1, Informative) by Anonymous Coward on Saturday November 28 2015, @05:15PM
GP did not say it was their website that failed in that way.
I had the exact problem described with Ekiga.net.
I tired to contact the maintainer about it, (even sent a french e-mail), but never got a satisfactory response.
After that, and hearing only the latest bleeding edge version was supported, I lost my interest in Ekiga.
(Score: 2) by darkfeline on Sunday November 29 2015, @01:14AM
>Your comment suggests that you save the password in plain text, which is a big no-no.
It's not my server obviously, and no, it does not imply plain text password storage.
Simplified example:
Registration:
password = to_string(args['password']) # One escape
# lots of stuff, strength checking
password = to_string(password) # Two escape
store(hash(password))
Login:
password = to_string(args['password']) # One escape
check(hash(password))
Join the SDF Public Access UNIX System today!