feat: new VTAP fail ~check method & vtapfail/vtapstillfail as a function
using logcat for finding VTAP activity, if it exists then open vtapfix site can handle some specific cases such as VTAP is provisioned, but the app not work and crashing or opens VTAP activity it might happens with KernelSU (original packageName) , the app is triggering but VTAP still got provisioned Signed-off-by: Cuynu <cuynu@proton.me>
This commit is contained in:
parent
f30a77966b
commit
e1de578d25
5 changed files with 65 additions and 35 deletions
|
|
@ -2,21 +2,48 @@
|
|||
|
||||
SYSLANGVI="$(getprop persist.sys.locale | grep vi-VN)"
|
||||
|
||||
INSTALLEN="https://git.disroot.org/mbcp/info_en/wiki/mbcpinstall"
|
||||
INSTALLVI="https://git.disroot.org/mbcp/info_vi/wiki/mbcpinstall"
|
||||
|
||||
notmbcp() {
|
||||
echo "MB Bank [com.mbmobile] is installed, but it seems like that the app is NOT MBCP"
|
||||
echo "Please install MBCP v6.4.60+ in order to use this module !"
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info/wiki/mbcpinstall
|
||||
[[ $SYSLANGVI ]] && am start -a android.intent.action.VIEW -d $INSTALLVI || am start -a android.intent.action.VIEW -d $INSTALLEN
|
||||
exit 1
|
||||
}
|
||||
|
||||
vtapfail() {
|
||||
echo "VTAP is not provisioned!"
|
||||
echo "App first normal launch required!"
|
||||
iptables -t nat -F OUTPUT
|
||||
am start -n com.mbmobile/io.flutter.plugins.MainActivity
|
||||
logcat -c
|
||||
sleep 20
|
||||
logcat -d | grep VGFullScreenDialog && vtapstillfail
|
||||
am force-stop com.mbmobile
|
||||
}
|
||||
|
||||
vtapstillfail() {
|
||||
echo "VTAP provision failed or triggering! Cannot continue!"
|
||||
echo "If you have low-end device (eg : Vsmart Joy 2+)"
|
||||
echo "Try to reinstall module again 3 more times."
|
||||
if [ $SYSLANGVI ]; then
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info_vi/wiki/vtapfix
|
||||
exit 169
|
||||
else
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info_en/wiki/vtapfix
|
||||
exit 169
|
||||
fi
|
||||
}
|
||||
|
||||
# Check for original MB Bank app
|
||||
for library in $(find /data/app -name libvvb2060.so | grep com.mbmobile) ; do notmbcp ; done
|
||||
|
||||
# Check VTAP status to ensure that it must be provisioned
|
||||
echo "Checking VTAP status..."
|
||||
echo "VTAP status : " && cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || sh 'vtapnotinit.sh'
|
||||
echo "VTAP status : " && cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || vtapfail || exit 169
|
||||
echo "Checking VTAP status again..."
|
||||
cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || sh 'vtapstillfail.sh' || exit 169
|
||||
cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || vtapstillfail || exit 169
|
||||
|
||||
|
||||
# Delete /data/magisk if it exists so MB doesnt failling when eKYC with error code EKYC3002-MS6998 for Magisk users
|
||||
|
|
@ -25,6 +52,7 @@ echo "Deleting /data/magisk if it exists..."
|
|||
find /data -name 'magisk_backup*' -delete
|
||||
echo Forcing stop MB Bank...
|
||||
am force-stop com.mbmobile
|
||||
logcat -c
|
||||
rm -rf /data/data/com.mbmobile/files/0*
|
||||
rm -rf /data/data/com.mbmobile/files/1*
|
||||
rm -rf /data/data/com.mbmobile/files/2*
|
||||
|
|
@ -44,6 +72,7 @@ echo "Press [Try again] after got 1005/1007/VPN error on MB, so it's can bypass
|
|||
iptables -t nat -A OUTPUT -p tcp -j DNAT --to-destination 162.159.152.4
|
||||
am start -n com.mbmobile/io.flutter.plugins.MainActivity
|
||||
sleep 20
|
||||
logcat -d | grep VGFullScreenDialog && vtapstillfail
|
||||
echo "Restoring network traffic"
|
||||
# Reference : https://gist.github.com/jstrosch/3190568 (Line 7)
|
||||
iptables -t nat -F
|
||||
|
|
|
|||
|
|
@ -51,6 +51,30 @@ tsnghma() {
|
|||
pm hide com.tsng.hidemyapplist
|
||||
}
|
||||
|
||||
vtapfail() {
|
||||
echo "VTAP is not provisioned!"
|
||||
echo "App first normal launch required!"
|
||||
iptables -t nat -F OUTPUT
|
||||
am start -n com.mbmobile/io.flutter.plugins.MainActivity
|
||||
logcat -c
|
||||
sleep 20
|
||||
logcat -d | grep VGFullScreenDialog && vtapstillfail
|
||||
am force-stop com.mbmobile
|
||||
}
|
||||
|
||||
vtapstillfail() {
|
||||
echo "VTAP provision failed or triggering! Cannot continue!"
|
||||
echo "If you have low-end device (eg : Vsmart Joy 2+)"
|
||||
echo "Try to reinstall module again 3 more times."
|
||||
if [ $SYSLANGVI ]; then
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info_vi/wiki/vtapfix
|
||||
exit 169
|
||||
else
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info_en/wiki/vtapfix
|
||||
exit 169
|
||||
fi
|
||||
}
|
||||
|
||||
[[ -d /data/data/com.tsng.hidemyapplist ]] && tsnghma
|
||||
|
||||
[[ -d /data/data/io.github.Nirtal0.magisk ]] && maliciousmagisk
|
||||
|
|
@ -108,11 +132,6 @@ else
|
|||
pm grant com.mbmobile android.permission.READ_PHONE_STATE
|
||||
fi
|
||||
|
||||
unzip -o "$ZIPFILE" 'vtapnotinit.sh'
|
||||
unzip -o "$ZIPFILE" 'vtapstillfail.sh'
|
||||
chmod +x 'vtapstillfail.sh'
|
||||
chmod +x 'vtapnotinit.sh'
|
||||
|
||||
# Delete /data/magisk if it exists so MB doesnt failling when eKYC with error code EKYC3002-MS6998 for Magisk users
|
||||
[ -d /data/magisk ] && echo "Magisk folder found! deleting..." && rm -r /data/magisk
|
||||
find /data -name 'magisk_backup*' -delete
|
||||
|
|
@ -128,13 +147,16 @@ fi
|
|||
|
||||
# Check VTAP status to ensure that it must be provisioned
|
||||
echo "Checking VTAP status..."
|
||||
echo "VTAP status : " && cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || sh 'vtapnotinit.sh'
|
||||
echo "VTAP status : " && cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || vtapfail || exit 169
|
||||
echo "Checking VTAP status again..."
|
||||
cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || sh 'vtapstillfail.sh' || exit 169
|
||||
cat '/data/data/com.mbmobile/databases/vtap' | grep "true" && echo "VTAP is provisioned!" || vtapstillfail || exit 169
|
||||
|
||||
echo Force closing MBBank app...
|
||||
am force-stop com.mbmobile
|
||||
|
||||
# Clear device logcat to ensure that no previous VTAP activity exists
|
||||
logcat -c
|
||||
|
||||
# Support for Biz MB Bank v2.0 (Flutter version)
|
||||
for library in $(find /data/app -name libholdingshadow.so | grep com.mbbank.biz.prod) ; do rm $library ; done
|
||||
sleep 2
|
||||
|
|
@ -158,6 +180,10 @@ echo "Press [Try again] after got 1005/1007/VPN error on MB, so it's can bypass
|
|||
iptables -t nat -A OUTPUT -p tcp -j DNAT --to-destination 162.159.152.4
|
||||
am start -n com.mbmobile/io.flutter.plugins.MainActivity
|
||||
sleep 20
|
||||
|
||||
# Look for VTAP activity from logcat
|
||||
logcat -d | grep VGFullScreenDialog && vtapstillfail
|
||||
|
||||
echo "Restoring network traffic"
|
||||
# Reference : https://gist.github.com/jstrosch/3190568 (Line 7)
|
||||
iptables -t nat -F
|
||||
|
|
|
|||
|
|
@ -6,8 +6,6 @@ done
|
|||
|
||||
# Delete /data/magisk if it exists so MB doesnt failling when eKYC with error code EKYC3002-MS6998 for Magisk users
|
||||
[[ -d /data/magisk ]] && rm -r /data/magisk
|
||||
[[ -d /data/data/io.github.x0eg0.magisk ]] && rm -r /data/adb/modules/zdefend-fix
|
||||
[[ -d /data/data/io.github.Nirtal0.magisk ]] && rm -r /data/adb/modules/zdefend-fix
|
||||
rm -rf /data/data/com.mbmobile/files/0*
|
||||
rm -rf /data/data/com.mbmobile/files/1*
|
||||
rm -rf /data/data/com.mbmobile/files/2*
|
||||
|
|
|
|||
|
|
@ -1,7 +0,0 @@
|
|||
#!/system/bin/sh
|
||||
echo "VTAP is not provisioned!"
|
||||
echo "App first normal launch required!"
|
||||
iptables -t nat -F OUTPUT
|
||||
am start -n com.mbmobile/io.flutter.plugins.MainActivity
|
||||
sleep 10
|
||||
am force-stop com.mbmobile
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
#!/system/bin/sh
|
||||
|
||||
SYSLANGVI="$(getprop persist.sys.locale | grep vi-VN)"
|
||||
|
||||
echo "VTAP provision failed! Cannot continue!"
|
||||
echo "If you have low-end device (eg : Vsmart Joy 2+)"
|
||||
echo "Try to reinstall module again 3 more times."
|
||||
|
||||
if [ $SYSLANGVI ]; then
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info_vi/wiki/vtapfix
|
||||
else
|
||||
am start -a android.intent.action.VIEW -d https://git.disroot.org/mbcp/info_en/wiki/vtapfix
|
||||
fi
|
||||
|
||||
exit 100
|
||||
|
||||
Loading…
Reference in a new issue