0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux与Windows系统安装radare2+r2frida的方法简析

工程师邓生 来源:橙留香Park 作者:橙留香Park 2022-09-07 12:05 次阅读

0x01 Linux 安装radare2+r2frida 【推荐

Linux 系统安装,此处安装的系统为Ubuntu(我用得Ubuntu 18,不太推荐用Kali Linux,我这里使用Kali 2022版本的有些源依赖找不到或更新源容易出问题,以前版本没遇到过这种问题,大家看着来吧,如果Kali 用如下方法失败,建议用个干净点的Ubuntu系统来安装),步骤如下:

安装radare2

// 需要提前安装好需要的环境sudo apt install curl
sudo apt install nodejs
sudo apt install python3
sudo apt install python3-pip
sudo apt install git
sudo apt install frida//提前配置个科学上网的代理,因为要下载github上的东西,可能会下载失败export http_proxy="http://192.168.6.23:7890"export https_proxy="http://192.168.6.23:7890"// 接着git下载代系统中运行安装sudo git clone https://github.com/radareorg/radare2radare2/sys/install.sh
或自行下载好后丢到虚拟机中并运行安装,下面是解压和安装的命令
unzip radare2-master.zip
mv radare2-master radare2
radare2/sys/install.sh

在快安装好的结尾,会提示输入密码,然后自动配置一些环境变量等配置,此时就代表已安全好了

57319b04-2a73-11ed-ba43-dac502259ad0.png
5762fc80-2a73-11ed-ba43-dac502259ad0.png

安装r2frida依赖

sudo apt-get update && sudo apt-get upgrade -y
sudo apt install -y make gcc libzip-dev nodejs npm curl pkg-config git

依然优先推荐使用r2pm -ci r2frida命令自动化安装,如果失败的话再自行下载源码make install编译安装

r2pm -ci r2frida

57a24a34-2a73-11ed-ba43-dac502259ad0.png

安装成功将提示:

poYBAGMYGJmAGI-rAABQosPsMCg337.jpg

接着运行r2 frida://?显示帮助,测试插件是否安装成功,如下:

57b3c890-2a73-11ed-ba43-dac502259ad0.png

运行r2 frida://?显示帮助,测试插件是否安装成功,如下:

打开开发者选项里的USB调试

设置里面,关于本机,然后狂点系统版本号,即可开启开发者模式

返回设置的关于本机界面,会多一个开发者选项(有些是狂点版本号后直接跳转到开发者选项界面)

点击开启USB调试开关按钮

获取当前模拟器的CPU,好选择frida-server的版本

adb shell getprop ro.product.cpu.abi

AndroidCPU架构:

CPU架构 描述
armeabi 第5代 ARM v5TE,使用软件浮点运算,兼容所有ARM设备,通用性强,速度慢
armeabi-v7a 第7代 ARM v7,使用硬件浮点运算,具有高级扩展功能
arm64-v8a 第8代,64位,包含 Aarch32、Arch64两个执行状态对应32、64bit
x86 intel32位,一般用于平板电脑
x86_64 intel64位,一般用于平板电脑
mips 少接触
mips64 少接触

手机上运行Frida服务端:

adb push frida-server-15.2.2-android-x86  /data/local/tmp/adb shell 
su
cd /data/local/tmp/chmod 777 frida-server-15.2.2-android-x86./frida-server-15.2.2-android-x86

:有些APP会检测本地是否启动了frida-server,以及监听是否开启了27042端口。有反调试的话,可以将名字重新改成别的,fshbbx86之类的,以及更改端口,此处不介绍反检测绕过的知识,感兴趣的同学可以私下自行了解

./data/local/tmp/fshbbx86 -l 0.0.0.0:8080  (8080为自定义端口)

启动frida并修改监听端口(防止部分app监测默认端口)【可选】

adb shell /data/local/tmp/frida-server-15.2.2-android-x86 -l 0.0.0.0:8080

转发frida端口

