{"id":27642475,"url":"https://github.com/p0dalirius/findunusualsessions","last_synced_at":"2025-04-23T23:56:12.185Z","repository":{"id":287729277,"uuid":"838183751","full_name":"p0dalirius/FindUnusualSessions","owner":"p0dalirius","description":"A tool to remotely detect unusual sessions opened on windows machines using RPC","archived":false,"fork":false,"pushed_at":"2025-04-17T07:45:57.000Z","size":489,"stargazers_count":77,"open_issues_count":0,"forks_count":7,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-23T23:56:07.307Z","etag":null,"topics":["remote","rpc","session","smb","suspicious","windows"],"latest_commit_sha":null,"homepage":"https://podalirius.net/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/p0dalirius.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"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,"zenodo":null},"funding":{"github":"p0dalirius","patreon":"Podalirius"}},"created_at":"2024-08-05T05:55:12.000Z","updated_at":"2025-04-23T19:04:12.000Z","dependencies_parsed_at":"2025-04-13T16:19:44.198Z","dependency_job_id":"ab37b7a9-dea9-4fea-9eef-272ab0ad617d","html_url":"https://github.com/p0dalirius/FindUnusualSessions","commit_stats":null,"previous_names":["p0dalirius/findunusualsessions"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p0dalirius%2FFindUnusualSessions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p0dalirius%2FFindUnusualSessions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p0dalirius%2FFindUnusualSessions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p0dalirius%2FFindUnusualSessions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/p0dalirius","download_url":"https://codeload.github.com/p0dalirius/FindUnusualSessions/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250535063,"owners_count":21446506,"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":["remote","rpc","session","smb","suspicious","windows"],"created_at":"2025-04-23T23:56:11.803Z","updated_at":"2025-04-23T23:56:12.167Z","avatar_url":"https://github.com/p0dalirius.png","language":"Python","funding_links":["https://github.com/sponsors/p0dalirius","https://patreon.com/Podalirius"],"categories":[],"sub_categories":[],"readme":"![](./.github/banner.png)\n\n\u003cp align=\"center\"\u003e\n    A tool to remotely detect unusual sessions opened on windows machines using RPC\n    \u003cbr\u003e\n    \u003cimg alt=\"GitHub release (latest by date)\" src=\"https://img.shields.io/github/v/release/p0dalirius/FindUnusualSessions\"\u003e\n    \u003ca href=\"https://twitter.com/intent/follow?screen_name=podalirius_\" title=\"Follow\"\u003e\u003cimg src=\"https://img.shields.io/twitter/follow/podalirius_?label=Podalirius\u0026style=social\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://www.youtube.com/c/Podalirius_?sub_confirmation=1\" title=\"Subscribe\"\u003e\u003cimg alt=\"YouTube Channel Subscribers\" src=\"https://img.shields.io/youtube/channel/subscribers/UCF_x5O7CSfr82AfNVTKOv_A?style=social\"\u003e\u003c/a\u003e\n    \u003cbr\u003e\n\u003c/p\u003e\n\n## Features\n\n- [x] Extracts the list of legitimate domains and trusts registered in the LDAP\n- [x] Maps the current sessions open on remote machines through RPC\n- [x] Highlight suspicious sessions\n- [x] Multithreaded connections to enum remote sessions.\n- [ ] Export results in JSON with `--export-json \u003cfile.json\u003e`.\n- [ ] Export results in XLSX with `--export-xlsx \u003cfile.xlsx\u003e`.\n- [ ] Export results in SQLITE3 with `--export-sqlite \u003cfile.db\u003e`.\n\n## Demonstration\n\n```\n./FindUnusualSessions.py -au $USER -ad $DOMAIN -ap $PASSWORD -ai $DC_IP\n```\n\n![](./.github/example.png)\n\n## Usage\n\n```\n$ ./FindUnusualSessions.py -h\nFindUnusualSessions v1.1 - by Remi GASCOU (Podalirius)\n\nusage: FindUnusualSessions.py [-h] [-v] [--debug] [--no-colors] [-L LOGFILE] [-t THREADS] [-ns NAMESERVER] [-tf TARGETS_FILE] [-tt TARGET] [-ad AUTH_DOMAIN] [-ai AUTH_DC_IP] [-au AUTH_USER] [--ldaps]\n                              [--no-ldap] [--subnets] [-tl TARGET_LDAP_QUERY] [--no-pass | -ap AUTH_PASSWORD | -ah AUTH_HASHES | --aes-key hex key] [-k] [--kdcHost AUTH_KDCHOST] [--export-xlsx EXPORT_XLSX]\n                              [--export-json EXPORT_JSON] [--export-sqlite EXPORT_SQLITE]\n\noptions:\n  -h, --help            show this help message and exit\n  -v, --verbose         Verbose mode. (default: False).\n  --debug               Debug mode. (default: False).\n  --no-colors           Disables colored output mode.\n  -L LOGFILE, --logfile LOGFILE\n                        File to write logs to.\n  -t THREADS, --threads THREADS\n                        Number of threads (default: 64).\n  -ns NAMESERVER, --nameserver NAMESERVER\n                        IP of the DNS server to use, instead of the --dc-ip.\n\nTargets:\n  -tf TARGETS_FILE, --targets-file TARGETS_FILE\n                        Path to file containing a line by line list of targets.\n  -tt TARGET, --target TARGET\n                        Target IP, FQDN or CIDR.\n  -ad AUTH_DOMAIN, --auth-domain AUTH_DOMAIN\n                        Windows domain to authenticate to.\n  -ai AUTH_DC_IP, --auth-dc-ip AUTH_DC_IP\n                        IP of the domain controller.\n  -au AUTH_USER, --auth-user AUTH_USER\n                        Username of the domain account.\n  --ldaps               Use LDAPS (default: False)\n  --no-ldap             Do not perform LDAP queries.\n  --subnets             Get all subnets from the domain and use them as targets (default: False)\n  -tl TARGET_LDAP_QUERY, --target-ldap-query TARGET_LDAP_QUERY\n                        LDAP query to use to extract computers from the domain.\n\nCredentials:\n  --no-pass             Don't ask for password (useful for -k)\n  -ap AUTH_PASSWORD, --auth-password AUTH_PASSWORD\n                        Password of the domain account.\n  -ah AUTH_HASHES, --auth-hashes AUTH_HASHES\n                        LM:NT hashes to pass the hash for this user.\n  --aes-key hex key     AES key to use for Kerberos Authentication (128 or 256 bits)\n  -k, --kerberos        Use Kerberos authentication. Grabs credentials from .ccache file (KRB5CCNAME) based on target parameters. If valid credentials cannot be found, it will use the ones specified in the\n                        command line\n  --kdcHost AUTH_KDCHOST\n                        IP of the domain controller.\n\nOutput files:\n  --export-xlsx EXPORT_XLSX\n                        Output XLSX file to store the results in.\n  --export-json EXPORT_JSON\n                        Output JSON file to store the results in.\n  --export-sqlite EXPORT_SQLITE\n                        Output SQLITE3 file to store the results in.\n\n```\n\n## Contributing\n\nPull requests are welcome. Feel free to open an issue if you want to add other features.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp0dalirius%2Ffindunusualsessions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fp0dalirius%2Ffindunusualsessions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp0dalirius%2Ffindunusualsessions/lists"}