随笔分类 - 软件逆向工程
摘要:什么是函数指针 函数指针:如果在程序中定义了一个函数,那么在编译时系统就会为这个函数代码分配一段存储空间,这段存储空间的首地址称为这个函数的地址。 函数指针变量定义形式 函数返回值类型 (*函数指针变量名) (函数参数列表); 如何用函数指针调用函数 int max(int x, int y); /
阅读全文
摘要:类的实例调用成员函数的原理 其实不管是通过对象实例或指针实例调用,其实底层调用的过程都是一样的,都是把当前对象的指针作为一个参数传递给被调用的成员函数。通过下面的相关实例代码进行检验: 实验的C++代码 class Student { private: int age; public: Studen
阅读全文
摘要:用PEiD查壳 UPX v0.89.6 - v1.02 / v1.05 - v1.22 这个是入门的壳,只是一个简单的压缩壳用Stud_PE查看PE文件头信息 主要是看一下ImageBase的值 00400000,这是一个16进制数。在后面OD载入后,可以用这个值在内存映像中查看PE文件加载到内存后的情况。 还有EntryPoint的值: 0000E8C0 程序...
阅读全文
摘要:背景之前说过直接向类HelloWorld.exe的可执行文件添加一个MessageBox弹窗, 但有时候, 需要添加的内容太多了, 因为数据与代码一起插入, 以至于可执行文件本身没有足够的空闲空间存放这些内容时, 就需要添加一个Section.确认节区头后面还有空间用工具查看一下最后一个节区头后面是否还有多余的空间, 一般情况都会有的. 但若没有的话, 就要移动节区头后面的文件内容, 这个比较复杂...
阅读全文
摘要:对类HelloWorld程序中添加一个MessageBox弹窗分析:任一程序运行的时候都会加载kernel32.dll的,但MessageBoxA()这个API却是在user32.dll中的。所以在HelloWorld.exe中是没办法直接添加MessageBoxA()的调用。不过好在有kernel...
阅读全文

浙公网安备 33010602011771号