摘要:
之前在做逆向题的时候遇到过很多加密算法,但是都没有系统的学习过,所以准备总结一下这些算法,今天复现的是tea算法。TEA算法使用64位的明文分组和128位的密钥,使用feistel分组加框架,需要进行32轮循环得到最后的64位密文,其中magic number DELTA是由黄金分割点。 加密算法源 阅读全文
摘要:
用pyinstxtractor进行反编译# uncompyle6 version 3.7.1 # Python bytecode 3.7 (3394) # Decompiled from: Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 21:26:53) 阅读全文
摘要:
安卓题,直接将apk拖进jeb分析,看不到东西,可能是加壳了 利用xposed模块和反射大师将程序内存数据dump出来,这里要 感谢web1n老师的帮忙。 分析dump出来的数据 第一段flag比较简单,直接进行base64解密,得到前半段flag sctf{W3lc0me 后半段的逻辑是,将syc 阅读全文
摘要:
die 查看发现是mips的指令集,无壳,直接拖进ida 初看逻辑应该比较简单,跟进函数。 这个函数里面是程序的主要逻辑,可以看到一个异或的操作,之前在上面可以找到一串密文。 猜测逻辑是,将flag的每一个字符与23加一开始进行异或。 str = [0x62,0x6C,0x7F,0x76,0x7A, 阅读全文
摘要:
无壳,64位程序,直接拖进ida 前面逻辑比较简单,就是通过rc4加密然后base64转码之后与密文进行对比。 主要看一下最后面base64加密这块,他没有给提供加密表 通过查看这一部分可以获取base64的加密段 data=[0x5a, 0x60, 0x54, 0x7A, 0x7A, 0x54, 阅读全文
摘要:
前几天去了趟青海搞培训,下课的时候有个老哥问了这道题,之前一直没时间搞,今天突然想起来了就看了看。 有两个文件,双击运行exe。 运行之后输入程序闪退,直接拖进ida,32位程序无壳。 逻辑比较简单,可以看到有两个分别对文件进行读取和写入的操作,我们跟进第一个关键函数 一个简单的异或脚本可以算出st 阅读全文
摘要:
好长时间没有更新过博客了,水了一道题。 无壳,64位程序,拖进ida。 逻辑比较简单,先base加密,又经过两次位变换,位变换可以通过爆破得到。 str = "EmBmP5Pmn7QcPU4gLYKv5QcMmB3PWHcP5YkPq3=cT6QckkPckoRG" string ="ABCDEFG 阅读全文
摘要:
MD5的典型应用是对一段信息产生信息摘要,以防止被篡改。 算法过程:对MD5算法简要的叙述可以为:MD5以512位分组来处理出入的信息,且每一分租又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将产生一个128位散列值。 在MD5算法中,首 阅读全文
摘要:
AES加密算法是典型的对称加密算法,对称加密算法也就是加密和解密用相同的密钥。 AES加密数组块分组长度必须为128比特,密钥长度可以是128比特、192比特、256比特中的任意一个。AES加密有很多轮的重复和变换,步骤是1、密钥扩展,2、初始轮,3、重复轮,4、最终轮。 1、字节代换 AES的字节 阅读全文
摘要:
之前在做逆向题的时候遇到过很多加密算法,但是都没有系统的学习过,所以准备总结一下这些算法,今天复现的是tea算法。TEA算法使用64位的明文分组和128位的密钥,使用feistel分组加框架,需要进行32轮循环得到最后的64位密文,其中magic number DELTA是由黄金分割点。 加密算法源 阅读全文