adb forward tcp:27042 tcp:27042adb forward tcp:27043 tcp:27043adb forward 

tcp:38089 tcp:38089

frida-ls-devices查看USB的设备的名称或IP

frida-ls-devices

57d351ba-2a73-11ed-ba43-dac502259ad0.png

对于USB调试iOS/Android应用程序,使用如下操作。需要注意,spawn 可以替换为OR,并且名称可以是应用程序名称或PID

$ r2 frida://spawn/usb/         # 枚举设备$ r2 frida://spawn/usb//        # 枚举第一个设备的应用程序$ r2 frida://spawn/usb//HelloWorldJNI # 运行 HelloWorldJNI 应用程序

57eb8c4e-2a73-11ed-ba43-dac502259ad0.png

要使用r2frida的命令,得在命令的前面加上或=!,比如获取 help:=!?或?,此处的命令前面加运行失败了,用的=!正常运行成功

=!?

581b7c6a-2a73-11ed-ba43-dac502259ad0.png
58487daa-2a73-11ed-ba43-dac502259ad0.png

如果想要获取某个字母有哪些命令只需要在其后面加?即可,如下:

=!dm?

586292bc-2a73-11ed-ba43-dac502259ad0.png

这里用到的匹配符~,这个符号类似grep命令;也可以以radare的格式输出,只需要在命令后面加个*符号,如下:

$ =!dm*~sg.vantagepoint.helloworldjni

5885abb2-2a73-11ed-ba43-dac502259ad0.png

如果你想更方便的把获取到的数据直接使用,可以输出为JSON格式,只需要在命令后面加j,如下:

$ =!dmj~sg.vantagepoint.helloworldjni

58a4d186-2a73-11ed-ba43-dac502259ad0.png

0x02 Windows 安装radare2+r2frida【不推荐】

提前准备环境:Visual Studio 2019、Node.js 14.17.4、Cygwin 3.2.0(记得选择wget)、Frida 15.1.2
(提前安装好以上环境,VS版本至少为2015)

在Linux和Windows上安装r2frida:https://blog.xhyeax.com/2021/10/01/r2frida-install-on-linux-and-win/

下载radare2的radare2-5.7.6-w64.zip,解压到任意目录,将.. adare2in目录添加到PATH环境变量后,执行r2 -v查看版本号

58eff90e-2a73-11ed-ba43-dac502259ad0.png

下载r2frida,然后编辑build.bat,修改frida_version为frida安装版本,修改R2_BASE为radare2安装目录(不需要bin)

frida --version

590a7ad6-2a73-11ed-ba43-dac502259ad0.png
592a2214-2a73-11ed-ba43-dac502259ad0.png

将.. adare2includelibr _cons.h以UTF-8 with BOM编码重新保存

5949b160-2a73-11ed-ba43-dac502259ad0.png

在cmd中打开该目录,使用vcvarsall.bat初始化环境,然后执行安装脚本

"[Visual Studio安装位置]VCAuxiliaryBuildvcvarsall.bat" x64.uild.bat install

596f6df6-2a73-11ed-ba43-dac502259ad0.png

