2019 2020 1 20175204 《信息安全系统设计基础》第三周学习总结 学习目标 1.理解逆向的概念 2.掌握X86汇编基础,能够阅读(反)汇编代码 3.了解ISA(指令集体系结构) 4.理解函数调用栈帧的概念,并能用GDB进行调试 实验楼学习内容总结 要点: 1.X86 寻址方式经历三代 ...
分类:
其他好文 时间:
2019-10-13 23:33:27
阅读次数:
135
信息安全系统设计基础第三周学习总结 主要的知识点如下: 一、汇编语言: 1.生成汇编文件 (1)使用GCC编译器 例:gcc og S code.c 2.对o文件进行反汇编 (1)使用 OBJDUMP (2)o d mstore.o 二、程序的编码 1.用Unix命令行编码 例:编译p1.c和p2c ...
分类:
其他好文 时间:
2019-10-13 23:23:56
阅读次数:
84
if语句的反汇编判断 if语句的反汇编判断基本是围绕JCC指令的,如果想要有深刻的理解,可以自行练习JCC指令 执行各类影响标志位的指令 jxx xxxx 1、案例一 mov eax,dword ptr [ebp+8] 分析:cmp指令 影响标志位 cmp eax,dword ptr [ebp+0C ...
分类:
其他好文 时间:
2019-10-04 09:48:31
阅读次数:
238
如何判断函数有几个参数,已经分别是什么: 一般情况: 步骤一:观察调用处的代码 push 3 push 2 push 1 call 0040100f 步骤二:找到平衡堆栈的代码继续论证 call 0040100f add esp,0Ch 或者函数内部 ret 4/8/0xC/0x10 最后,两者一综 ...
分类:
其他好文 时间:
2019-10-03 19:46:15
阅读次数:
116
.text .global _start _start: ldr sp, =4096 bl main halt: b halt int main() { unsigned int *pGPFCON = (unsigned int *)0x56000050; unsigned int *pGPFDAT... ...
分类:
编程语言 时间:
2019-10-02 22:50:51
阅读次数:
151
关注一些优秀的软件方案,哪怕是设计文件、exe可执行文件,并不是只有源代码才是有价值的,例如软件著作权都可以看到这个公司的技术方向。 良好的设计,美好的客户体验都是软件价值的一部分,过去,太在意源码的实现。除了源代码,不关心别的 这是错误的 提高工作效率的foxmail之类的 每日表格 每月统计等, ...
分类:
其他好文 时间:
2019-09-08 10:03:44
阅读次数:
117
0x00 前言 对安卓应用的静态保护增加了逆向时对应用的分析难度,可以从以下多个方面进行: 1.应用代码保护 2.资源保护 3.完整性校验 0x01 应用代码保护 所谓应用代码保护主要是对应用的源码进行保护,主要采用的保护手段是:软件混淆技术 软件混淆技术从混淆对象上来看,可以分为代码混淆和数据混淆 ...
分类:
移动开发 时间:
2019-08-25 00:30:55
阅读次数:
111
一、在Linux中,有两种函数库,以*.so后缀命名的是动态函数库,以*.a后缀命名的是静态函数库 对于静态函数库:在编译链接时候,程序所需要的函数会从静态函数库中拷贝到执行文件中。当程序运行的时候,就不需要链接外部的函数库了。 对于动态函数库:在编译链接时,程序所需要的函数不会从动态函数库中拷贝出 ...
分类:
系统相关 时间:
2019-08-20 21:53:10
阅读次数:
91
一、问题 在使用寄存器调试一些堆栈破坏的core文件时,可能需要通过反汇编来确定问题的原因,而此时确定寄存器的值就是一个必要的手段。但是,在通过frame切换栈帧之后,通过info reg看到的寄存器就是该栈帧当前的寄存器值吗? 二、gdb的文档说明 if all stack frames fart ...
分类:
数据库 时间:
2019-08-18 11:30:41
阅读次数:
150
gcc参数 -On 优化选项,告诉编译器使用第n级优化 通常,优化等级越高,运行速度越快,编译时间越长,调试越困难。因此,通常使用O2 -o file 自定义编译后的文件名 -S 生产汇编代码 -c 编译并汇编该代码 默认编译汇编链接一步到位 反汇编器 objdump -d code.c 用来查看二 ...
分类:
编程语言 时间:
2019-08-14 12:54:02
阅读次数:
123