StaCoAn is a crossplatform tool which aids developers, bugbounty hunters and ethical hackers performing static code analysis on mobile applications.

Overview

StaCoAn header

StaCoAn Issues badge License badge status Travis

Not maintained anymore!

Will be archived soon.

StaCoAn is a crossplatform tool which aids developers, bugbounty hunters and ethical hackers performing static code analysis on mobile applications*.

This tool will look for interesting lines in the code which can contain:

  • Hardcoded credentials
  • API keys
  • URL's of API's
  • Decryption keys
  • Major coding mistakes

This tool was created with a big focus on usability and graphical guidance in the user interface.

For the impatient ones, grab the download on the releases page.

*: note that currently only apk files are supported, but ipa files will follow very shortly.

An example report can be found here.

Table of Contents

Features

The concept is that you drag and drop your mobile application file (an .apk or .ipa file) on the StaCoAn application and it will generate a visual and portable report for you. You can tweak the settings and wordlists to get a customized experience.

The reports contain a handy tree viewer so you can easily browse trough your decompiled application.

Mockup  application

Looting concept

The Loot Function let you 'loot' (~bookmark) the findings which are of value for you and on the loot-page you will get an overview of your 'loot' raid.

The final report can be exported to a zip file and shared with other people.

Wordlists

The application uses wordlists for finding interesting lines in the code. Wordlists are in the following format:

API_KEY|||80||| This contains an API key reference
(https|http):\/\/.*api.*|||60||| This regex matches any URL containing 'api'

Note that these wordlists support regex entries.

In the exclusion_list.txt you can define exclusions (if you have for some reason to much findings):

(https|http):\/\/.*api.*|||"res","layout"||| Like previously, note that "res","layout" resembles the path
(https|http):\/\/.*api.*|||||| To exclude everywhere

Filetypes

Any source file will be processed. This contains '.java', '.js', '.html', '.xml',... files.

Database-files are also searched for keywords. The database also has a table viewer.

database

Responsive Design

The reports are made to fit on all screens.

How does the tool works?

Pipeline tool

Limitations

This tool will have trouble with obfuscated code. If you are a developer try to compile without obfuscation turned on before running this tool. If you are on the offensive side, good luck bro.

Getting Started

From the releases

If you want to get started as soon as possible, head over to the releases page and download the executable or archive which corresponds to your operating system.

If you have downloaded the release zip file, extract this.

On Windows you can just double click the executable. It will open in server mode and you can just drag and drop your mobile applications in the webinterface.

Windows 1 click

On Mac and Linux you can just run it from the terminal without arguments for the server-mode.

./stacoan

Drag and drop this file onto the executable.

Or you can specify an apk-file to run it without the server-mode:

./stacoan -p test-apk.apk

The report will be put inside a folder with a name corresponding to the apk.

Docker

cd docker
docker build . -t stacoan

Make sure that your application is at the location /yourappsfolder.

docker run -e JAVA_OPTS="-Xms2048m -Xmx2048m" -p 8888:8888 -p 7777:7777 -i -t stacoan

Drag and drop your application via: http://127.0.0.1:7777.

From source

git clone https://github.com/vincentcox/StaCoAn/
cd StaCoAn/src

Make sure that you have pip3 installed:

sudo apt-get install python3-pip

Install the required python packages:

pip3 install -r requirements.txt

Run StaCoAn via commandline:

python3 stacoan.py -p yourApp.apk

Or if you rather use the drag and drop interface:

python3 stacoan.py

Building the executable

Make sure that you are in the src folder.

cd src

Install PyInstaller:

pip3 install pyinstaller

Windows

PyInstaller can't handle subfolders with code, therefore we need to put the code in one folder.

