逆向学习记录
文章平均质量分 70
^Norming
这个作者很懒,什么都没留下…
展开
-
动态分析之OllyDbg
OllyDbg调试器准备工作使用之前要设置UDD文件和插件的路径,一般设置成绝对路径。单击“Options”-“Appearance”打开界面选项对话框,单击“Directories”。主界面:在反汇编面板窗口的列中,双击可以完成如下操作。●Address列:显示被双击行地址的相对地址,再次双击返回标准地址模式。●Hex dump列:设置或取消无条件断点,对应的快捷键是“F2” 键。●Disassembly 列:调用汇编器,可直接修改汇编代码,对应的快捷键是空格键。●Comment 列原创 2021-07-11 11:14:07 · 1378 阅读 · 1 评论 -
PE文件格式(一)
简介PE文件是Windows操作系统下使用的可执行文件格式PE文件指的是32位的可执行文件,也称作PE32;64位的可执行文件称作PE+或PE32+(注意不是PE64),这是PE文件的一种扩展形式。PE文件种类可执行系列:EXE、SCR驱动程序系列:SYS、VXD库系列:DLL、OCX、CPL、DRV对象文件系列:OBJ除了OBJ之外的文件都是可执行的,有些虽然不能直接在Shell(Explorer.exe)中运行,但是可以使用调试器等来运行。不过,根据PE文件规范,OBJ也是做是PE文件原创 2021-04-24 16:39:52 · 3101 阅读 · 0 评论 -
函数调用约定
函数调用约定:是对函数调用时如何传递参数的一种约定。调用函数前要先把参数压入栈然后再传递给函数,栈就是定义在进程中的一段内存空间, 其大小被记录在PE头中,进程运行时确定栈内存的大小(与malloc/new动态分配内存不同)函数执行完成后,栈中的参数不用处理因为只是临时存储在栈中的值,清除会浪费CPU资源,直接下一次向栈中存入其他值自然覆盖就行了,而且栈的内存是固定的,所以不能也不用释放内存。函数执行完毕之后,ESP值如何变化?ESP的值要恢复到函数调用之前,这样可引用的栈大小才不会被缩减。如何处原创 2021-04-04 20:48:14 · 194 阅读 · 0 评论 -
栈-栈帧
栈栈:一种由高地址向低地址扩展的数据结构作用:1.暂时保存函数内的局部变量2.调用函数时传递参数3.保存函数返回后的地址先进后出原则一个进程中,栈顶指针(ESP)初始状态指向栈底端,执行PUSH将数据压入栈,栈顶指针就会上移到栈顶端,若栈为空,则栈顶指针重新移动到栈底端。EBP:存放栈底地址向栈中压入数据时,栈顶指针减小,向低地址移动;弹出数据时,栈顶指针增加,向高地址移动。栈帧栈帧就是利用EBP(栈帧指针)寄存器访问栈内局部变量、参数、函数返回地址等的手段。因为ESP的值一直在变原创 2021-04-04 10:40:22 · 156 阅读 · 0 评论 -
调试HELLO,WORLD-小端序标记法
逆向分析代码,一般先静态分析收集代码相关信息,通过收集到的信息推测程序的结构与行为机,然后动态。动静结合。调试hello,world我们需要编写一个可执行文件:hello.exe如图,当在编译器中写好程序后(VS2010)按照如图操作,relsease模式将.cpp文件生成.exe,然后点“生成”->”生成hello”即可,然后我们将这个程序拖进OD(注意不要将程序窗口关掉,最小化即可,否则会造成程序进程结束无法单步调试)调试器停止的地方为程序执行的起始地址即EP(Entry Point入原创 2021-04-04 09:54:47 · 166 阅读 · 0 评论 -
安恒笔记-逆向工程(01基础介绍)
本文为安恒课程学习记录,绝大部分资料来自于安恒。如何学习基础:C,C++,汇编,windows编程进阶:工具使用,简单实战实战:软件破解,逆向分析OllyDbg窗口介绍寄存器窗口:日志窗口:L图标或View->Log,显示日志窗口,通过配置,可以显示OllyDbg启动时保存在日志窗口的不同类型信息,也涉及条件断点的信息。这个窗口最重要的选项就是可以保存到文件。如果我们想把信息保存为文本文件,点击右键选择Logtofile。模块窗口:E按钮View->Executa原创 2021-03-02 19:33:13 · 304 阅读 · 0 评论