IN Blog

Thinking will not overcome fear but action will.

main和Sub_E90函数分析

Hello world,hello blog!

分析过程 首先给出main函数的C语言伪代码 如果a4 !=2 ,则跳转到 fprintf(stderr, "Usage: %s <myvm program>\n", *a1, a3); 此条语句的含义有点看不懂,猜测是C++里的重载函数,猜测为:将*a1、a3以"Usage: %s <myvm program>\n"的格式输入至studder这个流中。 ...

Switch函数分析

Hello world,hello blog!

前言 由于这几天在弄论文查重以及论文修改相关的事情,所以没有及时更新博客内容。 Switch函数部分 上次分析到Switch函数部分,现在对Switch函数进行分析。 case 144: goto LABEL_38; case 145: if ( !*((_DWORD *)v1 + 10) ) goto LABEL...

IDA Pro权威指南的学习笔记

Hello world,hello blog!

## 这几天在博客上找别人在IDA Pro上分析程序的例子来看,发现自己对于IDA Pro的使用手法很low,所以将《IDA Pro权威指南》里关于IDA的基本功能模块大致看了一遍,也看了不少别的大佬的使用技巧总结。 ps:我发现可以使用IDA处理器模块来编写myvm相应的反编译器、或者实现反编译的功能,后面边分析myvm边学习处理器模块的知识。 一些二进制工具 在《IDA pro权...

main分析(2)

Hello world,hello blog!

补遗 紧接上次的分析,把上次漏掉的两段代码补上。 //edi==2 继续 bdc: 48 8d 35 dd ff ff ff lea -0x23(%rip),%rsi # bc0 <__cxa_finalize@plt+0x120> be3: bf 02 00 00 00 mov $0x2,%edi b...

NC命令与main分析

Hello world,hello blog!

## 今天查看第三阶段的文件,发现题目中给出一个实验室搭建的公网来进行测试,使用的是NC命令,所以今天学习了一下NC命令的用法。 NC命令 what’s NC? NetCat,在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本。因为它短小精悍(1.84版本也不过25k,旧版本或缩减版甚至更小)、功能实用,被设计为一个简单、可靠的网络工具,可通过TCP或UDP协议传输...

Sub_CE0分析

Hello world,hello blog!

首先使用IDA_PRO打开myvm,然后继续打开Sub_CE0函数,按下F5获取C语言伪代码。 FILE *v1; // rax FILE *v2; // rbx __int64 v3; // r15 void *v4; // r14 char *v5; // rbx 上述代码定义V1,V2文件变量;V3是64位整型变量;V4是空的动态数组;V5是字符型指针变量。 v1 = fo...

深入学习计算机系统第三章

Hello world,hello blog!

前言 在回顾之前学习CSAPP内容时,发现第三章内容还是没深入理解,所以今天重新学习了一遍。  在编译一段C语言程序的过程中,其实做了很多步骤,比如预编译处理、编译处理、汇编处理以及链接处理。我们要了解的汇编语言,就是在编译处理后的产物。因此我们可以在GCC的编译器当中加入一些参数来控制它只生成汇编语言,而不进行汇编处理和链接处理。   以下面这一段简单的C语言代码,假设为su...

IDA pro基本技巧

Hello world,hello blog!

学习背景 由于电脑坏了,在网吧没有虚拟机可以使用,所以今天仅仅学习了一些IDA的基础技巧以及《深入理解计算机系统》。 IDA 基础技巧 IDA的主要窗口如下 IDA view: 定位要修改的代码段在哪里。 Hex view: 用来修改我们的数据 exports window: 导出窗口 import window: 导入窗口 ...

Sub_B70函数分析

Hello world,hello blog!

学习准备 今天尝试使用IDA将汇编代码转化为C语言伪代码,这个可以使用F5快捷键来进行转换。 分析过程 看到伪代码,觉得有点晦涩难懂,和以前学习的C代码有很大的区别,所以明天还是需要研究一下IDA中C伪代码与正常C语言代码的区别。 if(&cxa finalize)表示该函数地址存在的话,则执行内部代码 如果byte_202010的字节是0,那执行resu...

对后续路线的调整

Hello world,hello blog!

今天学习的内容不太适合写博客上,所以今天的博客就单纯谈一下对后续计划的调整。 今天向申学长请教,才发现自己之前二十天左右的时间对304攻略并没有起很大的作用。 我原以为这题的解题关键在于汇编语言,在使用IDA打开文件后,逐行翻译汇编代码,但是一直没有解题成功,申学长给我的建议是使用F5将汇编语言翻译为C语言的伪代码,复杂的地方再结合汇编语言。。 希望经过这次调整,能对解题起到一定的帮助