当前位置: 首页 > news >正文

用ida插件快速审计函数调用

如果xref窗口会显示调用的伪代码,也许就不会有今天...

前言

我又要在前言絮絮叨叨一下我是为什么要做这个小插件的了...就不看

在审查程序的漏洞的时候,我们可能会重点关注那么几个重点函数的调用:system肯定是重中之重,printf系列也可以注意一下有没有fmt漏洞,还有其他的一些库函数。然而这些检查需要我去看这个函数所有的调用,我希望能够审计函数的调用是否干净,比如system("ls");就没什么值得怀疑的,但是system(v10);我就可以看一下这个v10是一个硬编码的命令,还是一个可以被用户写入的变量;或者检查printf、sprintf里面是否有fmt或者越界。但是似乎没有一个界面或者工具来列举出所有的调用,我们都知道ida可以查询函数的交叉引用,对着一个函数/变量甚至一些常量按x就可以查看它的交叉引用表。但是用过的都知道,这个界面很干净,基本上提供不了什么信息。
image
如果有一个类似xref窗口可以提供反汇编,那该多好啊!

功能介绍

项目链接
按下ctrl+shift+c或是点击Edit->Plugins->Function Call Viewer,打开输入框,输入函数名或地址
image

博客发布后我还会继续改进这个插件,因此本文的一些截图可能与实际略有出入。

然后回车,就可以看到这个函数的所有调用、以及调用者的地址啦!
image
双击你怀疑的调用,就会跳到对应的反汇编,手工确定这些调用是否安全
image
然后你也可以在该窗口内使用ctrl+f进一步的筛选你要搜索的值
image

由于本人技术有限,有一些Todo还未能实现,后续研究明白了我会加入以下功能:伪代码和反汇编窗口的右键菜单添加新的行为,支持在选定函数后右键或者使用快捷键可以直接查找这个函数的调用。以及优化搜索体验,现在的搜索是ida自带的,似乎不支持正则?如果这个地方支持正则匹配我想这样可以进一步优化你的使用体验。如果还有其他改进建议还请留言讨论,有发现bug可以在这里留言也可以在github上提issue给我!

http://www.rkmt.cn/news/9596.html

相关文章:

  • schematool -initSchema -dbType mysql
  • tsx 图论选讲
  • 阿里云通义MoE全局均衡技巧:突破专家负载失衡的革新之道
  • .NET Polly 全面指南:从5W2H维度深度解析
  • Day19构造器详解
  • 【院士报告|EI检索稳定|大连理工大学主办】第四届能源与动力工程国际学术会议(EPE 2025)
  • 20250509_信安一把梭_黑客
  • 达芬奇标记测量线文字标题动画预设(Tracked Measuring Lines)使用指南
  • css样式:button边框贪吃蛇加载效果
  • 什么是NIC(网络接口卡)?
  • 视频剪辑效率翻倍!CyberLink PowerDirector 从入门到专业的全能解决方案
  • SAP-ABAP中STOP,EXIT,CHECK,RETURN,CONTINUE,LEAVE,REJECT的区别
  • Arduino ide 软件 不建议大家使用 缺点多多
  • Refit Consul
  • 麒麟服务器操作系统查询可用的内核版本以及安装和降级命令
  • 20250406_信安一把梭_测试篇
  • 3123004806软件工程查重项目
  • DeepSeek大模型混合专家模型,DeepSeekMoE 重构 MoE 训练逻辑 - 教程
  • Queue 配合Thread使用
  • 以下内容在if判定的时候会被判定为 假
  • 不同Windows系统中支持的最新.Net Framework/.NET版本
  • 每周读书与学习-初识JMeter 元件(二)
  • 深入解析:【Spring 全家桶】Spring MVC 快速入门,开始web 更好上手(下篇) , 万字解析, 建议收藏 ! ! !
  • 实用指南:ThinkPHP 6框架常见错误:htmlentities()函数参数类型问题解决
  • 完整教程:深入剖析 Chrome PartitionAlloc 内存池源码原理与性能调优实践
  • 如何构建embeding 的就是pytorch 中
  • C# 第 17天 028 029接口,依赖反转,单元测试
  • 群晖安装套件,套件版本与群晖版本不兼容;
  • 中间件专题:Redis
  • 负载排查和分析四