يتطلب الهاتف المحمول لدعم Step Counter Sensor
مطلوب Root
للحصول على أذونات القراءة والكتابة لملف stepcounter.cfg
. يستخدم التطبيق أذونات الجذر فقط لتنفيذ الأوامر التالية:
chmod o+rw /data/data/com.tencent.mm/MicroMsg/stepcounter.cfg
chmod o+x /data/data/com.tencent.mm/MicroMsg/
إذا كنت لا ترغب في منح إذن الجذر للتطبيق، أو لم يقم التطبيق بتنفيذ الأمر بنجاح، فيمكنك أيضًا تنفيذ الأمرين أعلاه يدويًا.
لا تغير الكثير في وقت واحد، حيث سيتم اكتشاف ذلك باعتباره حالة شاذة. لن ينجح التغيير من 3k إلى 5w، ولم أختبر الآخرين.
يدعم أنظمة Android 5.1 والإصدارات الأحدث، وتم اختباره فقط على أنظمة Android 7.x
من خلال دراسة وظيفة onSensorChanged
الخاصة بـ WeChat، وجدنا أن عدد خطوات تمرين WeChat مخزنة في الملف /data/data/com.tencent.mm/MicroMsg/stepcounter.cfg
. استخدم أمر ملف Linux للتحقق من تنسيق ملف stepcounter.cfg
والنتيجة هي stepcounter.cfg: Java serialization data, version 5
. تتم قراءة وكتابة هذا النوع من الملفات من خلال ObjectInputStream
و ObjectOutputStream
. في الواقع، يحفظ ملف stepcounter.cfg
ملف HashMap
، وتنسيقه هو:
{209=47669212487765, 201=6011, 202=150160320, 203=45, 204=1501640915492}
في
201
مع العدد الحالي للخطوات اليوم.202
تتوافق مع وقت البدء اليوم (الطابع الزمني / 10)203
مع عدد خطوات step counter sensor
204
مع وقت الحفظ الأخير لذلك، يمكن تعديل عدد خطوات WeChat عن طريق تعديل القيمة المقابلة لقيمة المفتاح 201
. عند التعديل، سيستدعي التطبيق am.killBackgroundProcesses("com.tencent.mm")
لإيقاف عملية WeChat في الخلفية (لأن البيانات ستتم قراءتها من stepcounter.cfg
فقط عند بدء WeChat، وسيتم حفظ البيانات في مواقع أخرى مرات).
وأخيرًا، أوصي باستخدام أداة Hook Frida