首页
社区
课程
招聘
[原创]Frida日志收集查看工具 FridaNSLogger
发表于: 2020-1-14 21:59 16645

[原创]Frida日志收集查看工具 FridaNSLogger

2020-1-14 21:59
16645

FridaNSLogger可以在Frida中将日志信息通过socket连接发送至Mac端查看。
Mac端日志查看工具 FridaNSLoggerViewer 基于 NSLogger 修改实现。
项目地址

在Mac端启动日志查看器FridaNSLoggerViewer,默认监听 127.0.0.1:50010 ,并获取该Mac系统内网IP(比如192.168.2.10)

在Frida TypeScript工程中引用:

FridaNSLoggerViewer 效果如下图:
图片描述

Frida脚步内作为client,利用Frida的 SocketConnection 接口,将日志编码后发送;
FridaNSLoggerViewer作为socket服务端,可监听局域网内多个client发来的连接。NSLogger原有实现需要加密后的socket数据,FridaNSLoggerViewer对其修改,去掉了加密,支持 raw tcp packet.

新加入的client默认第一条消息发送设备信息,包含Frida版本,系统版本等信息。后续每条日志打包为一个LogMessage发送。

NSLogger接收的单个二进制数据包格式为:

举例:
一个LogMessage的数据包拆分如下:

(完)

 
 

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (5)
雪    币: 175
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
好文
2020-1-15 09:16
0
雪    币: 313
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
好东西
2020-2-13 15:37
0
雪    币: 244
活跃值: (190)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
咨询下lz,我也是在应用中将frida脚本作为client,然后nodejs写了个服务端,想实现tcp数据的双向传输,可是我这边客户端只有在连接后收到服务端一次数据,然后数据就收不到了,请问怎么用SocketConnection实时监听到服务端发过来的数据呢
2020-3-6 17:14
0
雪    币: 1058
活跃值: (1267)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
写了个demo测试了一下,Frida作为client,不停的read就行,下面是假设每次服务器发的包都是10字节,注意pkglen的设置。根据你自己的包的格式,修改每次读取的大小,注意有的包可能会被拆开收完。
const pkglen = 10;
function readRspData(socket:SocketConnection) {
    socket.input.read(pkglen).then ( (buf) => {
        console.log('read success, len', buf.byteLength, buf);
        readRspData(socket);
    }).catch((err)=> {
        console.log('read fail', err)
        //readRspData(socket);??
    })
}
2020-3-10 21:58
0
雪    币: 244
活跃值: (174)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
frida 上windows的相关分析好像比较少?
2021-6-8 16:11
0
游客
登录 | 注册 方可回帖
返回
//