Attack of the clones: Researcher pwns SecureID token system
But RSA claims it would only work on rootkit-compromised gear
Governments, spies and military goons: Be warned
The research has potentially important implications for the safekeeping of tokens, in particular, and the security of two-factor authentication, in general.
Government agencies, military contractors, and numerous enterprises use the technology to safeguard remote access. In subsequent posts, Fouladi makes it clear that what he has demonstrated is not a complete end-to-end attack. Rather he says the research points towards the need towards using "trusted platform module" (TPM) bindings, which associates the software token with the TPM chip on a target system.
Scrutiny about the security of two-factor authentication in general, and RSA in particular, has grown since a raid on RSA's network that led to the theft of sensitive SecurID-related information in March 2011. Information used in this hack was subsequently used in an unsuccessful attack against Lockheed Martin, the defence contractor has confirmed. RSA offered replacement token or free security monitoring services to reassure key customers in the wake of the incident.
RSA has yet to speak to Fouladi directly but has gone through his research since its publication last Thursday.
Dan Schiappa, senior vice president of identity and data protection group at RSA Security, told El Reg that the attack outlined by Fouladi would only work on a "fully compromised machine" where an attacker has "kernel level" access at which stage that stage "all bets are off", as he put it.
"Fouladi hasn't shown any exploit against SecurID soft tokens – this is an exploit against Windows itself," said Schiappa, adding "he's not connecting all the steps together" so that the attack remains "theoretical".
RSA Security's best practice guidelines for software tokens require user entry of a PIN to protect the key as a additional security measure. Schiappa conceded that this PIN might be captured by a keystroke logger but repeated his assurance that Fouladi's research had not exposed any product bug and that users of RSA authentication technology ought to be safe, especially if they follow its best practice guidelines.
Fouladi told El Reg took issue with this assessment and said that the attack "can be launched remotely and does not require a 'fully compromised machine' as RSA have stated".
"Our aim at SensePost was to demonstrate how easy/hard it would be for an attacker, who has already compromised a system, to extract RSA token secrets and clone them on another machine," he explained. "A number of people commented on the fact that we did not disclose the steps required to update the LSA [Local Security Authority] secrets on the cloned system. Whilst this technique is relatively easy to do, it is not required for this attack to function."
"If a piece of malware was written for this attack, it does NOT have to grab the DPAPI blobs and replicate them on the attacker's machine. It can simply hook into the CryptUnprotectData and steal the decrypted blobs once the RSA software token starts execution. The sole reason I included the steps to replicate the DPAPI on another machine was that this research was performed during a real world assessment, which was time-limited. We chose to demonstrate the attack to the client by replicating the DPAPI blobs instead of developing a proof of concept malcode.
"A real-world malware targeting RSA software tokens would choose the API hooking method or a similar approach to grab the decrypted seed and post it back to the attacker," he concluded.
SensePost's research has implications for the two-factor authentication software tokens on smartphones or tablets, which might actually prove more difficult to crack than their Windows desktop equivalents.
"The 'Token Binding' bypass attack would be successful on these devices, but with a different device serial ID calculation formula," Fouladi explained. "However, the application sandboxing model deployed on most modern smartphone operating systems would make it more difficult for a malicious application deployed on the device to extract the software token's secret seeds.
"Obviously, if an attacker has physical access to a device for a short time, they would be able to extract those secrets. This is in contrast to tamper-proof hardware tokens or smart cards, which by design provide a very good level of protection, even if they are in the hands of an attacker for a long time," he concluded. ®