-
-
Notifications
You must be signed in to change notification settings - Fork 180
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
Allow to disable sending unneeded user data to the server #3582
Comments
Great minds think alike! So the commit above is just a start.
I am running with |
I didn't know this variable. I found the OBFUSCATE variable for debug logs, but it seems only to obfuscate machine info but not user info. Trying to find stuff I returned From the security point of view negotiation what to send could also allow downgrade attacks. Let's say an empty hostname is sent when the server is newer than version X, then a malicious server could pretend to be an older version (or the user could just install some older version) to get more client information. |
It was just added in the commit above.
No, that's extremely unlikely. The worst that can happen is that the server may reject the connection if it cannot proceed without it somehow.
That's not how it is going to work: in all the cases relevant to this ticket, what is going to be exposed will be decided exclusively by the client or server, without knowledge of the peer's version or requirements. |
(still requires XPRA_FULL_INFO=0 for now)
Following the commits above, things are a lot better - though one still needs to run with To see the capabilities exchanged between server and client, run both with: Still TODO:
|
XPRA_FULL_INFO is now an integer, 0 means minimal data 1 is the default 2 includes everything we have available
Now with fine grained filtering: 2a5e368 This will do. |
What about adding a commandline/config option for this? |
Not at present. There are too many options as it is! |
It seems that the username is still transmitted.
where USERNAME is the username on the client PC. The log fragment looks like a line before was removed, but the actual line containing the username is still present (and obviously the client transmitted the username). I'm using |
The username is used for authentication purposes. |
Can it be disabled when the authentication is done via ssh? The server could reject connections that do not provide a username if an additional method is configured. I would even assume it would be more useful to use the remote-username, like
tries to authenticate as |
|
I think the bug is the following:
I wonder if the effective username on the remote host can't be determined after the ssh login, no matter if it was using the python implementation or a system ssh program. |
All of those are also available with paramiko. |
I think I started to use system ssh, when I had to connect with a rather complex setup using a jumphost for a network that doesn't have direct access. I am not sure if paramiko supports that. Anyway, when using --ssh, the xpra server doesn't see the correct username when I wonder if a ssh connection should transmit a username at all or rely on reading the effective username from the remote shell instead of having the client transmit what it thinks what the username is. What can happen is that the client causes a wrong log entry.
(By patching the client one can probably skip the step to create a local user. This configuration is just how it happened accidentally on my machine) |
This ticket is closed and will not be worked on, please file a separate ticket and make sure you understand what the log messages mean. |
When connecting to a server, the client sends personal data that is not needed for the connection, like username, realname of the user (as in /etc/passwd) and hostname of the client machine (sent by the client, not determined using rDNS) which is also logged on the server side depending on the log settings.
It would be nice to have a switch to control how much information is sent. Other information that may not be strictly necessary (but are possibly used to determine compatiblity) would be the used Linux distributions and it seemingly different machine ids.
The text was updated successfully, but these errors were encountered: