1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-11-04 22:40:12 +01:00
Tools for managing builds, indexes, updates, and deployments for F-Droid repositories.
Go to file
Kevin C. Krinke df27bae6a0 dscanner - Drozer based post-build dynamic vulnerability scanner command
* New command `dscanner`, enables one to scan signed APKs with Drozer
 * Drozer is a dynamic vulnerability scanner for Android
 * Drozer runs in a emulator or on-device, this new `dscanner` command...
  * starts a docker image with Drozer and the Android Emulator pre-installed,
  * loads the signed APK into the emulator
  * activates Drozer automated tests for the APK
  * gathers the report output and places it next to the original APK
 * The Drozer docker image can be:
  * cached locally for re-use (just don't run --clean*)
  * retrieved from dockerhub.com for more efficient runtime
  * or be built from scratch (in the new "./docker" directory)
 * New "Vulnerability Scanning" documentation section (run gendocs.sh)
2016-12-06 14:00:44 +01:00
.pylint-plugins jenkins-build: make pylint handle the hashlib hash classes properly 2014-04-03 12:33:22 -04:00
buildserver Add gradle 3.2.1 2016-12-02 08:16:04 +01:00
completion Add '--use-date-from-apk' option to bash-completion 2016-02-18 16:42:16 +04:00
docker dscanner - Drozer based post-build dynamic vulnerability scanner command 2016-12-06 14:00:44 +01:00
docs dscanner - Drozer based post-build dynamic vulnerability scanner command 2016-12-06 14:00:44 +01:00
examples remove support for XML app metadata, its broken 2016-12-05 20:16:54 +01:00
fdroidserver dscanner - Drozer based post-build dynamic vulnerability scanner command 2016-12-06 14:00:44 +01:00
hooks buildserver: remove Kivy, unused since 2013 and out of date 2016-09-12 14:58:08 +02:00
tests convert metadata test dumps to YAML for easy comparison 2016-12-05 20:16:54 +01:00
wp-fdroid check all APKs for old versions of OpenSSL 2016-12-05 20:16:54 +01:00
.gitignore ignore files created by tests 2016-11-16 23:28:03 +01:00
.gitlab-ci.yml CI: use new docker image with texinfo 2016-10-31 14:02:39 +00:00
.travis.yml Bump ci images and default build-tools 2016-10-23 17:04:58 +01:00
fd-commit Apparently Python cannot handle Unicode 2016-01-14 23:15:05 +01:00
fdroid dscanner - Drozer based post-build dynamic vulnerability scanner command 2016-12-06 14:00:44 +01:00
jenkins-build move tests into common script for jenkins and gitlab-ci 2015-09-01 19:52:37 +02:00
jenkins-build-makebuildserver jenkins-build-makebuildserver: remove errant blank line 2016-09-28 09:52:49 +02:00
LICENSE Rename COPYING to LICENSE 2015-08-24 10:54:20 -07:00
makebuildserver Add gradle 3.2.1 2016-12-02 08:16:04 +01:00
MANIFEST.in update buildserver scripts in sdist tarball manifest 2016-11-03 08:07:11 +01:00
README.md dscanner - Drozer based post-build dynamic vulnerability scanner command 2016-12-06 14:00:44 +01:00
setup.cfg corrected word order in release alias 2016-03-10 12:28:31 +01:00
setup.py dscanner - Drozer based post-build dynamic vulnerability scanner command 2016-12-06 14:00:44 +01:00

F-Droid Server

build status

Server for F-Droid, the Free Software repository system for Android.

The F-Droid server tools provide various scripts and tools that are used to maintain the main F-Droid application repository. You can use these same tools to create your own additional or alternative repository for publishing, or to assist in creating, testing and submitting metadata to the main repository.

For documentation, please see the docs directory.

Alternatively, visit https://f-droid.org/manual/.

What is F-Droid?

F-Droid is an installable catalogue of FOSS (Free and Open Source Software) applications for the Android platform. The client makes it easy to browse, install, and keep track of updates on your device.

Installing

Note that only Python 3 is supported. We recommend version 3.4 or later.

The easiest way to install the fdroidserver tools is on Ubuntu, Mint or other Ubuntu based distributions, you can install using:

sudo apt-get install fdroidserver

For older Ubuntu releases or to get the latest version, you can get fdroidserver from the Guardian Project PPA (the signing key fingerprint is 6B80 A842 07B3 0AC9 DEE2 35FE F50E ADDD 2234 F563)

sudo add-apt-repository ppa:guardianproject/ppa
sudo apt-get update
sudo apt-get install fdroidserver

On OSX, fdroidserver is available from third party package managers, like Homebrew, MacPorts, and Fink:

brew install fdroidserver

For Arch-Linux is a package in the AUR available. If you have installed yaourt or something similiar, you can do:

yaourt -S fdroidserver

For any platform where Python's easy_install is an option (e.g. OSX or Cygwin, you can use it:

sudo easy_install fdroidserver

Python's pip also works:

sudo pip3 install fdroidserver

The combination of pyvenv and pip is great for testing out the latest versions of fdroidserver. Using pip, fdroidserver can even be installed straight from git. First, make sure you have installed the python header files, venv and pip. They should be included in your OS's default package manager or you can install them via other mechanisms like Brew/dnf/pacman/emerge/Fink/MacPorts.

For Debian based distributions:

apt-get install python3-dev python3-pip python3-venv libjpeg-dev zlib1g-dev

Then here's how to install:

git clone https://gitlab.com/fdroid/fdroidserver.git
cd fdroidserver
pyvenv env/
source env/bin/activate
pip3 install -e .
python3 setup.py install

Drozer Scanner

There is a new feature under development that can scan any APK in a repo, or any build, using Drozer. Drozer is a dynamic exploit scanner, it runs an app in the emulator and runs known exploits on it.

This setup requires specific versions of two Python modules: docker-py 1.9.0 and requests older than 2.11. Other versions might cause the docker-py connection to break with the containers. Newer versions of docker-py might have this fixed already.

For Debian based distributions:

apt-get install libffi-dev libssl-dev python-docker