Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation).

#Signalapp doesn't actually delete messages when they're deleted (either manually or by automation).

Scheduled Pinned Locked Moved Uncategorized
signalappfulldisclosureinfoseccybersecurity
16 Posts 13 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • harrysintonen@infosec.exchangeH This user is from outside of this forum
    harrysintonen@infosec.exchangeH This user is from outside of this forum
    harrysintonen@infosec.exchange
    wrote last edited by
    #1

    #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

    This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

    TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

    Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

    #fulldisclosure #infosec #cybersecurity

    christopherkunz@chaos.socialC avuko@infosec.exchangeA semitones@tiny.tilde.websiteS hoare_spitall@mastodon.worldH david_chisnall@infosec.exchangeD 8 Replies Last reply
    1
    0
    • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

      #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

      This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

      TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

      Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

      #fulldisclosure #infosec #cybersecurity

      christopherkunz@chaos.socialC This user is from outside of this forum
      christopherkunz@chaos.socialC This user is from outside of this forum
      christopherkunz@chaos.social
      wrote last edited by
      #2

      @harrysintonen You have played Leisure Suit Larry, I can tell.

      christopherkunz@chaos.socialC 1 Reply Last reply
      0
      • christopherkunz@chaos.socialC christopherkunz@chaos.social

        @harrysintonen You have played Leisure Suit Larry, I can tell.

        christopherkunz@chaos.socialC This user is from outside of this forum
        christopherkunz@chaos.socialC This user is from outside of this forum
        christopherkunz@chaos.social
        wrote last edited by
        #3

        @harrysintonen

        Link Preview Image
        1 Reply Last reply
        0
        • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

          #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

          This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

          TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

          Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

          #fulldisclosure #infosec #cybersecurity

          avuko@infosec.exchangeA This user is from outside of this forum
          avuko@infosec.exchangeA This user is from outside of this forum
          avuko@infosec.exchange
          wrote last edited by
          #4

          @harrysintonen and why exactly has this seemingly low-hanging fruit been hanging there for (if I remember an earlier post correctly) 6 months?

          Not a (Signal) app developer, but this fix doesn’t sound like an impactful change to me.

          Also, this reminds me strongly of the previously reported Apple Notification issue. I don’t think problems with on-disk retention of (deleted) messages could have possibly dropped of the radar.

          ajn142@infosec.exchangeA 1 Reply Last reply
          0
          • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

            #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

            This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

            TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

            Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

            #fulldisclosure #infosec #cybersecurity

            semitones@tiny.tilde.websiteS This user is from outside of this forum
            semitones@tiny.tilde.websiteS This user is from outside of this forum
            semitones@tiny.tilde.website
            wrote last edited by
            #5

            @harrysintonen are the deleted messages encrypted?

            1 Reply Last reply
            0
            • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

              #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

              This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

              TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

              Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

              #fulldisclosure #infosec #cybersecurity

              hoare_spitall@mastodon.worldH This user is from outside of this forum
              hoare_spitall@mastodon.worldH This user is from outside of this forum
              hoare_spitall@mastodon.world
              wrote last edited by
              #6

              @harrysintonen This is one of the primary reasons I use Threema, despite so many people who claim to know better recommending Signal.

              1 Reply Last reply
              0
              • avuko@infosec.exchangeA avuko@infosec.exchange

                @harrysintonen and why exactly has this seemingly low-hanging fruit been hanging there for (if I remember an earlier post correctly) 6 months?

                Not a (Signal) app developer, but this fix doesn’t sound like an impactful change to me.

                Also, this reminds me strongly of the previously reported Apple Notification issue. I don’t think problems with on-disk retention of (deleted) messages could have possibly dropped of the radar.

                ajn142@infosec.exchangeA This user is from outside of this forum
                ajn142@infosec.exchangeA This user is from outside of this forum
                ajn142@infosec.exchange
                wrote last edited by
                #7

                @avuko @harrysintonen this sounds to me like the issue Naomi Wu brought up ages ago about Signal and keyboard leakage, where Signal’s approach may be secure in the vacuum of their intended app behavior, but isn’t in the context of everything going on around the app.

                avuko@infosec.exchangeA 1 Reply Last reply
                0
                • ajn142@infosec.exchangeA ajn142@infosec.exchange

                  @avuko @harrysintonen this sounds to me like the issue Naomi Wu brought up ages ago about Signal and keyboard leakage, where Signal’s approach may be secure in the vacuum of their intended app behavior, but isn’t in the context of everything going on around the app.

                  avuko@infosec.exchangeA This user is from outside of this forum
                  avuko@infosec.exchangeA This user is from outside of this forum
                  avuko@infosec.exchange
                  wrote last edited by
                  #8

                  @ajn142 @harrysintonen

                  Had to look that one up, thanks for the reference.

                  With notifications and keyboards, one could argue about the span of control (and responsibility). With app native storage, the control and responsibility seems to me to be squarely with Signal in this case.

                  PS/FS: I haven’t and won’t verify this issue and/or PoC. Those days are long past for me.

                  1 Reply Last reply
                  0
                  • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

                    #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

                    This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

                    TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

                    Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

                    #fulldisclosure #infosec #cybersecurity

                    david_chisnall@infosec.exchangeD This user is from outside of this forum
                    david_chisnall@infosec.exchangeD This user is from outside of this forum
                    david_chisnall@infosec.exchange
                    wrote last edited by
                    #9

                    @harrysintonen I'd have a different recommendation for the vendor: Stop trying to pretend disappearing messages are a thing.

                    Signal has backups. Revocation from old backups is a very hard problem that they don't even try to store.

                    With the old backup model, each day got a completely new snapshot of all messages and media. If any participant in a chat has backups turned on and doesn't clean out their old backups, disappearing messages are recoverable at an arbitrary point in the future.

                    The newer backup is similar, each day generates a new snapshot of all messages, it's just that they reference media that are backed up separately.

                    And that's assuming everyone is using the official client. But any user using a different client may simply choose not to delete them.

                    I have one chat where I set deleting messages to try to encourage people to write discussions up elsewhere, I wouldn't use it as a security or privacy feature and I think it's quite misleading that Signal pretends that it is either.

                    groxx@hachyderm.ioG 1 Reply Last reply
                    0
                    • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                      @harrysintonen I'd have a different recommendation for the vendor: Stop trying to pretend disappearing messages are a thing.

                      Signal has backups. Revocation from old backups is a very hard problem that they don't even try to store.

                      With the old backup model, each day got a completely new snapshot of all messages and media. If any participant in a chat has backups turned on and doesn't clean out their old backups, disappearing messages are recoverable at an arbitrary point in the future.

                      The newer backup is similar, each day generates a new snapshot of all messages, it's just that they reference media that are backed up separately.

                      And that's assuming everyone is using the official client. But any user using a different client may simply choose not to delete them.

                      I have one chat where I set deleting messages to try to encourage people to write discussions up elsewhere, I wouldn't use it as a security or privacy feature and I think it's quite misleading that Signal pretends that it is either.

                      groxx@hachyderm.ioG This user is from outside of this forum
                      groxx@hachyderm.ioG This user is from outside of this forum
                      groxx@hachyderm.io
                      wrote last edited by
                      #10

                      @david_chisnall @harrysintonen while obviously true in the sense of "you cannot control information that leaves your hands", there are other purposes for deleting messages, like "protect myself/others if my hardware is stolen". in that kind of scenario you *do* control the data you care about, and choose the app.

                      I do wish it was presented differently though. it's practically a fad at this point, with loads of deeply misleading implementations, and misconceptions from one source get carried over to others 😕

                      1 Reply Last reply
                      0
                      • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

                        #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

                        This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

                        TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

                        Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

                        #fulldisclosure #infosec #cybersecurity

                        tychotithonus@infosec.exchangeT This user is from outside of this forum
                        tychotithonus@infosec.exchangeT This user is from outside of this forum
                        tychotithonus@infosec.exchange
                        wrote last edited by
                        #11

                        @harrysintonen To confirm ... only validated affected setup so far is Signal Desktop on macOS?

                        ohmu@social.seattle.wa.usO 1 Reply Last reply
                        0
                        • tychotithonus@infosec.exchangeT tychotithonus@infosec.exchange

                          @harrysintonen To confirm ... only validated affected setup so far is Signal Desktop on macOS?

                          ohmu@social.seattle.wa.usO This user is from outside of this forum
                          ohmu@social.seattle.wa.usO This user is from outside of this forum
                          ohmu@social.seattle.wa.us
                          wrote last edited by
                          #12

                          @tychotithonus @harrysintonen
                          Seconded. This sort of thing is not surprising to me given Apple's and MS's design philosophy. Is this also the case on Android and Linux?

                          And it occurs to me a feature I wish Signal already had was something reporting whether the other person I am corresponding with is using actual Signal and whether they are backing up messages.

                          It's been hard to miss that many prosecutions mention Signal messages recovered from the other end of the person's conversations.

                          1 Reply Last reply
                          0
                          • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

                            #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

                            This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

                            TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

                            Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

                            #fulldisclosure #infosec #cybersecurity

                            feld@friedcheese.usF This user is from outside of this forum
                            feld@friedcheese.usF This user is from outside of this forum
                            feld@friedcheese.us
                            wrote last edited by
                            #13
                            @harrysintonen

                            > This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

                            > TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

                            But this is the main selling point of Signal's Perfect Forward Secrecy that everyone says is so important and nobody should use a messenger without it...

                            PFS isn't really about security in the normal sense, it's about the data transmitted being ephemeral and irrecoverable through cryptographic guarantees. That's why DeltaChat's upcoming implementation will not use the PFS terminology but will be called "reliable deletion".

                            So now we have another case of Signal's PFS being broken: first through the iOS notification database not being cleared properly, now through MacOS not actually removing the deleted messages from the database.

                            I think people need to stop trusting Signal's word and start demanding detailed proof that their security promises hold up on every platform.
                            plaka@infosec.exchangeP 1 Reply Last reply
                            0
                            • feld@friedcheese.usF feld@friedcheese.us
                              @harrysintonen

                              > This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

                              > TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

                              But this is the main selling point of Signal's Perfect Forward Secrecy that everyone says is so important and nobody should use a messenger without it...

                              PFS isn't really about security in the normal sense, it's about the data transmitted being ephemeral and irrecoverable through cryptographic guarantees. That's why DeltaChat's upcoming implementation will not use the PFS terminology but will be called "reliable deletion".

                              So now we have another case of Signal's PFS being broken: first through the iOS notification database not being cleared properly, now through MacOS not actually removing the deleted messages from the database.

                              I think people need to stop trusting Signal's word and start demanding detailed proof that their security promises hold up on every platform.
                              plaka@infosec.exchangeP This user is from outside of this forum
                              plaka@infosec.exchangeP This user is from outside of this forum
                              plaka@infosec.exchange
                              wrote last edited by
                              #14

                              @feld @harrysintonen The bug with notification db was an Apple problem not Signal

                              feld@friedcheese.usF 1 Reply Last reply
                              0
                              • plaka@infosec.exchangeP plaka@infosec.exchange

                                @feld @harrysintonen The bug with notification db was an Apple problem not Signal

                                feld@friedcheese.usF This user is from outside of this forum
                                feld@friedcheese.usF This user is from outside of this forum
                                feld@friedcheese.us
                                wrote last edited by
                                #15
                                @plaka @harrysintonen no, it's a Signal problem because they exposed the message data to iOS notifications. This is a choice they willingly made and they did not verify how that information was handled.

                                You can have notifications without exposing this data. That's literally why the workaround was "turn off name and message content in notifications", which should be the only way it works in the first place.
                                1 Reply Last reply
                                0
                                • harrysintonen@infosec.exchangeH harrysintonen@infosec.exchange

                                  #Signalapp doesn't actually delete messages when they're deleted (either manually or by automation). The message deletion is written to Write-ahead Log, and the data is only truly deleted once Signal is restarted or threshold of 1000 pages is reached. For macOS Signal application, extra complication arises from the fact that the signal message database can be backed up before the database consolidation occurs. Large amount of the supposedly already deleted messages could be recovered from the device or backups.

                                  This concerns use cases where deleting messages actually getting removed in timely manner is of high importance and recovery of the deleted messages could lead to grave consequences.

                                  TL;DR: If you don't care about deleted messages being actually deleted you don't need to worry.

                                  Full advisory at: https://sintonen.fi/advisories/signal-deleted-but-not-forgotten.txt

                                  #fulldisclosure #infosec #cybersecurity

                                  rckenned@hachyderm.ioR This user is from outside of this forum
                                  rckenned@hachyderm.ioR This user is from outside of this forum
                                  rckenned@hachyderm.io
                                  wrote last edited by
                                  #16

                                  @harrysintonen I’m curious, even when the WAL is synced to the data file (i.e. after restarting the app), is it possible that the deleted row data is still present in the data file as unreclaimed space?

                                  It would be difficult/impossible to reach via SQLite CLI, but the bytes could still be present and available to anyone able to decrypt and read the raw file.

                                  DuckDB on CHECKPOINT will apply the WAL to the data file and delete the WAL (similar to what it sounds like SQLite does on restart). But the newly unused space in the data file isn’t guaranteed to be reclaimed immediately, leaving open the possibility of recovery.

                                  1 Reply Last reply
                                  0
                                  • R relay@relay.mycrowd.ca shared this topic
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes


                                  • Login

                                  • Login or register to search.
                                  • First post
                                    Last post
                                  0
                                  • Categories
                                  • Recent
                                  • Tags
                                  • Popular
                                  • World
                                  • Users
                                  • Groups