jamulussoftware / jamulussoftware/jamulus

Android: Secure Gradle download against MITM

Open
#2,374 0 comments 1 reaction 0 assignees View on GitHub
bug tooling
Dominant language
C
Stars
1.1k
Forks
248
Avg merge
2d 3h
Merged PRs (30d)
9

Description

**Describe the bug**
The android Gradle download (?) doesn’t seem to be verified:
FDroid Bot tells us the following:

> gradle/wrapper/gradle-wrapper.properties is missing [distributionSha256Sum](https://docs.gradle.org/current/userguide/gradle_wrapper.html#sec:verification).

> This means that the gradle download is not verified.

> We recommend explicitly setting the expected Sha256sum to protect you and your apps if a bad actor gets access to the Gradle servers or manages to MitM your internet connection.

> Please note that Android Studio does not currently support this and may or may not crash, but we suggest you try our suggestion anyway to improve the security of yourself and your app.

> Here is an example of how to fix this:
```
#Mon Aug 03 13:45:58 PDT 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
distributionSha256Sum=10065868c78f1207afb3a92176f99a37d753a513dff453abb6b5cceda4058cda
```

**Additional context**

See this comment on GitLab for more information: https://gitlab.com/fdroid/rfp/-/issues/2011#note_837630418

Next steps:
* Include the proposed fix in the repo (I don‘t know the Android build enough to judge if this has any negative impact).

Contributor guide

Open the contributing guide

Research direction

Start with gradle/wrapper/gradle-wrapper.properties and inspect the configured distributionUrl. Consult Gradle's wrapper verification documentation to determine the expected SHA-256 value, add the checksum setting, and run the Android build to confirm the wrapper still works.

Written by the indexing model from the issue text.

Assessment

Tech stack
android
Domain
build-system, mobile, security
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.