sed -i 's/from helpers./from /g' helpers/*
sed -i 's/from helpers./from /g' stacoan.py
sed -i 's/os.path.join(parentdir, "config.ini")/"config.ini"/g' helpers/logger.py
cp helpers/* ./ || :;

Build stacoan:

python3 -m PyInstaller stacoan.py --onefile --icon icon.ico --name stacoan --clean

mac

PyInstaller can't handle subfolders with code, therefore we need to put the code in one folder.

# Note the ''-> this is because sed syntax is different on mac.
sed -i '' 's/from helpers./from /g' helpers/*
sed -i '' 's/from helpers./from /g' stacoan.py
sed -i '' 's/os.path.join(parentdir, "config.ini")/"config.ini"/g' helpers/logger.py
cp helpers/* ./ || :;

Build stacoan:

python3 -m PyInstaller stacoan.py --onefile --icon icon.ico --name stacoan --clean

Linux

PyInstaller can't handle subfolders with code, therefore we need to put the code in one folder.

sed -i 's/from helpers./from /g' helpers/*
sed -i 's/from helpers./from /g' stacoan.py
sed -i 's/os.path.join(parentdir, "config.ini")/"config.ini"/g' helpers/logger.py
cp helpers/* ./ || :;

Build stacoan:

python3 -m PyInstaller stacoan.py --onefile --icon icon.ico --name stacoan --clean

Contributing

This entire program's value is depending on the wordlists it is using. In the end, the final result is what matters. It is easy to build a wordlist (in comparison to writing actual code), but it has the biggest impact on the end result. You can help the community the most with making wordlists.

If you want an easy way to post your idea's, head over to: http://www.tricider.com/brainstorming/2pdrT7ONVrB. From there you can add ideas for entries in the wordlist.

Improving the code is also much appreciated.

If the contribution is high enough, you will be mentioned in the authors section.

Roadmap

  • Make IPA files also work with this program
  • Make DB matches loot-able
  • Better logging (cross platform)
  • Docker optimalisation
  • Use server to upload files (apk's, ipa's) and process them
  • Exception list for ignoring findings in certain folders. For example ignoring http in res/layout and in general http://schemas.android.com/apk/res/android
  • Make a cleaner file structure of this project

Authors & Contributors

Project Creator

Vincent Cox

Top contributors

License

The following projects were used in this project:

  • Materialize CSS: Materialize, a CSS Framework based on Material Design. Used for the general theme of the reports.
  • PRISMJS: Lightweight, robust, elegant syntax highlighting. Used for the code markup
  • JADX: Dex to Java decompiler. Used for decompiling .apk files*.
  • Fancytree: jQuery tree view / tree grid plugin. Used in the tree-view of the reports.
  • fontawesome: Font Awesome, the iconic font and CSS framework. Used for some icons.
  • JSZip: JSZip is a javascript library for creating, reading and editing .zip files, with a lovely and simple API.
  • FileSaver: An HTML5 saveAs() FileSaver implementation. Used in the JSZip library.

All of these projects have their corresponding licenses. Please respect these while you are modifying and redistributing this project.

*: the binary is included in this project. If the dev's from JADX are not comfortable with this, feel free to contact me about this so we can find a solution.

Acknowledgments

Many more should be listed here, but I can't list them all.

Comments
  • OSX - File not found

    OSX - File not found

    On Macs, your download (V.6) is not working. Below is the error. I believe you have hard coded some paths into the app. My mac is on Python 2.7.10

    [INFO] serving report server at port: 8080
    [INFO] serving dragdrop server at port: 8000
    0:38: execution error: File some object wasn’t found. (-43)
    ^CTraceback (most recent call last):
      File "/Users/travis/build/vincentcox/StaCoAn/src/stacoan.py", line 264, in <module>
      File "/Users/travis/build/vincentcox/StaCoAn/src/stacoan.py", line 151, in program
      File "/Users/travis/build/vincentcox/StaCoAn/src/stacoan.py", line 117, in server
      File "/usr/local/Cellar/python/3.6.4_3/Frameworks/Python.framework/Versions/3.6/lib/python3.6/threading.py", line 1056, in join
      File "/usr/local/Cellar/python/3.6.4_3/Frameworks/Python.framework/Versions/3.6/lib/python3.6/threading.py", line 1072, in _wait_for_tstate_lock
    KeyboardInterrupt
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/Users/travis/build/vincentcox/StaCoAn/src/stacoan.py", line 264, in <module>
    KeyboardInterrupt
    [9549] Failed to execute script stacoan
    L-75
    
    bug Mac OS X 
    opened by MindNinja 11
  • Wrong APK like a directory

    Wrong APK like a directory

    Hi,

    When i run the docker command i get this :

    [ERROR] ERROR: Unknown error: [Errno 21] Is a directory: 'myapp.apk'.

    didn't understand why... did anyone get this too?

    opened by b4b857f6ee 8
  • Restored support for apks as default arguments

    Restored support for apks as default arguments

    Hi,

    If a path is given as argument without the -p option, it is not recognised. This PR restores support for calls such as python3 stacoan.py yourApp.apk while still enabling the launch of a server by default.

    This should not affect the server, however I can't test it at the moment (Address already in use error when I try to use the server, with or without this modification, even after a reboot).

    opened by Ayowel 6
  • Docker

    Docker

    ┌─[nils@parrot]─[~/Code/Python/StaCoAn/docker]
    └──╼ $sudo docker run -e JAVA_OPTS="-Xms2048m -Xmx2048m" -p 8888:8888 -p 7777:7777 -i -t stacoan
    usage: stacoan.py [-h] [-p PATH [PATH ...]] [--disable-browser]
                      [--disable-server]
                      [--log-all | --log-errors | --log-warnings]
    stacoan.py: error: unrecognized arguments: --enable-server
    
    bug help wanted docker 
    opened by thistehneisen 4
  • Gibberish content in the generated report.

    Gibberish content in the generated report.

    Summary: See the attached images. The app didn't show any errors. The generated report contains gibberish data. Tried to rebuild the report 3 times, ended with the same result.

    Details: .apk file: https://play.google.com/store/apps/details?id=com.mkdingo.goran.signlangugage The file was downloaded via APKPure. os: Linux mint

    Proof of error: StaCoAn

    Jadx:

    Additional info: The app uses Cyrillic characters for resources(ex: R.id.в, R.id.ж). Could this be the cause of the problem?

    bug 
    opened by DeepSpaceHarbor 4
  • Create a GitHub wiki

    Create a GitHub wiki

    You can create a GitHub wiki to describe how to use the tool on the different platforms. This will shorten your repo's README file, which improves it imho (readability, length, ease of access, ...)

    help wanted 
    opened by Kevin-De-Koninck 3
  • Reduce docker image size

    Reduce docker image size

    This reduces the image size from 1.44GB to 264MB. This is a decrease of more than 80%. We achieve this by using Alpine Linux with JDK 8 as our base image.

    opened by Kevin-De-Koninck 3
  • AttributeError: module 'enum' has no attribute 'IntFlag'

    AttributeError: module 'enum' has no attribute 'IntFlag'

    Thanks old issue fixed.any though below 2 error?

    367 INFO: checking Analysis 367 INFO: Building Analysis because out00-Analysis.toc is non existent 367 INFO: Initializing module dependency graph... 373 INFO: Initializing module graph hooks... 377 INFO: Analyzing base_library.zip ... Traceback (most recent call last): File "", line 41, in File "", line 13, in walk_packages File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\pkgutil. py", line 127, in iter_modules for name, ispkg in iter_importer_modules(i, prefix): File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\pkgutil. py", line 146, in _iter_file_finder_modules import inspect File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\inspect. py", line 41, in import linecache File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\linecach e.py", line 11, in import tokenize File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\tokenize .py", line 33, in import re File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\re.py", line 142, in class RegexFlag(enum.IntFlag): AttributeError: module 'enum' has no attribute 'IntFlag'

    12236 INFO: Loading module hook "hook-encodings.py"... Traceback (most recent call last): File "", line 41, in File "", line 13, in walk_packages File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\pkgutil.py", line 127, in iter_modules for name, ispkg in iter_importer_modules(i, prefix): File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\pkgutil.py", line 146, in _iter_file_finder_modules import inspect File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\inspect.py", line 41, in import linecache File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\linecache.py", line 11, in import tokenize File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\tokenize.py", line 33, in import re File "c:\users\kandasam\appdata\local\programs\python\python36-32\lib\re.py", line 142, in class RegexFlag(enum.IntFlag):

    bug 
    opened by gopinath6 3
  • Unicode issue on report generation

    Unicode issue on report generation

    Hi, thank you for your efforts!

    I just came across your project and wanted to look into it. However, it seems to have some unicode issues. When I try to analyze the test-apk.apk, that comes with this repository, it fails:

    python3 main.py test-apk.apk 
    Decompiling app...
    /home/???/dev/StaCoAn/test-apk/jadx_source_code
    "/home/???/dev/StaCoAn/jadx/bin/jadx" -d "/home/???/dev/StaCoAn/test-apk/jadx_source_code" test-apk.apk
    /bin/sh: 1: /home/???/dev/StaCoAn/jadx/bin/jadx: Permission denied
    Decompiling done.
    Searching trough files
    Searching done.
    start generating report
    [...]
    progress: 97.52%
    progress: 98.14%
    progress: 98.76%
    progress: 99.38%
    Traceback (most recent call last):
      File "main.py", line 124, in <module>
        program()
      File "main.py", line 107, in program
        print(Report_html.Tree_builder.tree_js_file(Project.projects[project_path]), file=f)
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 149599-149600: ordinal not in range(128)
    

    Some other apk I fed to it also failed, but at a different stage:

    [...]
    progress: 8.59%
    progress: 8.72%
    Traceback (most recent call last):
      File "main.py", line 124, in <module>
        program()
      File "main.py", line 72, in program
        print(overview_html.gethtml(), file=f)
    UnicodeEncodeError: 'ascii' codec can't encode character '\u0580' in position 5519: ordinal not in range(128)
    

    I shortly peeked into the code, but was insecure, whether it is an issue with yattag or this repo here, maybe you know?

    bug 
    opened by kumzugloom 3
  • Docker build failed

    Docker build failed

    Hi, thank for this app. Docker build seem's to be broken:

    Step 3/12 : RUN echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list && echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886 && apt-get update ---> Running in 2b8ae552b233 deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.OIwaWMnA25 --no-auto-check-trustdb --trust-model always --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-stretch-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-stretch-security-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-stretch-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg --keyserver keyserver.ubuntu.com --recv-keys EEA14886 gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com ?: keyserver.ubuntu.com: Connection refused gpgkeys: HTTP fetch error 7: couldn't connect: Connection refused gpg: no valid OpenPGP data found. gpg: Total number processed: 0 The command '/bin/sh -c echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list && echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886 && apt-get update' returned a non-zero code: 2

    opened by bagazov 2
  • ERROR: Unknown error: 'test-apk_apk' on Mac executable

    ERROR: Unknown error: 'test-apk_apk' on Mac executable

    When running the Mac release, the following output is shown:

    [INFO] jadx return code: 0
    [INFO] Decompiling done.
    [INFO] Searching trough files
    [INFO] Searching done.
    [INFO] start generating report
    [ERROR] ERROR: Unknown error: 'test-apk_apk'.
    

    ToDo: Disable try catch wrapper on main function to find the root cause. Maybe make a --debug option to disable this try catch wrapper.

    Mac OS X Release 
    opened by vincentcox 2
  • Viewing the HTML Report on Firefox/Internet Explorer not supported

    Viewing the HTML Report on Firefox/Internet Explorer not supported

    The fancy TreeView does not display on FF and IE browsers. TV invisible not initializing properly. Also the upload process seem to sometimes fail, silently.

    Console IE:

    HTML1527: DOCTYPE expected. Consider adding a valid HTML5 doctype: "". start.html (1,1)

    HTML1504: Unexpected end tag. -- repeatedly

    jQuery.Deferred exception: Unable to get property 'length' of undefined or null reference TypeError: Unable to get property 'length' of undefined or null reference

    SCRIPT5022: Fancytree assertion failed: Need a valid store.

    SCRIPT5007: Unable to get property 'length' of undefined or null reference

    SCRIPT5007: Unable to get property 'getItem' of undefined or null reference

    Console FF:

    This page uses the non standard property “zoom”. Consider using calc() in the relevant property values, or using “transform” along with “transform-origin: 0 0”.

    Request to access cookie or storage on “start.html” was blocked because we are blocking all third-party storage access requests and content blocking is enabled.

    Uncaught DOMException: The operation is insecure. => jquery.fancytree-all-deps.min.js:1

    Uncaught DOMException: The operation is insecure. => jquery.fancytree.persist.js:40

    Uncaught Error: Could not apply extension 'persist' (it is not registered, did you forget to include it?) => /report/tree_js_content.js:2, jquery.min.js:2:1979

    Uncaught DOMException: The operation is insecure. => report.js:8

    Uncaught DOMException: The operation is insecure. => start.html:16

    Source map error: Error: NetworkError when attempting to fetch resource. Resource URL: /report/html/jquery.fancytree-all-deps.min.js Source Map URL: jquery.fancytree-all-deps.min.js.map

    sad :-(

    opened by Runnin-N-Gunnin 0
  • local variable 'sorted_tosort' referenced before assignment

    local variable 'sorted_tosort' referenced before assignment

    https://github.com/vincentcox/StaCoAn/blob/4abd2e3e7b5764b04f3b3500994428f78434200f/src/helpers/project.py#L82 There should be one tab less, so if any of you run into this issue just delete one tab on this line and it will be working a-ok.

    opened by pokorny-martin 0
  • Errors are not reflected in server UI

    Errors are not reflected in server UI

    I've just started the server and added a file for upload. Then waited 5 minutes without any result. Only after anaylzing the file directly I saw there was an issue with the input:

    $> ./stacoan -p sample.ipa 
    [INFO] Decompiling app...
    [ERROR] .ipa files not implemented yet.
    $> ./stacoan -p sample.app 
    [INFO] Decompiling app...
    [ERROR] No mobile app detected, exiting! Hgnnnhh
    

    The web server UI should reflect any errors and notify the user there was an issue with the provided file. Instead it indefinitely shows the 'Uploading…' message.

    opened by relikd 0
  • OutOfMemory on OS X

    OutOfMemory on OS X

    WARNING: An illegal reflective access operation has occurred
    WARNING: Illegal reflective access by com.rits.cloning.Cloner (file:/Users/nils/Desktop/deploy/jadx/lib/cloning-1.9.10.jar) to field java.util.TreeSet.m
    WARNING: Please consider reporting this to the maintainers of com.rits.cloning.Cloner
    WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
    WARNING: All illegal access operations will be denied in a future release
    [WARNING] 127.0.0.1 - - [05/Nov/2019 19:19:09] code 404, message File not found
    
    Exception in thread "pool-1-thread-5" java.lang.OutOfMemoryError: Java heap space
    	at java.base/java.util.Arrays.copyOf(Arrays.java:3746)
    	at java.base/java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:172)
    	at java.base/java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:538)
    	at java.base/java.lang.StringBuilder.append(StringBuilder.java:174)
    	at ch.qos.logback.core.pattern.FormattingConverter.write(FormattingConverter.java:39)
    	at ch.qos.logback.core.pattern.PatternLayoutBase.writeLoopOnConverters(PatternLayoutBase.java:115)
    	at ch.qos.logback.classic.PatternLayout.doLayout(PatternLayout.java:141)
    	at ch.qos.logback.classic.PatternLayout.doLayout(PatternLayout.java:39)
    	at ch.qos.logback.core.encoder.LayoutWrappingEncoder.encode(LayoutWrappingEncoder.java:115)
    	at ch.qos.logback.core.OutputStreamAppender.subAppend(OutputStreamAppender.java:230)
    	at ch.qos.logback.core.OutputStreamAppender.append(OutputStreamAppender.java:102)
    	at ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:84)Process Process-1:
    Traceback (most recent call last):
      File "multiprocessing/process.py", line 297, in _bootstrap
      File "multiprocessing/process.py", line 99, in run
      File "stacoan.py", line 184, in program
      File "project.py", line 143, in app_prepper
      File "logger.py", line 108, in __init__
      File "logger.py", line 99, in log
      File "logger.py", line 82, in cPrint
    OSError: [Errno 22] Invalid argument
    
    opened by thistehneisen 1
  • local variable issue

    local variable issue

    Hello @vincentcox , I am facing this error after supplying the apk UnboundLocalError: local variable 'sorted_tosort' referenced before assignment [WARNING] 127.0.0.1 - - [10/Oct/2018 19:35:59] code 404, message File not found

    bug 
    opened by jaikishantulswani 22
Releases(v0.90)
Owner
Vincent Cox
I have a hate-love relationship with coding. See my code in production: https://qrmem.com 🔥💨
Vincent Cox
ArchGuard is a architecture governance tool which can analysis architecture in container, component, code level, create architecure fitness functions, and anaysis system dependencies..

ArchGuard backend ArchGuard is a architecture governance tool which can analysis architecture in container, component, code level, database, create ar

ArchGuard 446 Dec 20, 2022
Yet another static code analyzer for malicious Android applications

Androwarn Yet another static code analyzer for malicious Android applications Description Androwarn is a tool whose main aim is to detect and warn the

Thomas D. 422 Dec 28, 2022
AndroidEssentials is an android library that creates helper functions for performing common tasks in Android

AndroidEssentials is an android library that creates helper functions for performing common tasks in Android such as managing preferences, managing files, showing alerts, showing toasts, checking user country & checking network connection of users. All the methods of the class are static and should be accessed directly from the AndroidEssentials class.

Isaac Sichangi 3 Jul 7, 2022
Changelog - a android library, it helps developers display the history of changes in their applications

Changelog is a android library, it helps developers display the history of changes in their applications. Supports Locales, Layout direction

Amirhosein Barati 2 Aug 1, 2022
Static recyclerview dan kalkulator sederhana, dibuat dengan menggunakan kotlin

Static Recyclerview Using Kotlin Static recyclerview dan kalkulator sederhana, dibuat dengan menggunakan kotlin. Screenshot License Copyright (C) 2021

AR Hakim 2 Dec 14, 2021
FlowDroid Static Data Flow Tracker

FlowDroid Data Flow Analysis Tool This repository hosts the FlowDroid data flow analysis tool. FlowDroid statically computes data flows in Android app

Secure Software Engineering Group at Paderborn University and Fraunhofer IEM 801 Dec 28, 2022
Android Package Inspector - dynamic analysis with api hooks, start unexported activities and more. (Xposed Module)

Inspeckage - Android Package Inspector Inspeckage is a tool developed to offer dynamic analysis of Android applications. By applying hooks to function

acpm 2.5k Jan 8, 2023
Veyron - Covid 19 analysis using OWID data

veyron Covid 19 & Vaccine history representation by country. The app was designe

Nino Matassa 0 Feb 10, 2022
Mole Analysis Use Case for HMS ML Kit Custom Model

Mole Analysis Mole Analysis Use Case for HMS ML Kit Custom Model Introduction What is Melanoma? Melanoma is the most serious among skin cancers becaus

null 15 Aug 23, 2022
An app for developers which contains more than 2.4k+ resources , with 1.2k+ free public API documentation

ResourceUp We often spend a lot of time finding good resources to get started with our project right? ResourceUp aims to provide all useful resources

kalp patel 10 Apr 30, 2022
Conscrypt Provider app, which can be included from other applications (WIP)

Conscrypt Provider is an APK which can provide the Conscrypt Library to apps that support older Android devices. The Conscrypt Library provides modern

mendhak 8 Oct 1, 2022
Android app built with MVP architectural approach and uses Marvel Comics API that allows developers everywhere to access information about Marvel's vast library of comics. :zap:

Villains & Heroes Android app built with MVP architectural approach and uses Marvel Comics API that allows developers everywhere to access information

André Mion 53 Jul 13, 2022
An library to help android developers working easly with activities and fragments (Kotlin version)

AFM An library to help android developer working easly with activities and fragments (Kotlin) Motivation Accelerate the process and abstract the logic

Massive Disaster 12 Oct 3, 2022
Do's and Don'ts for Android development, by Futurice developers

Best practices in Android development Avoid reinventing the wheel by following these guidelines. Lessons learned from Android developers in Futurice.

Futurice 20.2k Dec 30, 2022
Dev Experience is a set of projects to make life easier for developers, in order to import, configure and use.

Dev Experience The experience that all developer need Dev Experience is a set of projects to make life easier for developers, in order to import, conf

Wagner Fernando Costa 3 Aug 31, 2022
A Mobile application (Android), which facilitates the search for a medication, a pharmacy using geolocation.

#Pharmacom Pharmacom, est une application mobile natif - compatible avec mobile et tablette. Cette application a comme but principale de servir les ci

Mezgour Yassine 2 Oct 27, 2021
This project consists in the approach of a bakery business, in which the user can book one or more products (cakes), in addition to having the method of payment in cash (post-shipment) or the method of payment via mobile

This project consists in the approach of a bakery business, in which the user can book one or more products (cakes), in addition to having the method of payment in cash (post-shipment) or the method of payment via mobile

Paul Guillen Acuña 2 Dec 20, 2022