当前位置:   article > 正文

Android hook微信 apk 实时获取微信聊天消息记录_安卓wechathook

安卓wechathook

目录

第一步:安装apk的手机进行root

第二步:用Root Explorer把db文件赋予更高的权限

第三步:开始撸代码啦, 由于微信的数据db文件进行加密操作所以咱们这边需要解密 获取手机序列号IMEI号,

获取微信用户信息号需要解析xml,这里解析xml用到的是XmlPullParser进行解析的 这里path路径是:/data/data/com.tencent.mm/shared_prefs/system_config_prefs.xml

有上面两个字符串计算出打开db的密码, 这里的计算需要用到md5算法进行计算操作先把md5这段代码贴出来 计算密码调用与这几段代码进行配合

拿到密码后可以对数据库的读写进行操作

在初始activity调用

最后在log内就能看到你截取到的微信聊天记录,这里设置的10秒获取一次。 


说明:纯属发烧而生 

第一步:安装apk的手机进行root

因为需要读取微信聊天记录信息表,所以手机需要root,这样给apk开启更大的权限,这里进行root的工具有好多比如360root大师等相关的root工具。

第二步:用Root Explorer把db文件赋予更高的权限

手机上安装Root ExPlorer软件,设置/data/data/com.tencent.mm/MicroMsg/b93e23895b9f5b4a8d781ba8d702cfe8/EnMicroMsg.db这些文件以及文件夹下的EnMicroMsg.db进行权限设定,赋予所有的权限(说明:这里的包名b93e23895b9f5b4a8d781ba8d702cfe8每个用户都是不一样的,需要用户你进行自己查看设置。) 
这里写图片描述

第三步:开始撸代码啦, 
由于微信的数据db文件进行加密操作所以咱们这边需要解密 
获取手机序列号IMEI号,

  1. public static String getIMEI(Context context) {
  2. TelephonyManager manager = (TelephonyManager) context.getSystemService(TELEPHONY_SERVICE);
  3. if (manager.getDeviceId() != null && manager.getDeviceId().length() > 0) {
  4. return manager.getDeviceId();
  5. } else {
  6. return "";
  7. }
  8. }

获取微信用户信息号需要解析xml,这里解析xml用到的是XmlPullParser进行解析的 
这里path路径是:/data/data/com.tencent.mm/shared_prefs/system_config_prefs.xml

  1. public static String getUin(String path) {
  2. try {
  3. FileInputStream inputStream = new FileInputStream(new File(path));
  4. XmlPullParser parser = Xml.newPullParser();
  5. parser.setInput(inputStream, "UTF-8");
  6. int eventType = parser.getEventType();// 产生第一个事件
  7. while (eventType != XmlPullParser.END_DOCUMENT) { //处理事件,不碰到文档结束就一直处理
  8. switch (eventType) {
  9. case XmlPullParser.START_DOCUMENT:
  10. // 不做任何操作或初开始化数据
  11. break;
  12. case XmlPullParser.START_TAG:
  13. // 解析XML节点数据
  14. // 获取当前标签名字
  15. String tagName = parser.getName();
  16. if ("int".equals(parser.getName())) {
  17. String name = parser.getAttributeValue(0);
  18. String value = parser.getAttributeValue(1);
  19. Log.e("int", "name:" + name + ",value:" + value);
  20. return value;
  21. }
  22. break;
  23. case XmlPullParser.END_TAG:
  24. // 单节点完成,可往集合里边添加新的数据
  25. break;
  26. case XmlPullParser.END_DOCUMENT:
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/968063
推荐阅读
相关标签
  

闽ICP备14008679号