当前位置: 首页 > news >正文

NewStarCTF2023 Reverse Week3 EzDLL WP

分析

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这里调用了z3h.dll中的encrypt函数。

用ida64载入z3h.dll

直接搜索encrypt

在这里插入图片描述

找到了一个XTEA加密。接着回去找key和密文。

在这里插入图片描述
在这里插入图片描述

发现key

在这里插入图片描述

这里用了个调试状态来判断是否正确,v7=1,要v7=1才会输出Right,即程序要处于飞调试状态。

可以知道 这俩个字节数组要相同,这样v9才会=0;

在这里插入图片描述

找到密文数据。。

EXP

#include <stdio.h>
void decrypt(unsigned int *v, unsigned int * key){unsigned int v0 = v[0],v1 = v[1], sum = 0, delta = 0x3B9AC9FF;sum = 1 + delta * 33;for (size_t i = 0; i < 33; i++){v1 -= (((v0 << 3) ^ (v0 >> 4)) + v0) ^ (sum + key[(sum >> 11 ) & 3]);sum -= delta;v0 -= (((v1 << 3) ^ (v1 >> 4)) + v1) ^ (sum + key[(sum & 3)]);}v[0] = v0;v[1] = v1;
}
unsigned char a[41] = { 0x82, 0x43, 0xA3, 0x89, 0x6F, 0xBA, 0x80, 0xC8, 0xF8, 0xB4, 0x56, 0xBD, 0xB3, 0x41, 0xB2, 0x8D, 0xDA, 0x44, 0x0E, 0x04, 0x03, 0x2E, 0x38, 0xDE, 0x12, 0x54, 0xAD, 0x89, 0x95, 0x30, 0x63, 0x21, 0xDF, 0x0D, 0x94, 0x11, 0xDC, 0xB2, 0xD0, 0x11};
unsigned int key[] = {5,20,13,14};signed main(){unsigned int *t = (unsigned int *)a;for (int i = 0; i < 9; i += 2){decrypt(t+i,key);}for (int i = 0; i < 10; i++){printf("%c%c%c%c", *((char *)&t[i] + 0), *((char *)&t[i] + 1), *((char *)&t[i] + 2), *((char *)&t[i] + 3));}
}
http://www.lryc.cn/news/235737.html

相关文章:

  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • php-cli
  • [C/C++] 数据结构 LeetCode:用队列实现栈
  • ESP32网络开发实例-物联网声污染监测系统
  • Unexpected error from cudaGetDeviceCount 错误解决
  • 目标检测—YOLO系列(二 ) 全面解读复现YOLOv1 PyTorch
  • 使用C#插件Quartz.Net定时执行CMD任务工具2
  • Java实现两数之和-算法
  • leetcode刷题日记:190. Reverse Bits(颠倒二进制位)和191. Number of 1 Bits( 位1的个数)
  • Node.js之fs文件系统模块
  • 「Verilog学习笔记」使用8线-3线优先编码器Ⅰ实现16线-4线优先编码器
  • C/C++---------------LeetCode第LCR. 024.反转链表
  • 最长回文子序列 递归与动态规划
  • 学生邮箱白嫖/免费安装JetBrains全家桶(IDEA/pycharm等) —— 保姆级教程
  • 67基于matlab图像处理,包括颜色和亮度调整、翻转功能、空间滤波和去噪、频域滤波和去噪、噪声添加,形态学操作、边缘检测及示波器集成的GUI图像处理。
  • 【精选】项目管理工具——Maven详解
  • DVWA - 4
  • gRPC之grpc resolver
  • NI Package Manager创建程序包
  • C语言实现排序介绍
  • 64位ATT汇编语言使用bss段.skip指令储存字符,并使用系统调用输出字符
  • 贝锐蒲公英路由器X4C如何远程访问NAS?
  • Golang Context 的使用指南
  • vue3使用西瓜播放器播放flv、hls、mp4视频
  • 【Promise12数据集】Promise12数据集介绍和预处理
  • Qt设置整体背景颜色
  • Stream流常见操作
  • INFINI Labs 产品更新 | 发布 Easysearch Java 客户端,Console 支持 SQL 查询等功能
  • 前端调试只会console.log()?
  • CentOS Linux release 7.9.2009 (Core)中安装配置Tomcat