Kaynağa Gözat

rewrite decryption logic

Yuxin Wu 5 yıl önce
ebeveyn
işleme
0f97ecc9f0
4 değiştirilmiş dosya ile 15 ekleme ve 56 silme
  1. 2 42
      android-interact.sh
  2. 0 13
      compatibility.sh
  3. 0 1
      legacy/compatibility.sh
  4. 13 0
      legacy/compatibility.sh

+ 2 - 42
android-interact.sh

@@ -1,14 +1,11 @@
 #!/bin/bash
 # File: android-interact.sh
 # Date: Wed Nov 29 02:19:00 2017 -0800
-# Author: Yuxin Wu
 
 PROG_NAME=`python -c "import os, sys; print(os.path.realpath(sys.argv[1]))" "$0"`
 PROG_DIR=`dirname "$PROG_NAME"`
 cd "$PROG_DIR"
 
-source compatibility.sh
-
 # Please check that your path is the same, since this might be different among devices
 RES_DIR="/mnt/sdcard/tencent/MicroMsg"
 MM_DIR="/data/data/com.tencent.mm"
@@ -16,26 +13,7 @@ MM_DIR="/data/data/com.tencent.mm"
 echo "Starting rooted adb server..."
 adb root
 
-if [[ $1 == "uin" ]]; then
-	adb pull $MM_DIR/shared_prefs/system_config_prefs.xml 2>/dev/null
-	uin=$($GREP 'default_uin' system_config_prefs.xml | $GREP -o 'value=\"\-?[0-9]*' | cut -c 8-)
-	[[ -n $uin ]] || {
-		>&2 echo "Failed to get wechat uin. You can try other methods, or report a bug."
-		exit 1
-	}
-	rm system_config_prefs.xml
-	echo "Got wechat uin: $uin"
-elif [[ $1 == "imei" ]]; then
-	imei=$(adb shell dumpsys iphonesubinfo | $GREP 'Device ID' | $GREP -o '[0-9]+')
-	[[ -n $imei ]] || {
-		imei=$(adb shell service call iphonesubinfo 1 | awk -F "'" '{print $2}' | sed 's/[^0-9A-F]*//g' | tr -d '\n')
-	}
-	[[ -n $imei ]] || {
-		>&2 echo "Failed to get imei. You can try other methods mentioned in README, or report a bug."
-		exit 1
-	}
-	echo "Got imei: $imei"
-elif [[ $1 == "db" || $1 == "res" ]]; then
+if [[ $1 == "db" || $1 == "res" ]]; then
 	echo "Looking for user dir name..."
 	sleep 1  	# sometimes adb complains: device not found
 	# look for dirname which looks like md5 (32 alpha-numeric chars)
@@ -85,26 +63,8 @@ elif [[ $1 == "db" || $1 == "res" ]]; then
 				exit 1
 			}
 	fi
-elif [[ $1 == "db-decrypt" ]]; then
-	set -e
-	echo "Getting uin..."
-	$0 uin | tail -n1 | $GREP -o '\-?[0-9]*' | tee /tmp/uin
-	echo "Getting imei..."
-	$0 imei | tail -n1 | $GREP -o '[0-9]*' | tee /tmp/imei
-	echo "Getting db..."
-	$0 db
-	echo "Decrypting db..."
-	imei=$(cat /tmp/imei)
-	uin=$(cat /tmp/uin)
-	if [[ -z $imei || -z $uin ]]; then
-		>&2 echo "Failed to get imei or uin. See README for manual methods."
-		exit 1
-	fi
-	./decrypt-db.py EnMicroMsg.db $imei $uin
-	rm /tmp/{uin,imei}
-	echo "Done. See decoded.db"
 else
-	echo "Usage: $0 <res|db-decrypt>"
+	echo "Usage: $0 <res|db>"
 	exit 1
 fi
 

+ 0 - 13
compatibility.sh

@@ -1,13 +0,0 @@
-#!/bin/bash -e
-# $File: compatibility.sh
-# $Date: Tue Jun 16 22:23:36 2015 +0800
-# Author: Vury Leo <i[at]vuryleo[dot]com>
-
-if [ `uname` = 'Darwin' ]; then
-  GREP='grep -E'
-  MD5SUM='md5'
-else
-  GREP='grep -E'
-  MD5SUM='md5sum'
-fi
-

+ 0 - 1
legacy/compatibility.sh

@@ -1 +0,0 @@
-../compatibility.sh

+ 13 - 0
legacy/compatibility.sh

@@ -0,0 +1,13 @@
+#!/bin/bash -e
+# $File: compatibility.sh
+# $Date: Tue Jun 16 22:23:36 2015 +0800
+# Author: Vury Leo <i[at]vuryleo[dot]com>
+
+if [ `uname` = 'Darwin' ]; then
+  GREP='grep -E'
+  MD5SUM='md5'
+else
+  GREP='grep -E'
+  MD5SUM='md5sum'
+fi
+