frida 简单试用
  TEZNKK3IfmPf 2023年11月14日 54 0

内容来自官方访问,主要是一个学习试用

推荐基于venv

python3 -m venv venv
source venv/bin/activate
pip install frida-tools

案例

进行分析c 语言的函数调用

hello.c
#include <stdio.h>
#include <unistd.h>

void
f (int n)
{
printf ("Number: %d\n", n);
}

int
main (int argc,
char * argv[])
{
int i = 0;

printf ("f() is at %p\n", f);

while (1)
{
f (i++);
sleep (1);
}
}
构建

gcc -Wall hello.c -o hello
frida 钩子
hook.py

from __future__ import print_function
import frida
import sys

session = frida.attach("hello")
script = session.create_script("""
Interceptor.attach(ptr("%s"), {
onEnter: function(args) {
send(args[0].toInt32());
}
});
""" % int(sys.argv[1], 16))
def on_message(message, data):
print(message)
script.on('message', on_message)
script.load()
sys.stdin.read()

运行

  • 运行hello
    同时会包含地址
    地址信息 0x40057d

 

./hello 
f() is at 0x40057d
Number: 0

捕捉

python hook.py  0x40057d

效果

frida 简单试用

 

 

说明

以上是frida 一个简单使用,从功能体验上,frida 还是比较强大的,而且还是比较灵活的,很值得深入学习下

参考资料

​​https://frida.re/docs/functions/​​

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: Shell 运算符 下一篇: 转 C++常用的类库
  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

TEZNKK3IfmPf