3 ms·
This is a partial fix, but it's not enough. An attacker performing man-in-the-middle attack can respond with the previous version of "version information file",
by dchest 10y ago
This is a partial fix, but it's not enough. An attacker performing man-in-the-middle attack can respond with the previous version of "version information file", preventing the update.
Imagine if there's a vulnerability in one version of KeePass2, and the fix is available for it. MiTM attacker sends the previous version so that the app doesn't know that there's an update, and the attacker has more time to use the vulnerability.
HTTPS prevents this. They should do both.
- deleted 10y ago[deleted]
- SNvD7vEJ 10y agoSo, a MITM would be able to prevent automatic update notifications?
- dchest 10y agoYes.
- sooper 10y agoIt seems not any more?: "Resolution. In order to prevent a man in the middle from making KeePass display incorrect version information (even though this does not imply a successful attack, see above), the version information file is now digitally signed (using RSA-2048 and SHA-512). KeePass 2.34 and higher only accept such a digitally signed version information file. Furthermore, the version information file is now downloaded over HTTPS."
- dchest 10y agoThe question was if MITM would be able to prevent automatic update notifications. Their solution doesn't solve this: it prevents attackers from changing version information, but doesn't prevent them from replaying previous version information.
- SNvD7vEJ 10y agoHow would that work? ("replaying")
- pfg 10y agoUpdate checks are usually implemented as soft-fail, i.e. failing to connect to the update server won't result in a notification, unless it's an active update check performed by the user. HTTPS alone wouldn't fix this scenario, you'd have to either do hard-fail (which could become annoying and cause users to turn off the update check) or have some sort of grace period and only nag after a couple of failed attempts or a certain amount of time, which still leaves users vulnerable for a time.
- cyphar 10y agoTUF[1] would also prevent this (and a whole host more potential attacks against updating). It's what TBB uses and everyone should use. [1]: https://theupdateframework.github.io/ https://theupdateframework.github.io/
- yaur 10y ago> Furthermore, the version information file is now downloaded over HTTPS. It looks like they are