Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User Directory leaks Per-room Nicknames and Avatars #5677

Open
matrixbot opened this issue Dec 17, 2023 · 0 comments
Open

User Directory leaks Per-room Nicknames and Avatars #5677

matrixbot opened this issue Dec 17, 2023 · 0 comments

Comments

@matrixbot
Copy link
Collaborator

matrixbot commented Dec 17, 2023

This issue has been migrated from #5677.


Update: October 2021

This issue has been resolved for a homeserver's local users.

We still need to address leaking per-room nicknames and avatars for remote users. This is complicated as we do not have an easy, obvious way to retrieve or keep up-to-date the public profile metadata for remote users.


Description

The User Directory leaks display names and avatars for a user that are sent in only one room.
For example, by manually crafting a m.room.member state event – or recently using the /myroomnick command in Riot/Web, even if the state event is sent in a private room.

Steps to reproduce

  • Using Riot/Web with account @alice:example.org, open a private chat (such as a direct chat with a close friend)
  • Issue the command /myroomnick Freddy, which sends a m.room.member state event into only that room with a custom nickname.
  • From another account, say @bob:example.org, open up the User Search
  • Search for 'Freddy' or 'alice' — @alice:example.org will be listed with the name 'Freddy'
    • Note: this assumes that alice is visible to bob in the user directory – i.e. alice is in a public room known to the homeserver AND/OR alice and bob share a private room together.
  • (Note that Synapse's user_directory table also reflects the change)

Expected Behaviour

alice's original display name should be shown in the user search.

Implications

This has privacy implications – a nickname set in a private room with a close friend may be quite personal and perhaps embarrassing if seen by other users.

Version information

  • Homeserver: librepush.net

If not matrix.org:

  • Version: 1.1.0+bionic1

not really relevant, I suspect:

  • Install method: Debian packages
  • Platform: Ubuntu 18.04 in an LXC container on NixOS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant