安卓系统7.1搭建Xposed环境

admin 2022年3月22日10:25:35评论358 views1字数 4918阅读16分23秒阅读模式

前言:直接安装模拟器提供的xposed模块会报如下错误:

安卓系统7.1搭建Xposed环境

一、下载系统版本对应的sdk

https://dl-xda.xposed.info/framework/

安卓系统7.1搭建Xposed环境

安卓系统7.1搭建Xposed环境

二、将下面代码保存为 script.sh文件

############################################################################################ Xposed framework installer zip.## This script installs the Xposed framework files to the system partition.# The Xposed Installer app is needed as well to manage the installed modules.###########################################################################################

grep_prop() { REGEX="s/^$1=//p" shift FILES=$@ if [ -z "$FILES" ]; then FILES='/system/build.prop' fi cat $FILES 2>/dev/null | sed -n $REGEX | head -n 1}

android_version() { case $1 in 15) echo '4.0 / SDK'$1;; 16) echo '4.1 / SDK'$1;; 17) echo '4.2 / SDK'$1;; 18) echo '4.3 / SDK'$1;; 19) echo '4.4 / SDK'$1;; 21) echo '5.0 / SDK'$1;; 22) echo '5.1 / SDK'$1;; 23) echo '6.0 / SDK'$1;; 24) echo '7.0 / SDK'$1;; 25) echo '7.1 / SDK'$1;; 26) echo '8.0 / SDK'$1;; 27) echo '8.1 / SDK'$1;; *) echo 'SDK'$1;; esac}

cp_perm() { cp -f $1 $2 || exit 1 set_perm $2 $3 $4 $5 $6}

set_perm() { chown $2:$3 $1 || exit 1 chmod $4 $1 || exit 1 if [ "$5" ]; then chcon $5 $1 2>/dev/null else chcon 'u:object_r:system_file:s0' $1 2>/dev/null fi}

install_nobackup() { cp_perm ./$1 $1 $2 $3 $4 $5}

install_and_link() { TARGET=$1 XPOSED="${1}_xposed" BACKUP="${1}_original" if [ ! -f ./$XPOSED ]; then return fi cp_perm ./$XPOSED $XPOSED $2 $3 $4 $5 if [ ! -f $BACKUP ]; then mv $TARGET $BACKUP || exit 1 ln -s $XPOSED $TARGET || exit 1 chcon -h 'u:object_r:system_file:s0' $TARGET 2>/dev/null fi}

install_overwrite() { TARGET=$1 if [ ! -f ./$TARGET ]; then return fi BACKUP="${1}.orig" NO_ORIG="${1}.no_orig" if [ ! -f $TARGET ]; then touch $NO_ORIG || exit 1 set_perm $NO_ORIG 0 0 600 elif [ -f $BACKUP ]; then rm -f $TARGET gzip $BACKUP || exit 1 set_perm "${BACKUP}.gz" 0 0 600 elif [ ! -f "${BACKUP}.gz" -a ! -f $NO_ORIG ]; then mv $TARGET $BACKUP || exit 1 gzip $BACKUP || exit 1 set_perm "${BACKUP}.gz" 0 0 600 fi cp_perm ./$TARGET $TARGET $2 $3 $4 $5}

##########################################################################################

echo "**************************"echo "Xposed framework installer"echo "**************************"

if [ ! -f "system/xposed.prop" ]; then echo "! Failed: Extracted file system/xposed.prop not found!" exit 1fi

echo "- Checking environment"API=$(grep_prop ro.build.version.sdk)APINAME=$(android_version $API)ABI=$(grep_prop ro.product.cpu.abi | cut -c-3)ABI2=$(grep_prop ro.product.cpu.abi2 | cut -c-3)ABILONG=$(grep_prop ro.product.cpu.abi)

XVERSION=$(grep_prop version system/xposed.prop)XARCH=$(grep_prop arch system/xposed.prop)XMINSDK=$(grep_prop minsdk system/xposed.prop)XMAXSDK=$(grep_prop maxsdk system/xposed.prop)

XEXPECTEDSDK=$(android_version $XMINSDK)if [ "$XMINSDK" != "$XMAXSDK" ]; then XEXPECTEDSDK=$XEXPECTEDSDK' - '$(android_version $XMAXSDK)fi

