首页
社区
课程
招聘
[原创]解决 《使用 frida 追踪android方法调用_超级醒目》 - TypeError: cannot read property 1 of null 的方法
发表于: 2019-7-5 10:40 7623

[原创]解决 《使用 frida 追踪android方法调用_超级醒目》 - TypeError: cannot read property 1 of null 的方法

2019-7-5 10:40
7623
环境:
frida - 12.6.9;
手机 - Nexus 5x android 6.0;
在帖子使用 frida 追踪android方法调用_超级醒目中介绍了很有用的方法追踪的思路,可是在实际使用的时候遇到了TypeError: cannot read property 1 of null的错误,自己阅读代码时将此处代码中(  Java.enumerateLoadedClasses({ onMatch: function(aClass) { // console.log("is--java--1--"+aClass.toString())  )注释取消掉以后发现了问题所在,输出的已加载的类名并没有已大佬写的正则表达式的形式输出,所以在正则匹配的时候出错了。这里的输出在我的测试环境下如下图:



各位在使用这个神器的时候,再遇到问题时多打印点日志出来,这样方便定位问题。再确定问题后,及时修改正则匹配规则。

PS: github上找到一个连接,应该这个才是原创作者。 raptor_frida_android_trace

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

最后于 2019-7-5 12:50 被nsec编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (5)
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
所以最后怎么解决的呢==  我也遇到同样问题了
2019-7-16 18:15
0
雪    币: 2155
活跃值: (4532)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
能分享修改成功后的代码吗 我这也出现一样的问题了
最后于 2019-8-8 16:54 被小黄鸭爱学习编辑 ,原因:
2019-8-8 16:29
0
雪    币: 2155
活跃值: (4532)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
去掉 Java.enumerateLoadedClasses 里面的 正则校验就行 

Java.enumerateLoadedClasses({
			onMatch: function(aClass) {
				//console.log("is--java--1--"+aClass.toString())
				if (aClass.match(pattern)) {

					//如果类名符合正则进入

					console.log("is--java--2--"+aClass)
					found = true;
					//match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
					// 该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。
//					var className = aClass.match(/[L](.*);/)[1].replace(/\//g, "."); //用于替换掉不符合类型的className
//					console.log('('+aClass.toString()+')-----'+className.toString());
					traceClass(aClass.toString())
				}

			},
			onComplete: function() {
		        console.log("遍历完成")
			}
		});

最后于 2019-8-8 16:54 被小黄鸭爱学习编辑 ,原因:
2019-8-8 16:53
0
雪    币: 2155
活跃值: (4532)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
北风飘然 所以最后怎么解决的呢== 我也遇到同样问题了
引用失败 重试
2019-8-8 16:56
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
老铁 能加个好友吗?
2019-12-24 16:40
0
游客
登录 | 注册 方可回帖
返回
//