随笔分类 -  CTF逆向

摘要:之前在做逆向题的时候遇到过很多加密算法,但是都没有系统的学习过,所以准备总结一下这些算法,今天复现的是tea算法。TEA算法使用64位的明文分组和128位的密钥,使用feistel分组加框架,需要进行32轮循环得到最后的64位密文,其中magic number DELTA是由黄金分割点。 加密算法源 阅读全文
posted @ 2021-09-02 20:41 Sk2rw 阅读(1600) 评论(1) 推荐(1)
摘要:用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) 阅读全文
posted @ 2021-08-20 12:01 Sk2rw 阅读(334) 评论(0) 推荐(0)
摘要:安卓题,直接将apk拖进jeb分析,看不到东西,可能是加壳了 利用xposed模块和反射大师将程序内存数据dump出来,这里要 感谢web1n老师的帮忙。 分析dump出来的数据 第一段flag比较简单,直接进行base64解密,得到前半段flag sctf{W3lc0me 后半段的逻辑是,将syc 阅读全文
posted @ 2021-08-09 23:38 Sk2rw 阅读(377) 评论(0) 推荐(0)
摘要:die 查看发现是mips的指令集,无壳,直接拖进ida 初看逻辑应该比较简单,跟进函数。 这个函数里面是程序的主要逻辑,可以看到一个异或的操作,之前在上面可以找到一串密文。 猜测逻辑是,将flag的每一个字符与23加一开始进行异或。 str = [0x62,0x6C,0x7F,0x76,0x7A, 阅读全文
posted @ 2021-08-07 23:54 Sk2rw 阅读(255) 评论(0) 推荐(0)
摘要:无壳,64位程序,直接拖进ida 前面逻辑比较简单,就是通过rc4加密然后base64转码之后与密文进行对比。 主要看一下最后面base64加密这块,他没有给提供加密表 通过查看这一部分可以获取base64的加密段 data=[0x5a, 0x60, 0x54, 0x7A, 0x7A, 0x54, 阅读全文
posted @ 2021-08-07 16:12 Sk2rw 阅读(379) 评论(0) 推荐(0)
摘要:前几天去了趟青海搞培训,下课的时候有个老哥问了这道题,之前一直没时间搞,今天突然想起来了就看了看。 有两个文件,双击运行exe。 运行之后输入程序闪退,直接拖进ida,32位程序无壳。 逻辑比较简单,可以看到有两个分别对文件进行读取和写入的操作,我们跟进第一个关键函数 一个简单的异或脚本可以算出st 阅读全文
posted @ 2021-08-02 19:10 Sk2rw 阅读(2312) 评论(0) 推荐(1)
摘要:好长时间没有更新过博客了,水了一道题。 无壳,64位程序,拖进ida。 逻辑比较简单,先base加密,又经过两次位变换,位变换可以通过爆破得到。 str = "EmBmP5Pmn7QcPU4gLYKv5QcMmB3PWHcP5YkPq3=cT6QckkPckoRG" string ="ABCDEFG 阅读全文
posted @ 2021-06-27 23:21 Sk2rw 阅读(351) 评论(0) 推荐(0)
摘要:MD5的典型应用是对一段信息产生信息摘要,以防止被篡改。 算法过程:对MD5算法简要的叙述可以为:MD5以512位分组来处理出入的信息,且每一分租又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将产生一个128位散列值。 在MD5算法中,首 阅读全文
posted @ 2021-05-24 16:53 Sk2rw 阅读(1232) 评论(0) 推荐(1)
摘要:AES加密算法是典型的对称加密算法,对称加密算法也就是加密和解密用相同的密钥。 AES加密数组块分组长度必须为128比特,密钥长度可以是128比特、192比特、256比特中的任意一个。AES加密有很多轮的重复和变换,步骤是1、密钥扩展,2、初始轮,3、重复轮,4、最终轮。 1、字节代换 AES的字节 阅读全文
posted @ 2021-05-22 23:55 Sk2rw 阅读(2916) 评论(0) 推荐(0)
摘要:之前在做逆向题的时候遇到过很多加密算法,但是都没有系统的学习过,所以准备总结一下这些算法,今天复现的是tea算法。TEA算法使用64位的明文分组和128位的密钥,使用feistel分组加框架,需要进行32轮循环得到最后的64位密文,其中magic number DELTA是由黄金分割点。 加密算法源 阅读全文
posted @ 2021-05-21 22:33 Sk2rw 阅读(5587) 评论(0) 推荐(0)
摘要:这道题是2021看雪ctf的第四题,这道题输入的key是9x9数独游戏的唯一解,然后根据这个密钥转换为这个数独中应该填写的数字,判断其行是否合法、列是否合法以及粗线宫是否合法。如果合法则计算其md5,然后aes解密shellcode。解密正确的话则会正确执行shellcode,从而弹出input c 阅读全文
posted @ 2021-05-20 22:14 Sk2rw 阅读(353) 评论(0) 推荐(0)
摘要:这道题是xi@0ji233师傅出的一道题 无壳,直接拖进ida 这道题用到了一个sort函数的快速排序算法。整体逻辑还是比较简单的 可以找到s,d,c三个表,cmp里面给出了排序的规则。可以根据c表和d表算出转换之后的 d表再与s表进行异或即可得到flag,当然也可以在sort函数之后下个断点,动调 阅读全文
posted @ 2021-05-19 22:31 Sk2rw 阅读(165) 评论(0) 推荐(0)
摘要:用jeb进行反编译,猜测是要对so文件进行逆1向,分离出so拖进ida。 逻辑看起来比较简单。查看sub_FFC和sub_1088函数 emmm,可以看出是rc4加密。 这题的逻辑是将flag进行rc4加密,再与key进行异或。 key3 = [146, 40, 208, 93, 26, 141, 阅读全文
posted @ 2021-05-19 22:15 Sk2rw 阅读(105) 评论(0) 推荐(0)
摘要:拖进ida 本题逻辑比较简单,可以采用爆破的方式获取flag。 flag = "qctf{" keys = [0x52, 0xFD, 0x16, 0xA4, 0x89, 0xBD, 0x92, 0x80, 0x13, 0x41, 0x54, 0xA0, 0x8D, 0x45, 0x18, 0x81, 阅读全文
posted @ 2021-05-13 21:33 Sk2rw 阅读(376) 评论(0) 推荐(0)
摘要:拖进ida 关键函数在RxEncode 给出了一个表,逻辑是将输入的字符经过函数之后与s2进行对比,如果相等则成功。这个东西逆不出来看大佬wp原来是爆破。 table="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234{}789+/= 阅读全文
posted @ 2021-05-13 14:02 Sk2rw 阅读(219) 评论(0) 推荐(0)
摘要:拖进ida发现无法进行反编译。 通过看汇编,发现有花指令存在。去除花指令之后p声明函数。转到main函数 很复杂的一堆变量,经过查询可以进行符号执行,需要angr模块。 import angr import claripy p=angr.Project('./attachment',load_opt 阅读全文
posted @ 2021-05-10 22:05 Sk2rw 阅读(308) 评论(0) 推荐(0)
摘要:下载附件查壳,无壳.net文件 查看源码 分析代码应该是输入密码之后和passwd进行比较,进入密码函数。 发现密码,base64解密获得flag。 CFI{.NetC#_1s_@w3s0m3} 阅读全文
posted @ 2021-05-06 20:52 Sk2rw 阅读(205) 评论(0) 推荐(0)
摘要:下载文件查壳,文件无壳64位 刚用ida打开的时候一脸问号,分析了半天乱七八糟于是动调,发现一直在某个地方进行循环,在百度搜索后知道这个是需要控制流平坦化。 处理文件的时候需要用到脚本,这里贴出官方给出的wp脚本。 def patch_nop(start,end): for i in range(s 阅读全文
posted @ 2021-05-06 11:44 Sk2rw 阅读(300) 评论(0) 推荐(0)
摘要:下载附件之后点击安装,得到challenge文件。无壳。 运行文件 因为是.net文件所以用dnspy打开。 之前运行文件的时候发现有个decode,发现有个btnDecode_Click函数。但是一直找不到这个dat_secret。下断点调试运行。 运行出现flag。不咋会用dnspy,题稍微难点 阅读全文
posted @ 2021-05-02 18:10 Sk2rw 阅读(267) 评论(0) 推荐(0)
摘要:今天本来不想做题来着,但是发现了个new challange,顺手打开看了看。 无壳,用ida64打开。 对c++的逻辑一直不是很清楚,粗略的看了一下感觉流程还是挺简单的,给出了rightflag,还给出了一串字符串。直接盲猜是换表的base64。 贴出脚本 import base64 import 阅读全文
posted @ 2021-02-08 20:03 Sk2rw 阅读(741) 评论(0) 推荐(0)