{"id":20292469,"url":"https://github.com/mauricelambert/asyncremoteshell","last_synced_at":"2026-02-08T17:06:29.611Z","repository":{"id":57412273,"uuid":"315042931","full_name":"mauricelambert/AsyncRemoteShell","owner":"mauricelambert","description":"This python 3 package implement 4 tools for asynchronous remote commands.","archived":false,"fork":false,"pushed_at":"2021-04-14T17:44:56.000Z","size":78,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-25T07:41:36.551Z","etag":null,"topics":["async","asynchronous","asynchronous-programming","asyncio","console","pypi","pypi-package","pypi-packages","python-3","python3","remoteshell"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mauricelambert.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-11-22T13:22:54.000Z","updated_at":"2024-08-12T20:07:51.000Z","dependencies_parsed_at":"2022-08-27T23:51:01.688Z","dependency_job_id":null,"html_url":"https://github.com/mauricelambert/AsyncRemoteShell","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mauricelambert%2FAsyncRemoteShell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mauricelambert%2FAsyncRemoteShell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mauricelambert%2FAsyncRemoteShell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mauricelambert%2FAsyncRemoteShell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mauricelambert","download_url":"https://codeload.github.com/mauricelambert/AsyncRemoteShell/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248382126,"owners_count":21094541,"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":["async","asynchronous","asynchronous-programming","asyncio","console","pypi","pypi-package","pypi-packages","python-3","python3","remoteshell"],"created_at":"2024-11-14T15:17:24.189Z","updated_at":"2026-02-08T17:06:29.564Z","avatar_url":"https://github.com/mauricelambert.png","language":"Python","readme":"# AsyncRemoteShell\r\n\r\n## Description\r\nThis package implement 4 tools for asynchronous remote commands :\r\n- ReverseShellClient\r\n- ReverseShellServer\r\n- ShellClient\r\n- ShellServer\r\n\r\n## Requirements\r\nThis package require :\r\n- python3\r\n- python3 Standard Library\r\n\r\n## Installation\r\n\r\n```bash\r\npip install AsyncRemoteShell\r\n```\r\n\r\n## Usages\r\n\r\n### Commands\r\n\r\n#### ReverseShell\r\n\r\n```bash\r\nReverseShellClient\r\nReverseShellClient --interface=127.0.0.1 --port=45678\r\nReverseShellServer\r\nReverseShellServer -i=localhost -p=45678\r\n```\r\n\r\n#### Shell\r\n\r\n```bash\r\nShellClient\r\nShellClient -i=10.0.0.2 --port=56789\r\nShellServer\r\nShellServer --interface= -p=56789\r\n```\r\n\r\n### Python package commands\r\n\r\n```bash\r\npython3 -m AsyncRemoteShell ShellServer\r\npython3 -m AsyncRemoteShell ShellClient\r\n\r\npython3 -m AsyncRemoteShell ShellServer -i=localhost -p=3456\r\npython3 -m AsyncRemoteShell ShellClient --interface=localhost --port=3456\r\n\r\npython3 -m AsyncRemoteShell.ShellServer\r\npython3 -m AsyncRemoteShell.ShellClient\r\n\r\npython3 -m AsyncRemoteShell.ShellServer --interface=localhost --port=3456\r\npython3 -m AsyncRemoteShell.ShellClient -i=localhost -p=3456\r\n\r\npython3 -m AsyncRemoteShell ReverseShellServer\r\npython3 -m AsyncRemoteShell ReverseShellClient\r\n\r\npython3 -m AsyncRemoteShell ReverseShellServer -i=localhost -p=3456\r\npython3 -m AsyncRemoteShell ReverseShellClient --interface=localhost --port=3456\r\n\r\npython3 -m AsyncRemoteShell.ReverseShellServer\r\npython3 -m AsyncRemoteShell.ReverseShellClient\r\n\r\npython3 -m AsyncRemoteShell.ReverseShellServer --interface=localhost --port=3456\r\npython3 -m AsyncRemoteShell.ReverseShellClient -i=localhost -p=3456\r\n```\r\n\r\n### Python executable\r\n\r\nSame commands than python package `python3 -m AsyncRemoteShell \u003cMODULE\u003e [OPTIONS]`.\r\n\r\n```bash\r\npython3 AsyncRemoteShell.pyz ShellServer\r\n\r\nchmod u+x AsyncRemoteShell.pyz\r\n./AsyncRemoteShell.pyz ShellClient -i=localhost --port=45678\r\n```\r\n\r\n### Python3\r\n\r\n#### ReverseShell\r\n\r\nClient:\r\n```python\r\nfrom AsyncRemoteShell import ReverseShellClient\r\nimport asyncore\r\nReverseShellClient(\"10.0.0.2\", 45678) # host and port is required\r\nasyncore.loop()\r\n```\r\n\r\nServer:\r\n```python\r\nfrom AsyncRemoteShell import ReverseShellServer\r\nimport asyncore\r\nReverseShellServer(\"\", 45678) # interface and port is required\r\nasyncore.loop()\r\n```\r\n\r\n#### Shell\r\n\r\nClient:\r\n```python \r\nfrom AsyncRemoteShell import ShellClient\r\nimport asyncore\r\nShellClient(\"10.0.0.2\", 45678) # host and port is required\r\nasyncore.loop()\r\n```\r\n\r\nServer:\r\n```python \r\nfrom AsyncRemoteShell import ShellServer\r\nimport asyncore\r\nShellServer(\"\", 45678) # interface and port is required\r\nasyncore.loop()\r\n```\r\n\r\n## Why Asynchronous Shell\r\n\r\nYou can install this package on Windows and execute this script:\r\n```python\r\nfrom time import perf_counter\r\nfrom os import system\r\nt1 = perf_counter(); system('powershell -c \"Get-PSDrive\" \u0026 netstat \u0026 systeminfo'); t2 = perf_counter()\r\nprint(f\"Execution time : {t2 - t1} s\")\r\n```\r\n\r\nLaunch `ShellServer` with command line and launch `ShellClient -i=localhost -p=45678` and write: `powershell -c \"Get-PSDrive\" \u0026 netstat \u0026 systeminfo`.\r\n\r\nCompare execution time.\r\n\r\n## Links\r\n - [AsyncRemoteShell Github Page](https://github.com/mauricelambert/AsyncRemoteShell)\r\n - [ReverseShellServer Documentation](https://mauricelambert.github.io/info/python/security/AsyncRemoteShell/ReverseShellServer.html)\r\n - [ReverseShellClient Documentation](https://mauricelambert.github.io/info/python/security/AsyncRemoteShell/ReverseShellClient.html)\r\n - [ShellServer Documentation](https://mauricelambert.github.io/info/python/security/AsyncRemoteShell/ShellServer.html)\r\n - [ShellClient Documentation](https://mauricelambert.github.io/info/python/security/AsyncRemoteShell/ShellClient.html)\r\n - [commons Documentation](https://mauricelambert.github.io/info/python/security/AsyncRemoteShell/commons.html)\r\n - [Download as python executable](https://mauricelambert.github.io/info/python/security/AsyncRemoteShell.pyz)\r\n - [Pypi package](https://pypi.org/project/AsyncRemoteShell/)\r\n\r\n## Licence\r\nLicensed under the [GPL, version 3](https://www.gnu.org/licenses/).\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmauricelambert%2Fasyncremoteshell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmauricelambert%2Fasyncremoteshell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmauricelambert%2Fasyncremoteshell/lists"}