Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/Nheko-Reborn/nheko.git. Pull mirroring updated .
  1. Sep 28, 2022
    • Nicolas Werner's avatar
      Prevent the homeserver from inserting malicious secrets · 67bee15a
      Nicolas Werner authored
      Correctly verify that the reply to a secrets request is actually coming
      from a verified device. While we did verify that it was us who replied,
      we didn't properly cancel storing the secret if the sending device was
      one of ours but was maliciously inserted by the homeserver and
      unverified. We only send secret requests to verified devices in the
      first place, so only the homeserver could abuse this issue.
      
      Additionally we protected against malicious secret poisoning by
      verifying that the secret is actually the reply to a request. This means
      the server only has 2 places where it can poison the secrets:
      
      - After a verification when we automatically request the secrets
      - When the user manually hits the request button
      
      It also needs to prevent other secret answers to reach the client first
      since we ignore all replies after that one.
      
      The impact of this might be quite severe. It could allow the server to
      replace the cross-signing keys silently and while we might not trust
      that key, we possibly could trust it in the future if we rely on the
      stored secret. Similarly this could potentially be abused to make the
      client trust a malicious online key backup.
      
      If your deployment is not patched yet and you don't control your
      homeserver, you can protect against this by simply not doing any
      verifications of your own devices and not pressing the request button in
      the settings menu.
      Verified
      67bee15a
  2. Sep 25, 2022
  3. Jul 30, 2022
  4. Jul 29, 2022
  5. Jul 22, 2022
  6. Jun 19, 2022
  7. Jun 18, 2022
  8. Jun 17, 2022
  9. Jun 15, 2022
  10. Jun 12, 2022
  11. May 10, 2022
  12. Apr 07, 2022
  13. Feb 27, 2022
  14. Feb 14, 2022
  15. Jan 01, 2022
  16. Dec 29, 2021
  17. Dec 28, 2021
  18. Dec 11, 2021
  19. Nov 21, 2021
  20. Nov 10, 2021
  21. Nov 08, 2021
  22. Nov 07, 2021
  23. Nov 04, 2021
  24. Nov 01, 2021
  25. Oct 29, 2021
  26. Oct 17, 2021
Loading