[HNCTF 2022 WEEK2]TTTTTTTTTea

ops/2024/11/30 10:30:01/

下载附件,用ida打开。

反编译,查看源码。

v4感觉就是密文,进入tea_encrypt中查看加密方式:

就是一个数据转换。

在查看key,找到密钥。

这里是需要转换为四个八位的数,因为一个int是四个字节,一个字节是八位,所以就是要写成四个八位的数组。

然后要注意逻辑的转换,操作的是数组里面的数据

脚本:

#include <stdio.h>
#include <string.h>
#include <stdint.h>
int main(void)
{unsigned int a1[]={0xC11EE75A,0xA4AD0973,0xF61C9018,0x32E37BCD,0x2DCC1F26,0x344380CC};int a2[] = {0x10203,0x4050607,0x8090A0B,0x0C0D0E0F};unsigned int v0,v1,i;for (int k = 0; k < 6; k += 2){v0 = a1[k];v1 = a1[k + 1];long delta = 0x61C88647;long sum = 0 -(32 * delta);for (i = 0; i <= 31; ++i){v1 -= (((v0 >> 5) ^ (16 * v0)) + v0) ^ (a2[(sum >> 11) & 3] + sum);sum += 0x61C88647;v0 -= (((v1 >> 5) ^ (16 * v1)) + v1) ^ (a2[sum & 3] + sum);}a1[k] = v0;a1[k+1] = v1;}for (i = 0; i < 6; i++){for (int j = 0; j <= 3; j++){printf("%c",(a1[i]>>(j*8))&0xff);}}}

flag:NSSCTF{Tea_TEA_TeA_TEa+}


http://www.ppmy.cn/ops/137900.html

相关文章

开发中使用UML的流程_04 CIM-3:定义系统范围

CIM-1和CIM-2的生成文件&#xff0c;跟CIM-3的生成文件之间&#xff0c;有如下的关联性&#xff1a;。CIM-2活动图中的每一个动作&#xff0c;都可能成为CIM-3的系统用例。 。CIM-1中的业务执行者&#xff0c;以及CIM-2中的动作负责人&#xff0c;都可能成为CIM-3的系统执行者(…

【eNSP】ISIS动态路由协议实验

和OSPF一样&#xff0c;IS-IS也是一种基于链路状态并使用最短路径优先算法进行路由计算的一种IGP协议。IS-IS最初是国际化标准组织ISO为它的无连接网络协议CLNP设计的一种动态路由协议。 为了提供对IP的路由支持&#xff0c;IETF在RFC1195中对IS-IS进行了扩充和修改&#xff0c…

三菱A800变频器关于操作面板(FR-DU08)

操作面板的各部分名称(FR-DU08) 关于参数设定模式 在参数设定模式中可对变频器各种功能(参数)进行设定。 说明关于参数设定模式的显示画面。 变更参数设定值 变更示例 变更 Pr.1上限频率。

Qt中模拟鼠标消息并与系统鼠标消息进行区分

功能使用场景&#xff1a; 开发一个教学系统&#xff0c;包含了教师端、学生端&#xff0c;并且教师端支持示教功能。此时&#xff0c;学生端的鼠标、键盘不响应系统事件&#xff0c;但需要响应教师端发过来的鼠标移动、按下消息。 因为共享页面相同&#xff0c;为了提高局域…

论文笔记(五十八)Trends and challenges in robot manipulation

Trends and challenges in robot manipulation 文章概括背景进展展望摘要机器人今天能做什么&#xff1f;机器人今天不能做什么&#xff1f;为什么设计机器人手很困难&#xff1f;超越拟人化设计下一代机器人手的期望目标操控中的感知抓取&#xff1a;迈向操控的垫脚石从抓取到…

原生微信小程序画表格

wxml部分&#xff1a; <view class"table__scroll__view"><view class"table__header"><view class"table__header__item" wx:for"{{TableHeadtitle}}" wx:key"index">{{item.title}}</view></…

项目介绍和游戏搭建(拼图小游戏)

1. &#xff08;1&#xff09; import javax.swing.*;public class GameJFrame extends JFrame {//游戏主界面&#xff0c;游戏的所有逻辑public GameJFrame(){this.setSize(603,680);this.setVisible(true);//true是展示&#xff0c;flase是隐藏} } &#xff08;2&#xff…

c/c++ 用easyx图形库写一个射击游戏

#include <graphics.h> #include <conio.h> #include <stdlib.h> #include <time.h>// 定义游戏窗口的大小 #define WINDOW_WIDTH 800 #define WINDOW_HEIGHT 600// 定义玩家和目标的尺寸 #define PLAYER_SIZE 50 #define TARGET_SIZE 20// 玩家的结构…