使用frida框架进行一次简单的hook来获取新闻类APP的sign值

工具准备:frida框架 python 夜神模拟器 需要hook的APP(这里是以掌中惠州为例)

1.找到需要hook的函数

这里,我是想要得到掌中惠州APP的url中的sign值

示例:

https://api.xiaodingkeji.com/api/News/GetArticleList?sign=ab7b25edfd90cb17c73375422a75b2ff&stamp=15893375128339rlczb900409171512f7d&ColumnId=143&newspapergroupId=16752&page=1&PageSize=20
 

所以,通过jdax 找到md5加密方法

使用frida框架进行一次简单的hook来获取新闻类APP的sign值_第1张图片

2.使用固有的代码

使用frida框架进行一次简单的hook来获取新闻类APP的sign值_第2张图片

代码如下:

import frida,sys

jscode ="""
Java.perform(function(){
     var utils =Java.use("com.aheading.news.huizhourb.utils.MD5Util");
     utils.mad5.implementation =function(a){
         console.log("Hook Strat ...");
         send("Success");
         send(a);
        
    }
});
"""

def message(message,data):
    if message["type"]=='send':
        print("[*] {0}".format(message['payload']))
    else:
        print(message)
        
process = frida.get_remote_device().attach("com.aheading.news.huizhourb")
script = process.create_script(jscode)
script.on("message",message)
script.load()
sys.stdin.read()

 

使用方法:

1.包名+类名

2.函数名(方法名)

3.APP包名

APP包名获取方法:使用APK-helper 

将APP拖拉进去

 

2.notepad运行设置

使用frida框架进行一次简单的hook来获取新闻类APP的sign值_第3张图片

输入:

3.frida启动

先连接模拟器 adb connect 127.0.0.1:62001(我是用的夜神模拟器,别的模拟器可能不相同)

将下载好的frida推送到模拟器中(位置为/data/local/tmp)

重命名以下,方便使用(这文件夹名字也太长了)

然后改一下权限(chmod 777)

打开fs(启动frida服务器)

使用frida框架进行一次简单的hook来获取新闻类APP的sign值_第4张图片

输入下面代码  进行端口转发~

使用frida框架进行一次简单的hook来获取新闻类APP的sign值_第5张图片

运行上面的python代码

打开模拟器掌中惠州APP

成功~

使用frida框架进行一次简单的hook来获取新闻类APP的sign值_第6张图片

这就得到了md5 加密前的sign值

 

你可能感兴趣的:(实习,java)