Frida调试shellcode

admin 2022年7月3日01:52:46评论36 views字数 1189阅读3分57秒阅读模式

    我在以前讲过几篇shellcode调试的文章,有《汇编:定位 EIP/RIP》《如何调试shellcode》《识别和分析 shellcode的一些方法等。这篇文章也是和shellcode有关,这次我们结合Frida来看看效果。


一、思路

.用工具RunShell加载起来shellcode,但不执行;

.将Frida附加到工具进程中,Frida 将允许我们在不修改代码的情况下拦截 Win32 API。


工具及shellcode放在文后的网盘中供下载。


二、安装Frida

安装12.8.0版本,虽然不是最新的,但稳定。

python3 -m pip install frida==12.8.0

python3 -m pip install frida-tools==5.3.0


三、过程

打开RunShell64加载“x64-ret.bin”Shellcode文件,点击“Run”命令并不要确认运行Shellcode

Frida调试shellcode

然后打开命令提示符并将Frida附加到RunShell64进程ID (-p),指示该工具包含MessageBoxA 和 LoadLibrary API 函数 (-i):

Frida调试shellcode


frida-trace -p 129532 -i MessageBoxA -i LoadLibraryA

Frida调试shellcode

Frida将在当前目录中生成带有JS文件的handlers文件夹(在映射到modules/dlls的子目录中)来处理与我们在命令中指定的函数的函数调用/离开(onEnter/onLeave)相关的事件

Frida调试shellcode

让我们跳回RunShell64并点击Ok运行Shellcode,同时监控frida-trace 的输出

Frida调试shellcode

发现在这个shellcode中输出了三个API


四、修改JS

我们先来看看Frida生成的js文件,

Frida调试shellcode

我们将调整LoadLibraryA.JS中的代码,以了解Shellcode请求的是哪个DLL,以下是更新后:

Frida调试shellcode

再次运行 Shellcode,让我们检查输出:

Frida调试shellcode

再修改JS 代码需要修改为使用第一个参数(LPCSTR lpLibFilname)作为ANSI字符串(MessageBoxA 使用ANSI字符串)使用Memory.readAnsiString(args[0]):

Frida调试shellcode

再次运行 Shellcode

Frida调试shellcode

以上无需修改任何代码或使用任何挂钩库来拦截 Win32 API


例子二:拦截更改API的参数

    在上面的函数中有个MessageBoxA函数(以这个为例),我们想修改它的参数。这个功能很实用,在实际场景中分析很有用。


让我们通过更改消息框文本来调整在MessageBoxA.JS文件中传递给onEnter函数的参数:

Frida调试shellcode

再次运行 Shellcode

Frida调试shellcode

Frida功能强大!!!


下载:

链接:https://pan.baidu.com/s/1rCzwtityhe_phy7hsoBimA

提取码:gapm




原文始发于微信公众号(MicroPest):Frida调试shellcode

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月3日01:52:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Frida调试shellcodehttps://cn-sec.com/archives/1151624.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息