Discussion
Loading...

Post

Log in
  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Soatok Dreamseeker
Soatok Dreamseeker
@soatok@furry.engineer  ·  activity timestamp 15 hours ago

https://soatok.blog/2026/02/17/cryptographic-issues-in-matrixs-rust-library-vodozemac/

#Matrix #infosec #vulnerabiltiy #cryptography #privacy

Dhole Moments

Cryptographic Issues in Matrix’s Rust Library Vodozemac

Two years ago, I glanced at Matrix’s Olm library and immediately found several side-channel vulnerabilities. After dragging their feet for 90 days, they ended up not bothering to fix any of i…
  • Copy link
  • Flag this post
  • Block
Senil
Senil
@senil@gts.social.senil.me  ·  activity timestamp 13 hours ago

@soatok oh my god that really is a 10/10 on the stupidity scale for a vuln.

lol. lmao even. this is ridiculous. HOW.

(I mean I know how, they don't care as much as they want folks to believe they do, but STILL)

  • Copy link
  • Flag this comment
  • Block
Soatok Dreamseeker
Soatok Dreamseeker
@soatok@furry.engineer  ·  activity timestamp 13 hours ago

I want to include this excerpt from the Matrix response:

Your PoC correctly demonstrates that the Olm 3DH implementation in vodozemac does not currently perform the all-zero DH output check. As we're sure you're aware, the check for contributory behaviour in X25519 is a contentious topic among cryptographers, with some calling for it, but others like RFC 7748[1] calling it optional or even arguing against it (e.g. Trevor Perrin[2]). We've previously considered adding it but ultimately avoided it due to the conclusion that there's no practical security impact on Matrix. In other places like SAS/ECIES we explicitly reject non-contributory outputs because those handshakes can be used in unauthenticated contexts where an all-zero DH output could directly collapse channel security.

The [2] points to https://moderncrypto.org/mail-archive/curves/2017/000896.html

Which is talking about the Diffie-Hellman primitive, not what protocols building atop ECDH should do.

[curves] X25519 and zero outputs

  • Copy link
  • Flag this comment
  • Block
Risotto Bias
Risotto Bias
@risottobias@toot.risottobias.org  ·  activity timestamp 14 hours ago

@soatok if I read this right... a server / home hub in matrix could MITM users,

and possibly(?) a malicious group client could MITM the group?

  • Copy link
  • Flag this comment
  • Block
Soatok Dreamseeker
Soatok Dreamseeker
@soatok@furry.engineer  ·  activity timestamp 14 hours ago

@risottobias There's an Ed25519 in the middle of the end-to-end protocol that mitigate the MITM, but the identity element can leak the group key to the server lol

  • Copy link
  • Flag this comment
  • Block
Risotto Bias
Risotto Bias
@risottobias@toot.risottobias.org  ·  activity timestamp 14 hours ago

@soatok so I can read the juicy, spicy data in a private group. neat.

  • Copy link
  • Flag this comment
  • Block
Talya (she/her) 🏳️‍⚧️✡️
Talya (she/her) 🏳️‍⚧️✡️
@Yuvalne@433.world  ·  activity timestamp 15 hours ago

@soatok blobcatpopcorn

  • Copy link
  • Flag this comment
  • Block
Talya (she/her) 🏳️‍⚧️✡️
Talya (she/her) 🏳️‍⚧️✡️
@Yuvalne@433.world  ·  activity timestamp 14 hours ago

@soatok omg you didn't! (/amused)

Closing Thoughts

The silver lining to the worst issue I’ve disclosed here is we finally have a solution for “Unable to decrypt message”: Just set your public key to zero.

[Soatok the dhole looking smug]
Art: valery91thunder
Closing Thoughts The silver lining to the worst issue I’ve disclosed here is we finally have a solution for “Unable to decrypt message”: Just set your public key to zero. [Soatok the dhole looking smug] Art: valery91thunder
Closing Thoughts The silver lining to the worst issue I’ve disclosed here is we finally have a solution for “Unable to decrypt message”: Just set your public key to zero. [Soatok the dhole looking smug] Art: valery91thunder
  • Copy link
  • Flag this comment
  • Block

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.2-alpha.29 no JS en
Automatic federation enabled
Log in
  • Explore
  • About
  • Members
  • Code of Conduct