forked from MobSF/Mobile-Security-Framework-MobSF
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'MobSF:master' into master
- Loading branch information
Showing
82 changed files
with
2,937 additions
and
904 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -10,7 +10,24 @@ LABEL \ | |
contributor_2="Vincent Nadal <[email protected]>" \ | ||
description="Mobile Security Framework (MobSF) is an automated, all-in-one mobile application (Android/iOS/Windows) pen-testing, malware analysis and security assessment framework capable of performing static and dynamic analysis." | ||
|
||
ENV DEBIAN_FRONTEND=noninteractive | ||
ENV DEBIAN_FRONTEND=noninteractive \ | ||
MOBSF_USER=mobsf \ | ||
USER_ID=9901 \ | ||
MOBSF_PLATFORM=docker \ | ||
MOBSF_ADB_BINARY=/usr/bin/adb \ | ||
JDK_FILE=openjdk-20.0.2_linux-x64_bin.tar.gz \ | ||
JDK_FILE_ARM=openjdk-20.0.2_linux-aarch64_bin.tar.gz \ | ||
WKH_FILE=wkhtmltox_0.12.6.1-2.jammy_amd64.deb \ | ||
WKH_FILE_ARM=wkhtmltox_0.12.6.1-2.jammy_arm64.deb \ | ||
JAVA_HOME=/jdk-20.0.2 \ | ||
PATH=$JAVA_HOME/bin:$PATH \ | ||
LANG=en_US.UTF-8 \ | ||
LANGUAGE=en_US:en \ | ||
LC_ALL=en_US.UTF-8 \ | ||
PYTHONUNBUFFERED=1 \ | ||
PYTHONDONTWRITEBYTECODE=1 \ | ||
PYTHONFAULTHANDLER=1 \ | ||
POETRY_VERSION=1.6.1 | ||
|
||
# See https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#run | ||
RUN apt update -y && apt install -y --no-install-recommends \ | ||
|
@@ -37,32 +54,13 @@ RUN apt update -y && apt install -y --no-install-recommends \ | |
locale-gen en_US.UTF-8 && \ | ||
apt upgrade -y | ||
|
||
ENV MOBSF_USER=mobsf \ | ||
MOBSF_PLATFORM=docker \ | ||
MOBSF_ADB_BINARY=/usr/bin/adb \ | ||
JDK_FILE=openjdk-20.0.2_linux-x64_bin.tar.gz \ | ||
JDK_FILE_ARM=openjdk-20.0.2_linux-aarch64_bin.tar.gz \ | ||
WKH_FILE=wkhtmltox_0.12.6.1-2.jammy_amd64.deb \ | ||
WKH_FILE_ARM=wkhtmltox_0.12.6.1-2.jammy_arm64.deb \ | ||
JAVA_HOME=/jdk-20.0.2 \ | ||
PATH=$JAVA_HOME/bin:$PATH \ | ||
LANG=en_US.UTF-8 \ | ||
LANGUAGE=en_US:en \ | ||
LC_ALL=en_US.UTF-8 \ | ||
PYTHONUNBUFFERED=1 \ | ||
PYTHONDONTWRITEBYTECODE=1 \ | ||
PYTHONFAULTHANDLER=1 \ | ||
POETRY_VERSION=1.6.1 | ||
|
||
# Install wkhtmltopdf & OpenJDK | ||
ARG TARGETPLATFORM | ||
|
||
COPY scripts/install_java_wkhtmltopdf.sh . | ||
RUN ./install_java_wkhtmltopdf.sh | ||
|
||
RUN groupadd -g 9901 $MOBSF_USER | ||
RUN adduser $MOBSF_USER --shell /bin/false -u 9901 --ingroup $MOBSF_USER --gecos "" --disabled-password | ||
|
||
# Install Python dependencies | ||
COPY poetry.lock pyproject.toml ./ | ||
RUN python3 -m pip install --upgrade --no-cache-dir pip poetry==${POETRY_VERSION} && \ | ||
poetry config virtualenvs.create false && \ | ||
|
@@ -89,10 +87,13 @@ COPY . . | |
# Check if Postgres support needs to be enabled. | ||
# Disabled by default | ||
ARG POSTGRES=False | ||
|
||
ENV POSTGRES_USER=postgres \ | ||
POSTGRES_PASSWORD=password \ | ||
POSTGRES_DB=mobsf \ | ||
POSTGRES_HOST=postgres | ||
POSTGRES_HOST=postgres \ | ||
DJANGO_SUPERUSER_USERNAME=mobsf \ | ||
DJANGO_SUPERUSER_PASSWORD=mobsf | ||
|
||
RUN ./scripts/postgres_support.sh $POSTGRES | ||
|
||
|
@@ -101,8 +102,11 @@ HEALTHCHECK CMD curl --fail http://host.docker.internal:8000/ || exit 1 | |
# Expose MobSF Port and Proxy Port | ||
EXPOSE 8000 8000 1337 1337 | ||
|
||
RUN chown -R $MOBSF_USER:$MOBSF_USER /home/mobsf | ||
USER mobsf | ||
# Create mobsf user | ||
RUN groupadd --gid $USER_ID $MOBSF_USER && \ | ||
useradd $MOBSF_USER --uid $USER_ID --gid $MOBSF_USER --shell /bin/false && \ | ||
chown -R $MOBSF_USER:$MOBSF_USER /home/mobsf | ||
USER $MOBSF_USER | ||
|
||
# Run MobSF | ||
CMD ["/home/mobsf/Mobile-Security-Framework-MobSF/scripts/entrypoint.sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.