{"adoption": {"forks": 1628, "observed_at": "2026-08-28T04:09:08.697714+00:00", "stars": 5037}, "canonical_url": "https://ross.abutalabs.com/products/androrat", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A Simple android remote administration tool using sockets. It uses java on the client side and python on the server side", "domain": ["security", "penetration-testing", "android-tools"], "enriched": true, "function": ["security", "penetration-testing", "cli", "networking"], "health_score": 20, "homepage": null, "language": "Java", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["karma9874/AndroRAT"], "name": "karma9874/AndroRAT", "platform": ["windows", "python", "jvm", "cli"], "pushed_at": "2024-07-17T17:22:43+00:00", "repo": "karma9874/AndroRAT", "stars": 5037, "tags": ["android-rat", "remote-administration", "reverse-shell", "backdoor", "sockets", "educational", "red-team", "command-line", "android", "linux"], "topics": ["android", "backdoor", "python", "reverse-shell", "sockets", "interpreter", "androrat", "rat", "android-application", "exploit", "interpreter-commands", "java", "apk", "hacktoberfest", "android-rat"], "urls": [], "use_cases": ["build an android remote administration apk for security testing", "get an interactive shell on an android device over sockets", "tunnel android device control over the internet with ngrok", "retrieve call logs, sms, location and device info from a test device", "learn how android rat clients and python servers communicate", "demonstrate persistent backdoor behavior in a lab environment"], "what_it_is": "AndroRAT is an Android remote administration tool (RAT) with a Java-based Android client APK and a Python server, communicating over sockets. It supports building a persistent backdoor APK, ngrok tunneling for internet access, and an interactive shell to control devices (intended for educational purposes).", "when_to_avoid": ["you need a stealthy or production-grade red-team tool with AV evasion", "you target Android 10+ where many commands are unstable", "you want a supported, maintained enterprise MDM or device-management solution", "you cannot legally or ethically control a device you do not own"], "when_to_choose": ["you need a simple educational android RAT for a security course or lab", "you want a socket-based client/server demo across Java Android and Python", "you need ngrok tunneling to reach a device outside your LAN"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/androrat", "repo": "karma9874/AndroRAT", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:08.697714+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:17:25.715405+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cb85c0d4edf579ce088e6c902467c81e42d1c5aefebf6fc7a4f88ccb4f15d5a4", "fetched_at": "2026-08-28T04:09:08.697714+00:00", "kind": "readme", "missing": false, "url": "https://github.com/karma9874/AndroRAT"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2355, "days_push": 777, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}