conversations-classic/src
Daniel Gultsch 09f6343ced
Security: Introduce backup file format v2
This switches the SQL based backup format to something JSON based.

The SQL based format has always been prone to SQL injections that, for example, could delete other messages or preexisting accounts in the app. This hasn’t been a concern this far because why would anyone purposely try to restore a faulty backup? However the argument has been made that a user can be socially engineered to restore an exploited backup file.
Before version 2.12.8 a third party app could even trigger the restore process, leaving the backup password entry dialog the only hurdle.
On top of that it has been demonstrated that a backup file can be crafted in a way that puts preexisting credentials into a 'pending' message to an attacker ultimately leading to that information being leaked.

While destorying information has always been deemed an acceptable risk, leaking information is one step too far.

Starting with Conversations 2.12.9 Conversations will no longer be able to read v1 backup files. This means if you are restoring on a new device and you have a v1 backup file you must first install Conversations <= 2.12.8, restore the backup, and then upgrade to Conversations >= 2.12.9.

ceb2txt¹ has support for v2 backup files. Conceivably ceb2txt could be extended to convert between v1 and v2 file formats. (ceb2txt already recreates the database from v1 files; It is relatively straight forward to create v2 files from that database. Pull requests welcome.)

¹: https://github.com/iNPUTmice/ceb2txt/
2023-08-17 12:07:51 +02:00
..
conversations Security: Introduce backup file format v2 2023-08-17 12:07:51 +02:00
conversationsFree/java/eu/siacs/conversations/utils use installreferrer libray instead of broadcast listener 2020-01-11 11:08:09 +01:00
conversationsPlaystore/java/eu/siacs/conversations/utils validate install referrer beforing accepting it as xmpp uri 2020-06-18 10:15:51 +02:00
free/java/eu/siacs/conversations/services bump appcompat, migrate to emoji2 and get rid of emoji flavor 2022-02-23 10:37:03 +01:00
main Security: Introduce backup file format v2 2023-08-17 12:07:51 +02:00
playstore use custom libwebrtc (m104) for playstore release 2022-08-22 11:17:30 +02:00
quicksy Translated using Weblate (Ukrainian) 2023-08-04 05:53:03 +00:00
quicksyFree/java/eu/siacs/conversations/utils automatically receive Quicksy SMS. fixes #3962 2021-01-19 15:45:43 +01:00
quicksyPlaystore/java/eu/siacs/conversations/utils automatically receive Quicksy SMS. fixes #3962 2021-01-19 15:45:43 +01:00