1 IDA反汇编 今天只看看 别人是怎么防护的 软件安全

先看32位还是64位

能用32位的打开就是32位,否则会报错。API Monitor不改软件,只是看。
在这里插入图片描述

IDA加载

用的openssl加解密

定位:找到需要修改的地方

一般有提示句等

先看看自己写的:shift+F12 展示所有的字符串;

在这里插入图片描述
在这里插入图片描述

修改 或叫打补丁

比如在需要判断的地方JNZ改值 或NOP
在这里插入图片描述

应用 补丁到改后的软件

在这里插入图片描述

运行新软件

IDA使用技巧
shift+F12 展示所有的字符串;

ctrl+x查找某一字符串出现的所有位置;

F5反编译,查看伪代码;

*可以查看数组元素的起始位置和每个元素所占空间是多少;

y可修改数据类型;

n可修改变量名;

shift+E可导出数据(先用y修改数据类型,再根据数据类型选择合适的进行输出数据),提取数据时还是需要再去关注一下hex界面里面的数据,防止丢失;

选中伪代码当中字符按tab键到汇编语言;

空格键实现图型和文本格式转化;

有时函数未正确识别,在函数的起始地址的汇编代码处按p;

快捷键D修改对应的数据类型;

A转化为对应字符串,尤其是没有正常解析的零散字符,可以将光标放置起始位置,然后使用快捷键A;

IDA函数窗口中,每个函数有一个关联标志,L标志表示其为库函数;

按G键可进行跳转,用于实现指令之间的跳转;

在views的open subviews中有function caLL窗口可以查看函数的调用;

当静态调试和动态调试基地址不同时,可以采取修改IDA基地址确保二者可以共同分析 Edit->Segments->Rebaseprogram;

c键可将指令转化为代码,d键可将代码转化为数据,这两个快捷键在面对对抗反汇编的方法时经常使用。

对立即数进行分析时,R:将立即数转化为字符;H: 将立即数转化为10进制;Q: 将立即数转化为16进制;B:将立即数转化为2进制。

IDA如何修改文件,IDA-》edit-》Patch program-》Assemble修改,然后 IDA-》edit-》Patch program-》Apply patches to input file即可得到修改后的pyd文件。

IDA当中出现_main endp ; sp-analysis failed如何分析。
1.用Option->General->Disassembly, 将选项Stack pointer打钩;
2.仔细观察每条call sub_xxxxxx前后的堆栈指针是否平衡;
3.有时还要看被调用的sub_xxxxxx内部的堆栈情况,主要是看入栈的参数与ret xx是否匹配;
4.注意观察jmp指令前后的堆栈是否有变化;
5.有时用Edit->Functions->Edit function...,然后点击OK刷一下函数定义。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黄人软件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值