安装成功将提示(我这里安装失败了

Installing...Copying 'io_frida.dll' to C:Usersxhy.localshare
adare2plugins        1 file(s) copied.


审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • WINDOWS
    +关注

    关注

    3

    文章

    3440

    浏览量

    87145
  • Linux系统
    +关注

    关注

    4

    文章

    567

    浏览量

    26923
  • 虚拟机
    +关注

    关注

    1

    文章

    855

    浏览量

    27381

原文标题:Linux+Windows安装r2Frida环境的配置及使用方法

文章出处:【微信号:哆啦安全,微信公众号:哆啦安全】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    linuxwindows的区别 linux系统一般用来干嘛

    LinuxWindows是两种不同的操作系统,有着不同的设计理念和用途。本文将对LinuxWindows的区别进行详细分析,并介绍
    的头像 发表于 02-05 14:06 331次阅读

    i.MX6ULL——ElfBoard ELF1板卡 windows 与 ubuntu 系统互传文件 的方法

    的:内核源码 linux-4.1.15-elf1.tar.bz2、文件系统(本节以 rootfs.tar.bz2 为例)、命令行测试程序 elf1_cmd_watchdog.c 放到 Wind
    发表于 12-02 09:27

    查看python安装路径的方法

    如何查看Python安装路径,以及各个操作系统下的细节和注意事项。 一、Windows操作系统下查看Python安装路径的
    的头像 发表于 11-29 14:54 1030次阅读

    安装Linuxwindows在哪启动

    )是一个多操作系统引导加载程序,可以管理多个操作系统的启动。它允许用户在系统启动时选择要运行的操作系统。本文将详细介绍 Linux
    的头像 发表于 11-28 15:02 515次阅读

    linux安装网卡驱动教程

    Linux系统安装网卡驱动是一个比较基础的操作,下面我将为你详细讲解如何安装网卡驱动。 第一步,检查网卡型号和驱动支持情况:首先,你需要确定你的网卡型号,并查看该网卡型号在
    的头像 发表于 11-17 11:11 1647次阅读

    linuxwindows的区别

    LinuxWindows是两种不同的操作系统,它们之间的区别包括: 源代码开放性:Linux是开源的,意味着任何人都可以获取并修改其源代码,这为开发者提供了很大的便利性。而
    的头像 发表于 11-08 11:08 2504次阅读

    frida-inject工具使用及说明 内置frida-inject工具到手机系统

    frida-inject是frida中提供的可以直接放到手机端执行注入js脚本到App程序进行hook的工具。也就是说使用frida-inject命令可以脱离PC端执行注入了。
    的头像 发表于 10-26 10:42 3432次阅读

    Windows11上Linux安装教程

    超简单,不安装虚拟机,Windows11运行Linux
    发表于 10-24 15:11 380次阅读
    <b class='flag-5'>Windows</b>11上<b class='flag-5'>Linux</b><b class='flag-5'>安装</b>教程

    安装Linux系统安装工具

    安装_Linux系统安装工具,可以安装各类Linux操作
    发表于 09-11 10:21 0次下载

    WindowsLinux为什么可以彼此ping的通呢?

    为什么 VMware 会给我多创建了两个网络呢?WindowsLinux 为什么可以彼此 ping 的通呢
    的头像 发表于 07-07 09:39 991次阅读
    <b class='flag-5'>Windows</b>和<b class='flag-5'>Linux</b>为什么可以彼此ping的通呢?

    iTOP-RK3588 | Linux系统和应用开发手册

    参考学习——《itop-3588开发板Linux系统和应用开发手册》,手册分别对Buildroot、Debian、Ubuntu的系统开发以及Windows QT、Ubuntu QT的开
    发表于 06-16 14:39

    Linux系统安装前的一些预备知识

    本文会介绍一些Linux系统安装前的一些预备知识,会涉及到MBR、BIOS和Boot loader等计算机基础概念。
    的头像 发表于 05-12 15:27 420次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>系统</b><b class='flag-5'>安装</b>前的一些预备知识

    为什么服务器选择Linux而不是Windows

    系统安装和使用Linux是避免病毒和恶意软件的最简单方法。在开发Linux时,请牢记安全性方面,与W
    的头像 发表于 05-12 11:19 1301次阅读

    LINUX下软件安装与管理的方法

    `LINUX`下软件安装方式主要有以下`4种`: * 源码方式安装Linux软件 * RPM工具方式安装软件 * yum方式在线
    的头像 发表于 05-12 10:25 566次阅读

    OpenHarmony智慧设备开发-芯片模组T507

    降噪,自动调色系统和梯形校正模块可以提供提供流畅的用户体验和专业的视觉效果。 典型应用场景: 工业控制、智能驾舱、智慧家居、智慧电力、在线教育等。 、*附件:OpenHarmony智慧设备开发-芯片模组T507.docx
    发表于 05-11 16:34