Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • G GLib
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 874
    • Issues 874
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 55
    • Merge requests 55
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Artifacts
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
    • Model experiments
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOMEGNOME
  • GLib
  • Issues
  • #1989

(CVE-2020-6750) Socks5 Proxy: Proxy on a SocketClient set via set_proxy_resolver ignored

Hi,

GLib Version: 2.62.0

Im seeing in my client that 5 times out of 10 the proxy set via SocketClient.set_proxy_resolver() is simply ignored without any error whatsoever, and SocketClient just connects to the destination address without proxy.

I would consider this a big privacy/security issue.

Maybe someone can try to reproduce this themself

from my application logs it looks like this

23:16:56 INFO    nbxmpp.tcp         Set Proxy: socks5://37.120.155.227:1080
**<Gio.SimpleProxyResolver object at 0x7f77d8bc89b0 (GSimpleProxyResolver at 0x2c8a0d0)>**
23:16:56 INFO    nbxmpp.tcp         Try to connect to 2a03:4000:34:3a4:::5223
23:16:56 INFO    nbxmpp.connection  Set Connection State: TCPState.CONNECTING
<Gio.SocketClient object at 0x7f77d8bc82d0 (GSocketClient at 0x2b666e0)> <enum G_SOCKET_CLIENT_RESOLVING of type Gio.SocketClientEvent> <Gio.InetSocketAddress object at 0x7f77d8bccc30 (GInetSocketAddress at 0x2eec1a0)> None
<Gio.SocketClient object at 0x7f77d8bc82d0 (GSocketClient at 0x2b666e0)> <enum G_SOCKET_CLIENT_RESOLVED of type Gio.SocketClientEvent> <Gio.InetSocketAddress object at 0x7f77d8bbfc30 (GInetSocketAddress at 0x2eec1a0)> None
<Gio.SocketClient object at 0x7f77d8bc82d0 (GSocketClient at 0x2b666e0)> <enum G_SOCKET_CLIENT_CONNECTING of type Gio.SocketClientEvent> <Gio.InetSocketAddress object at 0x7f77d8bbfc30 (GInetSocketAddress at 0x2eec1a0)> <Gio.TcpConnection object at 0x7f77d913ccd0 (GTcpConnection at 0x2c8ad90)>
<Gio.SocketClient object at 0x7f77d8bc82d0 (GSocketClient at 0x2b666e0)> <enum G_SOCKET_CLIENT_RESOLVING of type Gio.SocketClientEvent> <Gio.InetSocketAddress object at 0x7f77d8bbfc30 (GInetSocketAddress at 0x2eec1a0)> None
<Gio.SocketClient object at 0x7f77d8bc82d0 (GSocketClient at 0x2b666e0)> <enum G_SOCKET_CLIENT_CONNECTED of type Gio.SocketClientEvent> <Gio.InetSocketAddress object at 0x7f77d8bbfc30 (GInetSocketAddress at 0x2eec1a0)> <Gio.TcpConnection object at 0x7f77d913ccd0 (GTcpConnection at 0x2c8ad90)>
<Gio.SocketClient object at 0x7f77d8bc82d0 (GSocketClient at 0x2b666e0)> <enum G_SOCKET_CLIENT_COMPLETE of type Gio.SocketClientEvent> <Gio.InetSocketAddress object at 0x7f77d8bbfc30 (GInetSocketAddress at 0x2eec1a0)> <Gio.TcpConnection object at 0x7f77d913ccd0 (GTcpConnection at 0x2c8ad90)>
**True**
**<Gio.SimpleProxyResolver object at 0x7f77d8bc89b0 (GSimpleProxyResolver at 0x2c8a0d0)>**
23:16:56 INFO    nbxmpp.connection  Set Connection State: TCPState.CONNECTED
23:16:56 INFO    nbxmpp.connection  Signal: connected

I made sure that proxy-enabled is set, and made sure the SimpleProxyResolver object is set on the SocketClient, before and after connecting to the server.

I happy to provide more info if needed

Edited Jan 09, 2020 by Michael Catanzaro
Assignee
Assign to
Time tracking