吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2657|回复: 3
收起左侧

[IDA Plugin] 如何分析一个stripped ELF?这款IDA插件来帮忙

[复制链接]
Hcho 发表于 2022-12-1 10:50
本帖最后由 Hcho 于 2022-12-1 10:54 编辑

906228_P8YN4WEPQQ6QUCD.jpg
这两天有闲心了就把去年写的几个脚本整合成了一个 IDA 插件,希望对在座各位有所帮助。

背景

    分析 IOT 样本时经常会遇见被剥离符号的样本文件,此时如果直接进行分析则非常困难,所以需要还原其函数来帮助我们进行分析。
    这里放两张图对比使用插件前后,还原前甚至可以说是完全无法进行分析的:
    906228_CE73DN3EDMU586A.jpg
    906228_TVTX53KM2C3H23X.jpg

原理

    SysNR-FuncFinder 这款 IDA 插件使用的方法是通过 Linux System Call Table 进行还原(此处不进行详细讲解了,大家可以自行搜索 system call 的相关文章)
    简单来说是分析不同架构的汇编代码,然后使用 IDA Python 提取系统调用号,最后对应不同架构调用号的对应函数名进行 IDA 函数的重命名即可。

示例

    举例 8D5B7B806E35F6AE0BA02E9CAB4C3E5F,Linux 下使用 file 命令查看文件信息如下:
    906228_3YM4DURH8PHEE78.jpg
    拖进 IDA 查看可以发现,完全没有可读函数:
    906228_CE73DN3EDMU586A (1).jpg
    使用编写的插件可以自动依照框架对系统调用函数进行重命名(version 1.0版本支持4种主流框架)
    所有通过 NR 调用的系统函数都能进行还原,此时再进行分析可以说是如鱼得水:
    906228_UYXDRPQ7XJKEWNW.jpg

下载

    大家直接进github下载即可,有兴趣的也可以阅读一下代码。
    Github 链接:https://github.com/WPeace-HcH/SysNR-FuncFinder
    PS:(IDA >=7.4 and python3)

免费评分

参与人数 5威望 +1 吾爱币 +24 热心值 +5 收起 理由
Lucifer_BW + 1 + 1 热心回复!
笙若 + 1 + 1 谢谢@Thanks!
jgs + 1 + 1 谢谢@Thanks!
Tonyha7 + 1 + 1 谢谢@Thanks!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

lhp462 发表于 2022-12-2 20:46
还没看源码,是不是类似finger,谢谢楼主分享
lfordch 发表于 2022-12-2 23:40
娜美 发表于 2023-9-19 00:23
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 07:35

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表