信息安全综合训练RElec4(自用、记录)

本文详细记录了信息安全综合训练的过程,涵盖了.NET CLR和Java的反编译原理,JVM指令助记符,Python逆向分析以及图片加密解密的技术实践。通过阅读相关资料和解答问题,深入理解了软件逆向工程的关键步骤和工具。
摘要由CSDN通过智能技术生成

组长 组员 组员
E41714007 E41714001 E41714020

1 question 1

1.1 题目

1、(一定要看)阅读
https://www.pediy.com/kssd/pediy08/pediy8-289.htm
https://www.cnblogs.com/daihuiquan/archive/2013/02/14/2911285.html
https://www.freebuf.com/column/157183.html

1.2 解答

  1. 第一个链接打不开;
  2. .NET CLR是堆叠式虚拟机器(Stack-Based VM),它的指令集(Instruction Set)都是采用堆栈运算的方式:执行时的数据都是先放在堆叠中,再进行计算。
    .NET CLR 有超过220个指令,但是有些命令使用相同的opcode,所以opcode的数目比指令数略少。
    特别注意,.NET的opcode长度并不固定,大部分的opcode长度是1 byte,少部分是2byte。
    这篇文章以一个i+j+k的例子,让我们了解了堆叠式VM的运作原理,并对.NET IL(Intermediate Language)有最基本的领略。
  3. 这篇文章介绍了软件逆向的定义、分类、步骤、工具、主要应用,软件开发基础知识、常见的汇编指令、寄存器以及堆栈的相关知识。

2 question 2

2.1 题目

2、(一定要看)阅读
http://www.vuln.cn/7115
http://www.vuln.cn/7117
http://www.vuln.cn/7116
http://www.vuln.cn/7118

2.2 解答

本文中介绍了Java类中不同的方法进行反编译产生的JVM字节码文件的过程,通过对反编译产生的代码的解读,阐述了Java反编译出的JVM字节码文件在逆向时的优势:文件快速粗糙的打补丁任务,类文件不需要重新编译反编译的结果;分析混淆代码;创建独立的混淆器等等。

3 question 3

3.1 题目

3、浏览 JVM指令助记符

3.2 解答

JVM指令助记符及对应注记符的意义

4 question 4

4.1 题目

4、阅读

4.2 解答

本文是一道python打包的逆向题目的具体分析过程。

  1. 在预处理时分析文件是什么语言写的,将.pyc文件反向后进行源代码剖析
  2. 修改程序自身的Bug(由VC运行库的压缩引发的bug,导致点击运行.exe文件会提示无法运行);
  3. 找到关键字符串“Congratulations”通过X反查使用点确定使用位置,按F5直接查看C代码并分析代码段的主要功能,最终获得login.exe文件的password。

5 question 5

5.1 题目

5、cipher.jpg
hint:shift+6

5.2 解答

先根据被加密图像的首部和正确的jpg图像的首部比较,得出加密密钥;接着使用密钥解密整个文件。
源代码:

//pre4.c
#define _CRT_SECURE_NO_W
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值