|
[求助]一个新手的问题,不知道原理是什么??
检测方法很多,比如检查inline hook代码jmp的目的地址,然后检查该地址位于哪个module的地址范围。 |
|
|
|
[求助]请问如何将“Hi,I'm lee”中的“I'm lee”使用蓝色、楷体、22号字显示?
在GUI程序中,先创建一个宋体的FONTLOG,然后设置为DC的字体,设置DC的颜色,最后TextOut就可以了。 在CUI程序中,可以定义颜色,我不知道如何自定义字号、字体(查SDK文档没查到相关API,可能是我查询方法有问题)。 |
|
[求助]ModifyFile PROTO :LPSTR那个PROTO是啥意思?LPSTR又是啥意思?
proto,是prototype的缩写,意为原型,该关键字的用途是声明函数原型。 LPSTR是Windows SDK标准的数据类型,用来表示字符串(我记得大概是char *的typedef)。 遇到问题先查说明书和手册,再查谷歌百度,就不会有此问了。proto在masm32.chm当中有说明,而LPSTR即使你不知道,用搜索引擎一下就会知道了。 养成凡事都靠别人帮助的习惯可不太好。 |
|
求高人指点OllyDbg, SoftICE, WinDbg, IDA Prod的区别以及各自特点
SoftICE和WinDBG属于内核级别调试器,不仅可以用来调试应用程序,也可以调试内核级的代码,如驱动程序。其中WinDBG使用了NT内核的调试机制,要想发挥其功能,需要双机调试,并且被调试内核需要以调试模式启动以激活调试支持(听说国人有神人可以在正在运行的内核上激活调试器,不知道详情)。SoftICE是本机调试器,主要是通过钩住内核的一些功能来获得调试控制权。 IDA,智能反汇编分析器,主要用来对bin进行静态反汇编分析,也带有调试器功能,不过是用户态调试器,只能调试用户态代码。 OllyDBG也是用户态调试器,具有一定的智能分析能力,但与IDA的分析能力相比,不是一个量级的。但它的调试器功能非常完善。所以通常用IDA来阅读代码,而用Olly来动态跟踪程序。 |
|
[求助]请问这个'Hello World!'编译之后,只有exe,如何在后面加一行显示“I'm lee,too”呢?
16位程序,用DOS下的调试器,如tr、softice、turbo debugger等来调试。 |
|
[求助]怎样让DLL在OD里断下来
你说的访问网站时调用的dll,难道不是浏览器进程加载吗? 我不明白你说的是什么了。 dll和exe一样是程序,只要让它的代码运行起来,在适当的代码上设置断点,那么当执行到那里时就自然会被中断。调试dll和exe本质上没什么区别。OD自带了一个loaddll.exe程序来辅助加载dll文件,当你用OD加载DLL文件时OD会自动调用LOADDLL.EXE来加载所调试的DLL,并停在DLL的入口点。之后LOADDLL.EXE会调用入口点函数完成DLL的初始化。 要调用DLL中的其它函数,则要手动选择函数名,填好参数,然后在函数开头设个断点,点击“调用”,就可以了。 |
|
请帮忙看下这些代码~
你看,你的项目名称是4,编译的文件是4.cpp,而编译错误却出在1.cpp 我只能说你的工程配置根本没有道理。 而且,很有可能你include了cpp文件(这是非常不推荐的),才会出现这种编译4.cpp,错误却出在1.cpp的奇怪错误。 我还是那个建议,既然你不懂编程,直接跟你朋友要个编译好的bin来用就行了。 要么,你就狠下心,闭关学习编程,学到一定程序,自然就可以解决了。 |
|
会破解饿死会编程的!
我的观点还是,逆向者与开发者绝不是对立的。 真正的逆向者大多数自身就是开发者。 而开发者当中,大部分人或多或少都掌握一定的逆向技术,因为调试和开发是不可分割的部分。 持有“逆向者都是开发者的敌人”的观点的人,既不了解真正的逆向工程,也不完全明白“正向”的软件工程。 |
|
[分享]我今天用跟踪法脱了个UPX,居然跑了两百万条代码
循环。壳的代码有大量的循环进行数据解压缩,跟踪计数是实际执行的指令数,而不是壳的代码的中所含的指令数。 |
|
[求助][求助]请问DialogFunc函数是什么调用规范?
所有的WIN32回调函数都是声明为CALLBACK型的,在winbase.h(或者windef.h或其它文件中,我记不清了)CALLBACK是_stdcall的别名(宏定义)。 此外,Windows SDK的头文件还定义了WINAPI、APIENTRY等宏,都是_stdcall的别名。 |
|
请帮忙看下这些代码~
编译器消息指出1.cpp的第24行中的X、Y这两个标识符没有定义。 但是你给的代码中没有找到X和Y。 你确定贴出的代码是1.CPP文件的内容? 有可能你的工程没有正确配置。 如果连编译器消息都看不懂,为什么要拿源代码来编译? 直接向你朋友要个bin来用不就行了吗? |
|
[求助]看完16位汇编再看32位 发觉差别好巨大啊
汇编语言,简单说就是CPU面向程序员可见的体系结构,主要包括:控制/状态寄存器、通用寄存器定义、指令集、寻址方式、汇编程序书写规范。 而涉及到具体的开发平台,又必须要了解平台的接口规范,通常也就是指函数调用的参数传递和寄存器保护的规范,包括源代码级的接口定义和二进制接口规范。 按着以上几条再去看汇编语言程序设计的书,也许会更容易一些。 I386体系结构简化的描述如下: 通用寄存器:8个,EAX,ECX,EDX,EBX,ESI,EDI,ESP,EBP 控制/状态寄存器:1个,32位,EFLAGS 汇编程序书写规范:常用INTEL汇编格式(实际上INTEL格式和微软MASM宏汇编格式经常分不清楚)opcode dest operand,src operand1,... 基本指令集:整数的算术(加减乘除)、逻辑(移位、与或非)指令、数据传递指令等 扩展指令集:协处理器指令(如浮点指令)、SIMD指令等等 寻扯方式:IA32差不多是寻址方式最复杂的体系结构了,比如INTEL手册上讲的:立即寻址(有的书里直接叫立即数,而不列为寻址方式的一种)、直接寻址、寄存器间接寻址、基址变址寻址等。如果再把内存管理的“分段”、“段超越”、“有效地址”等概念算进去,就更复杂了。不过开始学习可以先忽略这些细节。 好了,简单说到这里,希望能有所帮助。 其实只要理解了体系结构的那几大块(指令集、寄存器、寻址方式等),不管是I386、MIPS、ARM,还是什么嵌入式的微控制器、单片机等的汇编语言,都是大同小异的。 |
|
[求助]关于一些基础知识
当然一样了,不一样就不能用它 替代了。 但是用C函数的方式去调用,比内嵌汇编更安全。内嵌汇编必须处理好与其它C代码之间的协调问题,寄存器保存、状态保存等,而用C函数,则不会出现由此引起的错误。 |
|
[讨论]现在还有没有人用DOS做开发的
银行?DOS? 政要部门?DOS? 结论:楼上的不懂DOS为何物。 DOS并没有死,看一下赛门铁克的ghost的最新版本是,你就知道DOS下的程序一直没有停止更新。另外,开源项目FreeDOS的完成度非常高,作为传统的DOS的替代品,使用也十分广泛。 虽然日常使用中见不到DOS了,但在某些紧急情况下,还是偶尔会请出DOS的。 并且如楼主所说,在嵌入式领域,还有某些实验室当中,DOS还是有其用武之地的。 只不过在个人电脑的日常使用中,DOS“好像被淘汰了”。 |
|
[已解]没壳了,VB的 老在里面跳,找不到密码,崩溃
不知道你在干什么。VB Decompiler已经告诉你了,按钮响应函数是402470,你直接bp 402470,F9,按确定,中断,分析,OK。 哪里什么call和ret。 不知道你在干什么。 |
|
|
|
[求助]关于一些基础知识
1.要从PC的体系结构说起。简单来说,INTEL的处理器存储器地址空间和IO地址空间是独立编址的,但是由于一些历史原因,存储器地址空间中某些段被特定的设备IO占去,从而形成了不连续、不一致的内存格局。比如,16色文本模式的VGA显示适配器(即显示卡)占用了存储器地址空间中0xb8000开始的0xFFFF字节,而256色图形模式的VGA占用地址0xA00000开始的地址空间。 这种所谓的“映射”是硬件译码逻辑实现的。 除显示卡外的其它设备,与显卡不同。 对于的PCI总线上的设备,根据PCI总线的规范说明,支持动态配置,并且可以编程选择IO映射方式或存储器映射方式。 对于老的ISA总线上的设备,不支持动态配置,设备采用IO方式还是存储器映射,当设备被安装后由硬件连接所决定。 像键盘、鼠标这样的外设,其硬件编程规范中涉及的寄存器较少,历史原因,直接使用IO方式,不采用存储器方式。而网卡这种有大量存储器的设备,有的驱动程序会使用存储器映射,有的驱动程序则用DMA与主存之间传输数据。 2.不是磁盘有坏道,就是你的程序不正确,才导致不能按预想工作。可能是没有处理好内嵌汇编,要调用int 0x13,可以不用内嵌汇编,试试int86()函数。 |
|
[求助]一个十分简单的问题1
函数原型声明。 uses指明要使用的寄存器,宏汇编会在函数开头保存之,在返回之前恢复之。 后面hWnd,uMsg,wParam,lParam是参数列表,与C中的函数声明的作用类似,声明以后就可以用invoke宏来调用该函数,宏汇编器会自动生成参数入栈的操作;并且声明后可以用参数名来引用栈上的参数,即你可以直接写mov eax, uMsg,汇编器自动生成类似这样的指令:mov eax,[ebp+0ch] |
操作理由
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 }}
勋章
兑换勋章
证书
证书查询 >
能力值