ARCH=armIS64BIT=if [ "$ABI" = "x86" ]; then ARCH=x86; fi;if [ "$ABI2" = "x86" ]; then ARCH=x86; fi;if [ "$API" -ge "21" ]; then if [ "$ABILONG" = "arm64-v8a" ]; then ARCH=arm64; IS64BIT=1; fi; if [ "$ABILONG" = "x86_64" ]; then ARCH=x86_64; IS64BIT=1; fi;fi

# echo "DBG [$API] [$ABI] [$ABI2] [$ABILONG] [$ARCH] [$XARCH] [$XMINSDK] [$XMAXSDK] [$XVERSION]"

echo " Xposed version: $XVERSION"

XVALID=if [ "$ARCH" = "$XARCH" ]; then if [ "$API" -ge "$XMINSDK" ]; then if [ "$API" -le "$XMAXSDK" ]; then XVALID=1 else echo "! Wrong Android version: $APINAME" echo "! This file is for: $XEXPECTEDSDK" fi else echo "! Wrong Android version: $APINAME" echo "! This file is for: $XEXPECTEDSDK" fielse echo "! Wrong platform: $ARCH" echo "! This file is for: $XARCH"fi

if [ -z $XVALID ]; then echo "! Please download the correct package" echo "! for your platform/ROM!" exit 1fi

echo "- Placing files"install_nobackup /system/xposed.prop 0 0 0644install_nobackup /system/framework/XposedBridge.jar 0 0 0644

install_and_link /system/bin/app_process32 0 2000 0755 u:object_r:zygote_exec:s0install_overwrite /system/bin/dex2oat 0 2000 0755 u:object_r:dex2oat_exec:s0install_overwrite /system/bin/oatdump 0 2000 0755install_overwrite /system/bin/patchoat 0 2000 0755 u:object_r:dex2oat_exec:s0install_overwrite /system/lib/libart.so 0 0 0644install_overwrite /system/lib/libart-compiler.so 0 0 0644install_overwrite /system/lib/libsigchain.so 0 0 0644install_nobackup /system/lib/libxposed_art.so 0 0 0644if [ $IS64BIT ]; then install_and_link /system/bin/app_process64 0 2000 0755 u:object_r:zygote_exec:s0 install_overwrite /system/lib64/libart.so 0 0 0644 install_overwrite /system/lib64/libart-compiler.so 0 0 0644 install_overwrite /system/lib64/libart-disassembler.so 0 0 0644 install_overwrite /system/lib64/libsigchain.so 0 0 0644 install_nobackup /system/lib64/libxposed_art.so 0 0 0644fi

mkdir -p /system/priv-app/XposedInstallerchmod 0755 /system/priv-app/XposedInstallerchcon -h u:object_r:system_file:s0 /system/priv-app/XposedInstallercp system/priv-app/XposedInstaller/XposedInstaller.apk /system/priv-app/XposedInstaller/XposedInstaller.apkchmod 0644 /system/priv-app/XposedInstaller/XposedInstaller.apkchcon -h u:object_r:system_file:s0 /system/priv-app/XposedInstaller/XposedInstaller.apk

if [ "$API" -ge "22" ]; then find /system /vendor -type f -name '*.odex.gz' 2>/dev/null | while read f; do mv "$f" "$f.xposed"; donefi

echo "- Done"exit 0


三、新建xposed文件夹,将下载的SDK解压后得到system文件夹和script.sh放进去

安卓系统7.1搭建Xposed环境

四、运行下面代码

adb remountadb push xposed路径(拖到cmd即可) /systemadb shellsucd /system/xposedsh script.sh


安卓系统7.1搭建Xposed环境


五、重启模拟器,成功激活

安卓系统7.1搭建Xposed环境



禁止非法,后果自负

欢迎关注公众号:逆向有你

欢迎关注视频号:之乎者也吧

欢迎报名安卓逆向培训,报名微信(QQ):335158573



安卓系统7.1搭建Xposed环境


安卓系统7.1搭建Xposed环境

安卓系统7.1搭建Xposed环境

本文始发于微信公众号(web安全工具库):安卓系统7.1搭建Xposed环境

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月22日10:25:35
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   安卓系统7.1搭建Xposed环境http://cn-sec.com/archives/538557.html

发表评论

匿名网友 填写信息