专栏名称: 看雪学苑
致力于移动与安全研究的开发者社区,看雪学院(kanxue.com)官方微信公众帐号。
今天看啥  ›  专栏  ›  看雪学苑

2024长城杯初赛RE(部分题目)

看雪学苑  · 公众号  · 互联网安全  · 2024-09-25 17:59

文章预览

一 easyre 一、分析 有用的伪代码就这一段。 看得出来关键加密就是for循环里的异或加密。 分析这一段加密 input = argv[1]; j = 1i64; for ( i = 0i64; i != 43; ++i ) { input->m128i_i8[i] ^= input->m128i_u8[i + 1 + -42 * (j / 42)]; ++j; } 简化一下就是: for(int i = 0; i < 43; ++i) { input[i] ^= input[i + 1 - 42 * (i + 1 / 42)] } ◆前41位,input的前一位xor后一位 ◆input[41] ^= input[0] ◆input[42] ^= input[1] 二、确定cipher if (_mm_movemask_epi8(_mm_and_si128(_mm_cmpeq_epi8(_mm_loadu_si128(input), data1), _mm_cmpeq_epi8(_mm_loadu_si128(input + 1), data2))) == 0xFFFF) data1 = [0x0A, 0x0D, 0x06, 0x1C, 0x1D, 0x05, 0x05, 0x5F, 0x0D, 0x03, 0x04, 0x0A, 0x14, 0x49, 0x05, 0x57, 0x0A, 0x0D, 0x06, 0x1C, 0x1D, 0x05, 0x05, 0x5F, 0x0D, 0x03, 0x04, 0x0A, 0x14, 0x49, 0x05, 0x57, 0x00, 0x1B, 0x19, 0x02, 0x01, 0x54, 0x4E, 0x4C, 0x56, 0x00, 0x51, 0x4B, 0x ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览