Bug #21336
closedEncryption key can be recalculated when using normal mailform when [FE][strictFormmail] == 0
0%
Description
These settings required for being exploitable:
['TYPO3_CONF_VARS']['FE']['secureFormmail'] 0
['TYPO3_CONF_VARS']['FE']['strictFormmail'] 0
Reported by Stefan Schuler.
Security Team OTRS reference: 2009021010000086
(issue imported from #M12310)
Updated by Ernesto Baschny about 15 years ago
Commited to:
trunk (rev.6255 = beta2)
TYPO3_4-2 (rev.6256 = 4.2.10)
TYPO3_4-1 (rev.6257 = 4.1.11)
Updated by Helmut Hummel over 14 years ago
Comments from Philippe Oechslin: ======================================================
Ok, I was looking at 4.3.1 but missed that sha1. But still:
- the ascii cleartext is xored with hex digits of the key, making only
16 possible ciphertexts for each character. For example, if the
cleartext is made only of 'a', '.' and '', you can decode it right
' doesn't overlap with any alphanumerical
away, as the 16 possible encodings of these three characters never
overlap. Actually the '
character.
- the $key, even though it is a sha1 of the encryption key, is the same
for all encodings. If you know one cleartext that is long enough you can
decode other ciphertexts. It would be good to have something like
$key = sha1($this->TYPO3_CONF_VARS['SYS']['encryptionKey'] .':'. $string);
or even make that
$key = sha1($this->TYPO3_CONF_VARS['SYS']['encryptionKey'] .
':RoundTripKey:'. $string);
so that you can easily derive different keys for other purposes.