|
[求助]关于直接寻址方式疑惑![已解决]
哥们,我找到原因了,你只要将mov eax, [10000000h]改为mov eax, dword ptr ds:[00401245],或者mov eax, ds:[00401245]就可以。原因是因为没有加段前缀ds:的话,编译器会默认为这是个立即数,不会当做地址进行处理的.... |
|
[求助]关于直接寻址方式疑惑![已解决]
我试了一下,跟你说的结果是一样的。但是除了直接寻址以外,寄存器间接寻址或相对寻址都是正确的。但是以前没注意过这种情况,不过我用asm编辑过,不会出现跟VC中的一样。具体原因待查,我再找找 |
|
[推荐][推荐]国外程序员推荐:每个程序员都应读的书
谢谢LZ,里面好几本我都在新浪爱问上下到了,大家需要的话可以去那(非广告...) |
|
[讨论]如何清理VMP的变形代码
handler的意思是“原子处理函数”,是由一条或数条汇编指令构成的一个代码段。比如在CV中,可能将一条X86指令ADD EAX,08H变成了虚拟指令,然后在执行的时候需要将这条指令的效果实现。那么在基于堆栈的虚拟机中,可能会分解为以下几个操作:1,将源操作数的值放入栈顶,2,将目的操作数的值放入栈顶,3,将栈顶的两个值相加放入对应的位置,也就是虚拟机的Virtual_EAX中,4,因为这条指令执行的结果会修改标识寄存器,所以还会有个操作将真实标志寄存器的值放入虚拟的标志寄存器中。可能上述操作的顺序会有所差别,但是基本上一个指令的实现都需要包含上面这几个操作。而上面的每一步操作都有可能是由一个或几个handler来实现。而handler中就会有频繁的堆栈操作。如果能把每条handler都拿到,并知道具体的功能是什么,那么虚拟机就分析的差不多了。不过不论是CV,还是VMP,最后在程序中的handler都是经过变形的,分析清楚不是那么容易。 |
|
[讨论]如何清理VMP的变形代码
handler的意思是“原子处理函数”,是由一条或数条汇编指令构成的一个代码段。比如在CV中,可能将一条X86指令ADD EAX,08H变成了虚拟指令,然后在执行的时候需要将这条指令的效果实现。那么在基于堆栈的虚拟机中,可能会分解为以下几个操作:1,将源操作数的值放入栈顶,2,将目的操作数的值放入栈顶,3,将栈顶的两个值相加放入对应的位置,也就是虚拟机的Virtual_EAX中,4,因为这条指令执行的结果会修改标识寄存器,所以还会有个操作将真实标志寄存器的值放入虚拟的标志寄存器中。可能上述操作的顺序会有所差别,但是基本上一个指令的实现都需要包含上面这几个操作。而上面的每一步操作都有可能是由一个或几个handler来实现。而handler中就会有频繁的堆栈操作。如果能把每条handler都拿到,并知道具体的功能是什么,那么虚拟机就分析的差不多了。不过不论是CV,还是VMP,最后在程序中的handler都是经过变形的,分析清楚不是那么容易。 |
|
[讨论]怎么搞免杀?
做免杀一般都需要参考现在常见的病毒或恶意代码的实现方法,无非是花指令填充,加壳,虚拟机等等一些手段,这些方法对付基于特征码的查杀效果还是挺好的。不过对于引导式查杀和基于行为的检测几乎没什么用,我记得前两天就在看雪论坛上看到一篇帖子,整理的就是免杀的一些方法和思路http://bbs.pediy.com/showthread.php?t=129192&highlight=%E5%85%8D%E6%9D%80。写的很全,可以参考 |
|
[分享]网络游戏安全宝书
下下来先看看再说 |
|
[下载]自己弄的外壳PE-panzer,给大家玩玩
.net跟一般的可执行文件不一样的,是在.net虚拟机上运行的。不能用保护PE文件的方法来保护的 |
|
[下载]自己弄的外壳PE-panzer,给大家玩玩
支持...顶一下 |
|
[调查]何谓"动态调试"!
动态调试是指运用调试工具,实际运行程序后,通过记录运行过程中的信息,比如寄存器值,堆栈的值,内存读写等操作,查看程序的运行过程,并进行分析。动态调试的核心就是要让程序“跑”起来,在运行的过程中记录,分析,然后进行调试。 |
|
[求助]游戏反调试保护???
貌似OD的高版本可以过很多的反调试机制,strong OD,或者找一些插件试试。找其他的一些调试工具试试也可以,IDA等,静态分析一下看里面是否有反调试的代码。如果有的话,修改下判断条件或者用其他方法应该就可以过掉。 |
|
[求助]软件逆向分析考研都有哪些大学?
软件逆向这几年都是在软件安全类里面,国内高校里面我知道的有中科院软件所,还有西电,西北大学都在做研究。主要是看导师的研究方向的。 |
|
[求助]为什么说找到oep就脱壳了
对。就是这样 |
|
[求助]为什么说找到oep就脱壳了
OEP,original entry point,即程序的原始入口点。并不是到oep就脱壳了,而是执行到oep的时候,说明壳部分的代码已经执行结束。即壳中的解压或者解密等操作已经全部执行完,现在内存中的内容已经是原始的软件,从oep开始,执行的就都是原始程序的内容了。就好比剥开了壳,看到的才是真正的果实。到了oep以后,内存里面就是原始程序了,这时dump内存的内容,再经过IAT的修复等,这样才算是完整的脱壳。 |
|
检测特定软件的思路
要做特定的软件的检测,肯定是根据这个特定软件的特性。你是要检测是否安装的话那只能进行扫描了,我觉得扫描注册表是个比较通用的方法,至于安装时候的其他特征,也只能进行个例分析了。腾讯干过,360估计也能做。 |
|
[求助]肿么让舍友玩不了魔兽?
把他们音响砸了,鼠标扔了 |
|
用od怎么找出注册码
[QUOTE=shile;1012682]请问用OD找不到那些文本信息怎么办.?就如未注册版.密码错误之类用字符串查找根本找不到.莫非OD对现在的软件不好使?我这软件是硕思闪客精灵.就是转换SWF的东西[/QUOTE] 不用死盯这字符串,那么多的查找关键跳转的方法。比如查找API函数等等,不用一条道死磕 |
|
[求助]浏览器打开的网页游戏怎么调试
OD可以调网络游戏?这个还真没见过...网页游戏都是用脚本写的吧,应该看得是发送的数据包里面的内容,用OD跟?你要跟出来了跟大家分享一下,mark,学习之 |
|
[原创][原创]回答有关花指令的那几个问题
恩。这就是垃圾指令了...我主要是回答花指令的那篇帖子提的问题,顺道多说了点 |
操作理由
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 }}
勋章
兑换勋章
证书
证书查询 >
能力值