|
[求助]IDA插件编程的问题:动态得到堆栈中各个变量的地址及长度
是的,这三个头文件很重要。 查到一篇帖子,OPENRCE上的, http://www.openrce.org/forums/posts/752 也是讨论如何操作局部变量。供你翻阅。 |
|
[原创]如何制作vc静态链接库的IDA SIG文件?
mark一下,支持tnttools。 |
|
[求助]IDA插件编程的问题:动态得到堆栈中各个变量的地址及长度
BeQuick朋友,你提的问题很难, 对你的思路,我还没领会透,刚才在frame.hpp中搜索到一些 stack variable的字样,该头文件好像描述了一些关于 堆栈操作的一些函数,你可能已经分析过了吧。 |
|
[讨论]segment一词如何翻译,
l00p的答案是正解,可能是我对这个segment概念比较模糊, IDA都是反汇编代码,所以用“段”似乎更符合上下文,最后发 的翻译文档也用的是“段”这一翻译术语。 谢谢大家了。 |
|
[原创]中国第一代程序员的呕血力作
不错的,佩服osoon的思考能力。 |
|
[翻译]《IDA pro plugin writing in C/C++》[2008-07-28第二次更新]
谢谢kanxue的鼓励,精华美誉真的受之有愧。 回想起来,差点忘了感谢四哥,没有他给我指导的一番话, 可能我也没有想到要做一篇翻译文档,在此也衷心感谢四哥 多年来的指导与帮助。 |
|
[讨论]segment一词如何翻译,
《加密与解密》2nd里面用了“区段”这一术语,好像更好些。 |
|
[推荐]PHRACK ISSUES #65 !!!!!
是啊,上期出的是什么时候了,有两年了吧。 |
|
|
|
关于在IDA插件中调用windows API 以及 实现消息循环机制
BeQuick,你的想法很不错,以前参考过一篇用 Win API编写插件的文档,但现在怎么也找不到了, 好像看雪论坛里面的朋友翻译过这篇文章,里面的 示例代码还调用了CreateThread函数。 方法如下: 在所有#include IDA的头文件预编译指令 之前,加上#include <windows.h>,不这样 做,可能会出现一些编译错误。 比如下面这些插件常用到的预编译包含指令, #include <windows.h> //这里最好是把windows.h放到最前面, #include <ida.hpp> #include <idp.hpp> #include <expr.hpp> #include <bytes.hpp> #include <loader.hpp> #include <kernwin.hpp> 附件是一份修改自IDA SDK中vcsample的源代码, 运行效果如下图, 这份代码很简单地调用了MessageBox显示一个对话框。 vcsample.rar |
|
|
|
[下载][逆向编译技术]完整译文CHM格式
写得比较深。 |
|
[求助]关于IDA的注释如何转移到OD中的问题
呵呵,主意不错。 |
|
[求助]关于IDA的注释如何转移到OD中的问题
这阵子,我陷到插件的泥沼中了,干什么都想用插件, 怎么没想到学习前人的工作成果? 刚才搜索了IDA加载map文件,才发现有一个 名为GODUP的OD插件,flyODBG里面收了这个 插件,不知道你是否用的就是这个插件,里面有一个 Load comments的菜单选项,可以载入注释。 你提到的重命名的变量名,结构体和入口参数, 不知道IDA和GODUP支持与否。 |
|
[求助]关于IDA的注释如何转移到OD中的问题
个人的一些幼稚理解,供各位朋友参考讨论。 昨天晚上想了想,今天上午认真看了OD的SDK文档, 和IDA的SDK接口。 IDA的bytes.hpp头文件中的get_cmt接口可以获取 被反汇编文件中的指定地址的注释,定义如下: // Get an indented comment // ea - linear address. may point to tail byte, the function // will find start of the item // rptble - get repeatable comment? // buf - output buffer, may be NULL // bufsize - size of output buffer // Returns: size of comment or -1 idaman ssize_t ida_export get_cmt(ea_t ea, bool rptble, char *buf, size_t bufsize); 然后又在OD的SDK文档中,发现一组名为Name functions的接口中有一个 叫做Insertname的函数,定义如下: int Insertname(ulong addr,int type,char *name); addr是虚拟地址,type若设置为NM_COMMENT,就可在指定地址处添加自定义的 注释,name为注释的内容。 有了这两个接口,就简单测试了一下,先用IDA 4.9反汇编了w2k下的扫雷程序 winmine.exe,然后在winmine的WinMain函数中,0x1001426地址处,手动添加了“模块句柄”一行注释, 如图 然后用get_cmt在IDA插件中,获取这个地址的注释,如下: /************************************************************************/ /* */ /* !注意:测试起见,addr变量用了硬编码 */ /* */ /************************************************************************/ ea_t addr = 0x1001426; char comment[MAXSTR]; // 保存注释的缓冲区 // 获取指定地址的注释 get_cmt(addr, false, comment, MAXSTR); msg("%x处的注释为:%s", addr, comment); 运行这段代码后,IDA的日志窗口显示了刚才手动添加的注释, 如下图: 接下来就是测试OD的添加注释接口了,我简单修改了olly提供的 cmdline插件源代码中的ODBG_Pluginaction函数,在其中一个分支 里添加如下代码, /************************************************************************/ /* */ /* !注意:测试起见,Insertname函数用了硬编码 */ /* */ /************************************************************************/ Insertname( 0x1001426, NM_COMMENT, "模块句柄"); 这样,编译好修改后的cmdline插件,当祭起OD的时候, 用OD加载winmine,运行插件,然后就可以看到OD里面也自动 添加了注释。 个人的一些简单想法,供wangdell和各位朋友参考讨论。 |
|
|
|
[求助]编译ODbgScrip 出现问题???????
好像仅有的那个error是没有办法执行cmd.exe, 并没有代码上的问题,而且ODbgScript.dll已经 编译好了,你不用管那个ODbgScript.ncb文件了。 |
|
[注意]看雪论坛鼎力打造---2008年力作《加密与解密》(第三版)[2008年6月上旬上市]
有不少新技术,很期待。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值