{"id":13775850,"url":"https://github.com/mrschyte/socksmon","last_synced_at":"2025-05-11T08:34:10.734Z","repository":{"id":66402395,"uuid":"103433198","full_name":"mrschyte/socksmon","owner":"mrschyte","description":"Monitor arbitrary TCP traffic using your HTTP interception proxy of choice","archived":false,"fork":false,"pushed_at":"2017-09-13T18:29:43.000Z","size":4,"stargazers_count":48,"open_issues_count":0,"forks_count":8,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-11-17T11:44:38.035Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrschyte.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-09-13T18:00:11.000Z","updated_at":"2021-09-12T06:10:32.000Z","dependencies_parsed_at":"2023-04-01T11:34:50.642Z","dependency_job_id":null,"html_url":"https://github.com/mrschyte/socksmon","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrschyte%2Fsocksmon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrschyte%2Fsocksmon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrschyte%2Fsocksmon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrschyte%2Fsocksmon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrschyte","download_url":"https://codeload.github.com/mrschyte/socksmon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253540462,"owners_count":21924522,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T17:01:52.477Z","updated_at":"2025-05-11T08:34:10.485Z","avatar_url":"https://github.com/mrschyte.png","language":"Python","funding_links":[],"categories":["Python","\u003ca id=\"d03d494700077f6a65092985c06bf8e8\"\u003e\u003c/a\u003e工具","\u003ca id=\"0f1ed20665c333e6230506e95b893575\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"57b8e953d394bbed52df2a6976d98dfa\"\u003e\u003c/a\u003eSocks","\u003ca id=\"285c52a4e04dd2f86646c8e1235c9332\"\u003e\u003c/a\u003e工具"],"readme":"# socksmon\nMonitor arbitrary TCP traffic using your HTTP interception proxy of choice\n\n## What is socksmon?\nsocksmon is a SOCKSv4 server based on Twisted, that tunnels incoming\nTCP traffic through an HTTP proxy. socksmon does this by starting an\ninternal webserver on port 2357, posts the traffic to using the man in\nthe middle proxy for editing it and then it forward it to the\ndestination.\n\nsocksmon has preliminary support for SSL interception, meaning\narbitrary ssl encrypted tcp traffic can be analyzed using your\ninterception proxy of choice.\n\n## How do I use it?\nFirst you need to create a certificate you would like to use with\nsocksmon in PEM format and put it under `/tmp/server.pem`. If you use\nBURP, export the private key and the certificate and then concatenate\nthem together. (e.g. `cat server.crt server.key \u003e /tmp/server.pem`)\n\nSecond, start your interception proxy with port 8080 on localhost.\n\nThird, send SOCKSv4 traffic to `yourip:9050`. Be sure to use SOCKSv4,\nSOCKSv5 won't work due to the Twisted SOCKS server implementation. For\nredirecting traffic I recommend Proxifier[1] under Windows and\nRedsocks[2] or Proxychains[3] under Linux.\n\n## Todo\n\nPatches / PRs are welcome.\n\n### Better SSL certificate generation\nCurrently no certificates are generated for specific endpoints,\ne.g. the specified key is used directly for all sites. This is\nproblematic with clients that check the common name or the revocation\nlist in the certificate.\n\n### Upstream proxy support\nUpstream proxies should be supported for all traffic. HTTP should get\nspecial treatment, so proxies that disallow CONNECT can be used as\nwell.\n\n### Command line options\nCommand line options should be used to set the proxy port,\ncertificates and webserver ports.\n\n### Modular traffic modification framework\nImplement a modular framework that allows processing of TCP\ntraffic. It should be easy to implement decoders and re-encoders for\ndifferent protocols and formats (e.g. deserialize Java object to XML).\n\n[1]: https://www.proxifier.com/\n[2]: https://github.com/darkk/redsocks\n[3]: http://proxychains.sourceforge.net/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrschyte%2Fsocksmon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrschyte%2Fsocksmon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrschyte%2Fsocksmon/lists"}