You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
APKiD gives you information about how an APK was made. It identifies many compilers, packers, obfuscators, and other weird stuff. It's _PEiD_ for Android.
4
6
5
-
For more information on what this tool can be used for, check out:
7
+
For more information on what this tool can be used for check out:
*[Detecting Pirated and Malicious Android Apps with APKiD](http://rednaga.io/2016/07/31/detecting_pirated_and_malicious_android_apps_with_apkid/)
9
11
10
12
# Installing
11
13
12
-
The _yara-python_ clone and compile steps here are temporarily necessary because we must point directly to our modified version of a _Yara_ branch which includes our DEX Yara module. This step is nessecary until (if?) the original maintainers of _Yara_ merge our module into the master branch. When this happens, we will undate the instructions here. After the _yara-python_ fork is compiled, you can use `pip` to the most currently published `APKiD` package.
14
+
Unfortunately, you can't just `pip install` APKiD since it depends on RedNaga's custom fork of [yara-python](https://github.com/rednaga/yara-python-1).
This extra step is necessary until yara-python is updated with a version of Yara which includes the new, experimental DEX module.
30
+
31
+
## Docker
22
32
23
-
In an attempt to reduce the support ticket we receive from the above instructions being hard to follow, there is
24
-
a docker file and script which can be used for processing files quickly. This also serves as a proof that the above
25
-
instructions _do_ work! This usage, of course, requires that you have docker correctly installed on your machine. However the following instructions should "just work" if you have docker and git install on a machine:
33
+
If installing is too complicated, you can just use [Docker](https://www.docker.com/community-edition)! Of course, this usage requires that you have git and docker installed on your machine.
-t TIMEOUT, --timeout TIMEOUT Yara scan timeout (in seconds)
61
+
-o DIR, --output-dir DIR write individual results to this directory (implies --json)
62
+
-q, --quiet suppress extraneous output
55
63
```
56
64
57
65
# Submitting New Packers / Compilers / Obfuscators
58
66
59
67
If you come across an APK or DEX which APKiD does not recognize, please open a GitHub issue and tell us:
68
+
60
69
* what you think it is
61
70
* the file hash (either MD5, SHA1, SHA256)
62
71
63
-
We are open to any type of concept you might have for "something interesting" to detect, so do not limit yourself solely to packers, compilers or obfuscators. If there is an interesting antidisassembler, antivm, anti* trick, please make an issue.
72
+
We are open to any type of concept you might have for "something interesting" to detect, so do not limit yourself solely to packers, compilers or obfuscators. If there is an interesting anti-disassembler, anti-vm, anti-* trick, please make an issue.
64
73
65
-
You're also welcome to submit pull requests. Just be sure to include a file hash so we can check the rule.
74
+
Pull requests are welcome. If you're submitting a new rule, be sure to include a file hash of the APK / DEX so we can check the rule.
66
75
67
76
# License
68
77
@@ -72,15 +81,15 @@ Depending on your needs, you must choose one of them and follow its policies. A
72
81
73
82
# Hacking
74
83
75
-
First you will need to install the specific version of _yara-python_ the project depends on (more information about this in the _Installing_ section):
84
+
First, you'll need to install our fork of _yara-python_:
0 commit comments