文章分类 -  3-3 reverse & pwn

摘要:1.硬件虚拟化的基本概念 VMM CPU硬件辅助虚拟化技术 阅读全文
posted @ 2021-03-16 21:10 KnowledgePorter
摘要:转自:https://blog.csdn.net/qq_35495684/article/details/79583232 当我们在获得程序的漏洞后,就可以在程序的漏洞处执行特定的代码,而这些代码也就是俗称的shellcode。而shellcode该怎么获得呢? 一、获取集成写好的 1.From p 阅读全文
posted @ 2021-03-07 19:04 KnowledgePorter
摘要:一、context context 是 pwntools 用来设置环境的功能。在很多时候,由于二进制文件的情况不同,我们可能需要进行一些环境设置才能够正常运行exp,比如有一些需要进行汇编,但是32的汇编和64的汇编不同,如果不设置context会导致一些问题。 一般来说我们设置context只需要 阅读全文
posted @ 2021-03-07 17:37 KnowledgePorter
摘要:对printf族函数错误使用导致的漏洞 维基百科 语法: n$ (unix平台上C拓展的语法) n是使用此格式说明符显示的参数数,允许使用不同的格式说明符或以不同的顺序多次输出提供的参数。如果任何单个占位符指定了一个参数,则所有其他占位符也必须指定一个参数。 hh 对于整数类型,使printf需要一 阅读全文
posted @ 2021-03-07 13:10 KnowledgePorter
摘要:目录: 异常处理的基本概念 SEH的概念及基本知识 SEH异常处理程序原理与设计 向量化异常处理 x64平台上的异常处理 异常处理的实际应用 笔记 1.异常处理基本概念 lntel公司在从386开始的IA-32家族处理器中引人了中断(lnterrupt)和异常(Exception〕的概念。中断是由外 阅读全文
posted @ 2021-03-06 18:26 KnowledgePorter
摘要:目录: 内核理论基础 内核数据结构 内核调试基础 1.内核理论基础: 1.1权限级别: R0和R3,内核和驱动运行在R0。 用户的应用程序(就是用VisualC++等工具开发的应用程序)也是运行在R3级上的,也就是说,它们享有的权限是最低的。该类应用程序没有权限去破坏操作系统,只能规矩地使用Win3 阅读全文
posted @ 2021-03-06 15:05 KnowledgePorter
摘要:1.防范算法求逆 基本概念: 注册码验证: 用向软件作者提交用户码U,申请注册。软作者计算出注册码R=f(U),将结果返回合法用户。用户在软件注册界面输人U和R软件通过验证F(U,R)的值是否合法来判定用户的合法性。 堡垒战术: (各种注册方案,看不懂,略) 游击战术: 2.抵御静态分析: 花指令: 阅读全文
posted @ 2021-03-01 17:48 KnowledgePorter
摘要:函数窗口: ctrl+F去筛选 删除函数:在函数窗口选择函数,按delete键 修改函数:在函数窗口ctrl+E,反汇编窗口alt+p(指定函数细节,如开始结束位置,bp寻址,参数属性) 定义函数:p 空格:看显示命令地址 按* 键将字节数据转换成数组 双击标号 ,即可跟踪到数据定义处 查看函数:按 阅读全文
posted @ 2021-03-01 14:58 KnowledgePorter
摘要:什么是反弹shell? 反弹shell(reverse shell),就是控制端监听在某TCP/UDP端口,被控端发起请求到该端口,并将其命令行的输入输出转到控制端。reverse shell与telnet,ssh等标准shell对应,本质上是网络概念的客户端与服务端的角色反转。 为什么要反弹she 阅读全文
posted @ 2021-02-27 14:23 KnowledgePorter
摘要:1.基本工具 逆向辅助类(分析程序):IDA pro 、gdb(github.com/longld/peda) 漏洞利用类(编写利用):pwntools、zio、Ropgadget、checksec、one_gadget、seccomp-tools 2.保护机制 NX:数据执行保护,即DEP ASL 阅读全文
posted @ 2021-02-23 16:30 KnowledgePorter
摘要:参考 《windows 环境下32位汇编语言程序设计》 《逆向工程核心原理》 《加密与解密》 《Windows pe 权威指南》 阅读全文
posted @ 2020-12-20 15:51 KnowledgePorter
摘要:在学习本章之前,应熟练掌握SEH机制,可参考《加密与解密》《Windows环境下32位汇编语言程序设计》 略 阅读全文
posted @ 2020-12-19 20:44 KnowledgePorter
摘要:本文分析的是《C++反汇编与逆向分析技术》第四章例子Crackme.exe 工具 IDA 1.参数及局部变量定义 2.开辟14字节数组;把输入的密码加密后存在数组中; 加密过程没看懂,好吧 在转换过程中有一个对2取模运算,因为对有符号数模2只有-1,0,1三种结果,编译器进行了优化,与0x80000 阅读全文
posted @ 2020-10-08 20:09 KnowledgePorter
摘要:call指令 隐含操作push EIP,ret指令隐含操作 pop EIP,两条指令完全对应起来 leave指令 在16位汇编下相当于: mov sp,bp pop bp 在32位汇编下相当于: mov esp,ebp;//将ebp指向(ebp内部应当保存一个地址,所谓指向即这个地址对应的空间)的值 阅读全文
posted @ 2020-10-04 16:56 KnowledgePorter
摘要:(OD是调试工具,反汇编辅助分析功能有限,不适用于静态分析) IDA的窗口和界面介绍: 首先,我们可以在view-open subviews打开各种类型的窗口。 当我们第一次打开IDA,会显示这样的视图。 大窗口是流程图(ctrl+滑动滚轮=变大|变小),可以看到明显的条件判断,红色为条件为fals 阅读全文
posted @ 2020-09-27 19:55 KnowledgePorter
摘要:对于调试版(Debug编译选项组),使用VC6.0 调试 对于发布版(Release编译选项组),使用OD调试 OD的各窗口视图的功能 OD的基本快捷键 修改数据: 双击HEX数据窗口的一个字节弹出对话框 (去除保持大小的勾选可向后修改数据 需要将字符串最末尾数据修改为00 --在十六进制框填入00 阅读全文
posted @ 2020-09-27 19:36 KnowledgePorter
摘要:TEB指线程环境块,该结构体包含进程中运行线程的各种信息,进程中每个线程都对应一个TEB结构体。不同OS中的TEB结构体形态略微不同。、 重要成员: TEB结构体成员多而复杂,在用户模式调试中起着重要作用的成员有2个.。 ProcessEnvironmentBlock成员: Offset30处的Pr 阅读全文
posted @ 2020-09-15 15:28 KnowledgePorter
摘要:(许多静态反调试技术对OS有较强的依赖性。) 静态反调试目的: 被调试继承用静态反调试技术来侦测自身是否处于被调试状态,若是,则执行非常规代码(主要是终止代码)来阻止。 实现方法: 调试器检测 调试环境检测 强制隔离调试器 破解方法: 主要用来从探测代码获取信息,然后修改信息本身使得反调试技术失效。 阅读全文
posted @ 2020-09-09 21:09 KnowledgePorter