android_class_shadowing_sca.../setup.sh

63 lines
1.6 KiB
Bash

#!/usr/bin/bash
export WD=$(pwd)
export SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
export ANDROZOO_KEY="${SCRIPT_DIR}/.ZOO_KEY"
export LIST="${SCRIPT_DIR}/data/apks.txt"
export PLATFORM_ZIP="${SCRIPT_DIR}/data/platforms.zip"
export ANDROZOO_LASTEST="${SCRIPT_DIR}/latest_with-added-date.csv.gz"
export APKTOOL="${SCRIPT_DIR}/apktool.jar"
export VENV="${WD}/venv"
export OUT_DIR="${WD}/app-2023.out"
export OUT_SCAN="${OUT_DIR}/scan"
export OUT_SMALI_CHECK="${OUT_DIR}/smali_check"
export OUT_DATAMINE="${OUT_DIR}/out_data"
export DB="${OUT_DIR}/app-2023.db"
export app_lst=(
'00'
'01'
'02'
'03'
'04'
'05'
'06'
'07'
'08'
'09'
'10'
'11'
'12'
'13'
'14'
'15'
'16'
'17'
'18'
'19'
)
export N_CHUNK=$(python3 -c "print($(cat ${LIST} | wc -l)//20 + 1)")
if [ ! -f "${APKTOOL}" ]; then
echo "${APKTOOL} not found, download it from https://github.com/iBotPeaches/Apktool/releases/download/v2.10.0/apktool_2.10.0.jar"
exit
fi
if [ ! -f "${ANDROZOO_KEY}" ]; then
echo "${ANDROZOO_KEY} not found, put your androzoo key their (see https://androzoo.uni.lu/)"
exit
fi
if [ ! -f "${ANDROZOO_LASTEST}" ]; then
echo "${ANDROZOO_LASTEST} not found, download if from https://androzoo.uni.lu/static/lists/latest_with-added-date.csv.gz"
exit
fi
if [ ! -d "${VENV}" ]; then
echo "venv not found at ${VENV}, initialize it and install python package"
python3 -m venv "${VENV}"
"${VENV}/bin/pip" install "${SCRIPT_DIR}"
fi
if [ ! -d "${OUT_DIR}/apks/" ]; then
mkdir -p "${OUT_DIR}/apks/"
split -a 2 -d -l "${N_CHUNK}" "${LIST}" "${OUT_DIR}/apks/"
fi