In September, we introduced EFF Threat Lab’s very own APK Downloader, apkeep. It is a tool that allows us to make the job of tracking state-sponsored malware and combatting the stalkerware of abusive partners easier. Since that time, we’ve added some additional functionality that we’d like to share.

F-Droid

In addition to the ability to download Android packages from the Google Play Store and APKPure, we’ve added support for downloading from the free and open source app repository F-Droid. Packages downloaded from F-Droid are checked against the repository maintainers’ signing key, just like in the F-Droid app itself. The package index is also cached, which makes it easy to run multiple subsequent requests for downloads.

Versioning

You can now download specific versions of apps from either the apk-pure app store, which mirrors the Google Play Store, or from f-droid. To try it, issue the following command to see which versions are available:

apkeep -l -a com.instagram.android -d apk-pure

Once you’ve picked a desired version, download it with this command:

apkeep -a com.instagram.android@217.0.0.15.474 -d apk-pure .

Keep in mind not all versions will be retained by these download sources, so only recent versions may be available.

Additional Platform Support

On initial launch, we supported only 6 platforms:

  • GNU/Linux x86_64, i686, aarch64, and armv7
  • Android aarch64 and armv7

We have been quickly building our platform support to bring the current tally to 9:

  • GNU/Linux x86_64, i686, aarch64, and armv7
  • Android x86_64, i686, aarch64 and armv7
  • Windows x86_64

and we plan to continue to build out to more platforms in the future.

Termux Repositories

The Android terminal application Termux now makes it easy to install apkeep. We have added our package to their repository, so that Termux users now only need to issue a simple command to install the latest version:

pkg install apkeep

Future Plans

In addition to continuing to build out to additional platforms, we would also like to add more Android markets to download from, such as the Amazon Appstore. Have any suggestions for features or new platforms you’d like to see supported? Let us know by opening an issue on our GitHub page!

Special Thanks

We would like to thank the F-Droid and Termux communities for their assistance in this build-out, and thank our users for their feedback and support.