ISCC2024个人挑战赛WP-Badcode

(非官方解,以下内容均互联网收集的信息和个人思路,仅供学习参考)

Badcode

输入的字符串进行了三次加密,最后再与预期的flag密文进行对比

第一次循环:

  1. 遍历 v17 数组的每个字节。
  2. 根据字节索引的奇偶性,将字节的值加 2 或减 3。

第二次循环:

  1. 遍历 v17 数组的每个字节。
  2. 将 v16 数组对应位置的字节减去 48,然后与当前字节进行异或运算。
  3. 将异或结果存储回 v17 数组。

第三次的加密有三个传参,点进函数看一下

XTEA 加密,密钥是 &unk_977018
取出来密文和密钥进行解密即可

#include <stdio.h> #include <stdint.h> #define DELTA 0x9e3779b9

#define MX (((z>>5^y<<2) + (y>>3^z<<4)) ^ ((sum^y) + (key[(p&3)^e] ^ z))) #include <iostream>

using namespace std;

void btea(uint32_t *v, int n, uint32_t const key[4]) { uint32_t y, z, sum;

unsigned p, rounds, e;

if (n > 1) {

rounds = 6 + 52 / n; sum = 0;

z = v[n - 1];

do {

sum -= DELTA;

e = (sum >> 2) & 3;

for (p = 0; p < n - 1; p++) {

y = v[p + 1];

z = v[p] += MX;

}

y = v[0];

z = v[n - 1] += MX;

} while (--rounds);

} else if (n < -1) { n = -n;

rounds = 6 + 52 / n; sum = rounds * DELTA; y = v[0];

do {

e = (sum >> 2) & 3;

for (p = n - 1; p > 0; p--) { z = v[p - 1];

y = v[p] -= MX;

}

z = v[n - 1];

y = v[0] -= MX; sum -= DELTA;

} while (--rounds);

}

}

int main() {

uint32_t key[4] = {0x12345678, 0x9ABCDEF0, 0xFEDCBA98, 0x76543210}; uint32_t v[] = { 0x3881C7CA, 0x5AEA661A, 0xC0E1397D, 0x3C415BB1, 0xDC546CB9,

0x5DC6BE6 };

btea(v, -6, key); string a = (char *)v; int v16[24]; srand(0x18u);

for (int i = 0; i < 24; ++i ) {

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| v16[i] = rand() % 10 + 48; } for (int k = 0; k < 24; ++k ) { a[k] ^= (v16[k] - 48); } for (int j = 0; j < 24; ++j ) { if ( j % 2 ) { a[j] -= 2; } else { a[j] += 3; } } for (int i = 0; i < 24; i++) { cout << (char)a[i]; } |

|---|
| } |

运行脚本时要注意一下 v[] 的变化

相关推荐
H轨迹H17 小时前
Vulnhub-election靶机
网络安全·渗透测试·vulnhub·ctf·信息收集·web漏洞·oscp
亿.621 小时前
阿里云CTF2025 ---Web
web·ctf·writeup
合天网安实验室2 天前
ApoorvCTF Rust语言逆向实战
ctf·ctf逆向·apoorvctf
Мартин.4 天前
[Meachines] [Easy] Luanne Lua RCE+bozoHTTPd LFI+NetBSD-Dec+doas权限提升
ctf·htb
Sweet_vinegar5 天前
WEB12~13
安全·php·web·ctf·ctfshow
H轨迹H7 天前
Vulnhub-Zico2靶机-漏扫弱口令数据库+文件包含反弹shell+zip,tar提权
网络安全·渗透测试·vulnhub·ctf·信息收集·web漏洞·oscp
SecRIO7 天前
[SWPUCTF 2022 新生赛]1z_unserialize
php·ctf·php反序列化
Мартин.8 天前
[Meachines] [Easy] Armageddon Drupal 7 RCE+TRP00F权限提升+Snap dirty_sock权限提升
ctf·htb
H轨迹H9 天前
Jsmoke-一款强大的js检测工具,浏览器部署即用,使用方便且高效
网络安全·渗透测试·ctf·工具·web漏洞·信息泄露
Sweet_vinegar9 天前
vim临时文件泄露
linux·安全·网络安全·vim·web·ctf·ctfshow