首页
社区
课程
招聘
未解决 fd hook 内存修改的时候 writeByteArray 错误
发表于: 2020-9-5 12:00 3396

未解决 fd hook 内存修改的时候 writeByteArray 错误

2020-9-5 12:00
3396
        // 获得某个函数的地址
        var SoAdd = Module.findBaseAddress("libxiaojianbang.so");
        console.log("SoAdd: ",SoAdd);

         // arm32 下
        var cstrAdd = SoAdd.add(0x37DC + 1);
        console.log("cstrAdd: " + cstrAdd);


        // 写内存数据 
        cstrAdd.writeByteArray(stringToBytes("ranwang"));
        // 这里报错 Error: access violation accessing 0xa0b457
        // 访问 0xa0b457 时发生访问冲突



        function stringToBytes(str) {  
            var ch, st, re = []; 
            for (var i = 0; i < str.length; i++ ) { 
            ch = str.charCodeAt(i);  
            st = [];                 
            do {  
                st.push( ch & 0xFF );  
                ch = ch >> 8;          
            }    
            while ( ch );  
            re = re.concat( st.reverse() ); 
            } 
        return re;   

        }

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

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
各位大佬 有知道这是为啥么 小弟才学 百度了好久 没百度到 官方文档又看不懂 全是英文
2020-9-5 12:01
0
雪    币: 201
活跃值: (510)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3

我找到办法了,修改内存之前先修改权限,比如:

Memory.protect(strAddress, 4096, 'rw-');
strAddress.writeUtf8String("abcd");


详见frida api :

Memory.protect(address, size, protection)

最后于 2021-3-10 01:08 被小想法编辑 ,原因:
2021-3-10 00:06
0
游客
登录 | 注册 方可回帖
返回
//