{"id":26338745,"url":"https://github.com/kgeri201/androguard-2","last_synced_at":"2025-03-16T03:14:54.167Z","repository":{"id":279991151,"uuid":"936108499","full_name":"KGeri201/AndroGUARD-2","owner":"KGeri201","description":"Patch to mitigate sensor based fingerprinting on Android","archived":false,"fork":false,"pushed_at":"2025-02-28T15:54:13.000Z","size":4575,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T20:56:04.448Z","etag":null,"topics":["android","android-fingerprinting","figerprinting-mitigation","fingerprinting","privacy","sensor-fingerprinting"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KGeri201.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-20T14:43:20.000Z","updated_at":"2025-02-28T15:54:17.000Z","dependencies_parsed_at":"2025-02-28T20:56:10.663Z","dependency_job_id":"d87b3ea0-4da0-4d99-b801-acabf7cdeb02","html_url":"https://github.com/KGeri201/AndroGUARD-2","commit_stats":null,"previous_names":["kgeri201/androguard-2"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KGeri201%2FAndroGUARD-2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KGeri201%2FAndroGUARD-2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KGeri201%2FAndroGUARD-2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KGeri201%2FAndroGUARD-2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KGeri201","download_url":"https://codeload.github.com/KGeri201/AndroGUARD-2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243818198,"owners_count":20352629,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-fingerprinting","figerprinting-mitigation","fingerprinting","privacy","sensor-fingerprinting"],"created_at":"2025-03-16T03:14:53.672Z","updated_at":"2025-03-16T03:14:54.158Z","avatar_url":"https://github.com/KGeri201.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e [!WARNING]\n\u003e Project got renamed and moved to [SensorGUARD](https://github.com/KGeri201/SensorGUARD)\n\n# AndroGUARD-2\nImplement a patch for individual apps to mitigate sensor based fingerprinting.\n\n## Description\nIt is a further development of [my bachelor's project and thesis](https://github.com/KGeri201/AndroGUARD).  \nIt is about concealing the inherent error values of built-in sensors in mobile devices, by correcting them, to mitigate fingerprinting attempts.\nPatching apps with the created mechanism, using the [A2P2 Framework](https://extgit.iaik.tugraz.at/fdraschbacher/a2p2), obscures the true error values.\n\n## Concept\n\u003cimg src=\"images/screenrecording.gif\" align=\"right\" alt=\"Alt Text\" width=\"125\"\u003e\n\nApps can be fingerprinted based on the calibration error of the sensors within[*](https://github.com/KGeri201/AndroGUARD/blob/main/thesis/thesis.pdf).  \nWe mask these errors by recalibrationg the sensors and using these values for the patched apps.  \nAt the start of the app a calibration window pops up, if there is no calibration file found.  \nThis makes it possible to calibrate the device only once, and not for every patched app individually.  \nWe use a very simple method to calibrate the sensors.  \nThe device has to placed on a flat surface and the difference between the expected values of 0 and the measured values are recorded and stored in a configuration file readable by any other patched app.\nThen this error is subtracted from the raw values.  \nThis reduces the error and brings the values of different devices closer together to make them more difficult to distinguish.\n  \n## Apply patch to an app\n### Prerequisits\n- [Java 17](https://adoptium.net/de/temurin/releases/?version=17) installed *- A2P2 jar works on Linux, might not work on Windows.*\n- An apk from the app you want the patch apply to.\n\n### Apply\n\n1. Download the latest [distribution](https://extgit.iaik.tugraz.at/fdraschbacher/a2p2/-/blob/main/a2p2_distribution_v1.0.1.zip?ref_type=heads) release from A2P2 and extract it.\n2. Download the latest [precompiled version](https://github.com/KGeri201/AndroGUARD-2/releases/latest) of the patch.\n3. Execute the command from the [A2P2 documentation](https://extgit.iaik.tugraz.at/fdraschbacher/a2p2/-/tree/main/distribution/docs?ref_type=heads)\n    ```bash\n    java -jar ./distribution/a2p2.jar \u003capp\u003e.apk ! unpack ! apply androguard_static.zip static ! pack ! sign ! ./\n    ```\n4. Install the patched app on an Android device.\n\n### Build from source\n1. Setup the [A2P2](https://extgit.iaik.tugraz.at/fdraschbacher/a2p2/-/tree/main?ref_type=heads) framework for patch development.\n2. Clone the project.\n3. [Build the patch](https://extgit.iaik.tugraz.at/fdraschbacher/a2p2/-/blob/main/distribution/docs/developing_patches.md?ref_type=heads#building-patches) from source.\n\n## Validation\nCheck out the [validation](./validation/README.md).  \n\n## License\n[MIT License](LICENSE)\n\n## Project status\nIn development.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkgeri201%2Fandroguard-2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkgeri201%2Fandroguard-2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkgeri201%2Fandroguard-2/lists"}