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

BUUCTF [羊城杯 2020]easyre 题解

一.查壳

64位无壳

二.主函数逻辑

可以得知flag长度为38,然后进行三次加密

第一次加密是base64加密,得到code1

第二次加密是将code1拆成四段赋给code2

第三次加密是将code2内的数字和字母移3位,其他字符不变

str2保存的是最终的加密字符

三.encode_one_base64

看到主函数的str2大概就可以猜到是base64,ctrl+f12也可以看到存在base64表

进入该函数后大概看一下不难发现是base64加密并且这题没有换表操作

四.encode_two

拆分赋值

 

五.encode_three

对数字和字母移三位,其他特殊字符不变,要求出加密前的字符串,只需要对数字+7再mod10,对字母+23再mod26,有点补码的感觉在

六.解题脚本

#include <stdio.h>
int main()
{char str[53] = "EmBmP5Pmn7QcPU4gLYKv5QcMmB3PWHcP5YkPq3=cT6QckkPckoRG";char code2[53] = { 0 };char code1[53] = { 0 };int len = 52;for (int i = 0; i < len; i++)//求解code2{if (str[i] < 'A' || str[i]>'Z'){if (str[i] < 'a' || str[i]>'z'){if (str[i] < '0' || str[i]>'9')code2[i] = str[i];elsecode2[i] = (str[i] - 48 + 7) % 10 + 48;}else{code2[i] = (str[i] - 97 + 23) % 26 + 97;}}else{code2[i] = (str[i] - 65 + 23) % 26 + 65;}}strncpy(code1 + 26, code2, 13u);          //求解code1,调换一下顺序即可strncpy(code1, code2 + 13, 13u);strncpy(code1 + 39, code2 + 26, 13u);strncpy(code1 + 13, code2 + 39, 13u );puts(code1);//打印code1//R1dIVHs2NzJjYzQ3NzhhMzhlODBjYjM2Mjk4NzM0MTEzM2VhMn0=return 0;
}

得到R1dIVHs2NzJjYzQ3NzhhMzhlODBjYjM2Mjk4NzM0MTEzM2VhMn0=

base64解密后得到:GWHT{672cc4778a38e80cb362987341133ea2}

相关文章:

BUUCTF [羊城杯 2020]easyre 题解

一.查壳 64位无壳 二.主函数逻辑 可以得知flag长度为38,然后进行三次加密 第一次加密是base64加密,得到code1 第二次加密是将code1拆成四段赋给code2 第三次加密是将code2内的数字和字母移3位,其他字符不变 str2保存的是最终的加密字符 三.encode_one_base64 看到主函数…...

网络协议(十二):HTTPS(SSL/TLS、TLS1.2的连接)

网络协议系列文章 网络协议(一)&#xff1a;基本概念、计算机之间的连接方式 网络协议(二)&#xff1a;MAC地址、IP地址、子网掩码、子网和超网 网络协议(三)&#xff1a;路由器原理及数据包传输过程 网络协议(四)&#xff1a;网络分类、ISP、上网方式、公网私网、NAT 网络…...

九九乘法表--课后程序(Python程序开发案例教程-黑马程序员编著-第3章-课后作业)

实例9&#xff1a;九九乘法表 乘法口诀是中国古代筹算中进行乘法、除法、开方等运算的基本计算规则&#xff0c;沿用至今已有两千多年。古代的乘法口诀与现在使用的乘法口诀顺序相反&#xff0c;自上而下从“九九八十一”开始到“一一如一”为止&#xff0c;因此&#xff0c;古…...

在超算上安装文件树命令tree

超算平台使用的centos系统没有内置tree命令&#xff0c;需要通过源码安装。记录安装流程如下。 1. 下载源码包 下载链接如下&#xff1a; http://mama.indstate.edu/users/ice/tree/ 选择“Download the latest version” 如本文下载了源码包“tree-2.1.0.tgz”. 2. 源码包…...

论文投稿指南——中文核心期刊推荐(经济管理)

【前言】 &#x1f680; 想发论文怎么办&#xff1f;手把手教你论文如何投稿&#xff01;那么&#xff0c;首先要搞懂投稿目标——论文期刊 &#x1f384; 在期刊论文的分布中&#xff0c;存在一种普遍现象&#xff1a;即对于某一特定的学科或专业来说&#xff0c;少数期刊所含…...

在vue中如果computed属性是一个异步操作怎么办?

在计算属性中使用异步方法时&#xff0c;可以使用async/await来处理异步操作。由于计算属性是基于它们的依赖缓存的&#xff0c;所以我们需要使用一个返回Promise的异步方法来确保计算属性能够正常运行。 下面是一个简单的示例&#xff0c;演示如何在计算属性中使用异步方法&am…...

SRP合批问题

1&#xff09;SRP合批问题 ​2&#xff09;多个Base相机渲染到同一个渲染目标&#xff0c;移动平台花屏的问题 3&#xff09;粒子系统对GPU Instancing的支持 4&#xff09;如何修改URP下场景和UI分辨率分离&#xff08;不需要改颜色空间&#xff09; 这是第327篇UWA技术知识分…...

蓝牙5.1低功耗SOC 私有协议2.4GHz芯片HS6621

HS6621CxC是一个优化功耗真正芯片系统&#xff08;SOC&#xff09;解决方案&#xff0c;适用于蓝牙低功耗和私有的2.4GHz应用场景。它集成了一个高性能、小功率的射频收发器&#xff0c;具有蓝牙基带和丰富的外围IO扩展。还集成了电源管理&#xff0c;以提供高效的电源管理。 …...

数据库连接池

数据库连接---执行完毕---释放 连接--释放 十分浪费系统资源 池化技术&#xff1a;准备一些预先的资源&#xff0c;过来就连接预先准备好的 最小连接数&#xff1a; 10 最大连接数&#xff1a;15 业务最高承载上限 排队等待&#xff0c; 等待超时&#xff1a;100…...

Arrays-sort-的用法

1.集合交换元素 Collections.swap&#xff08;List<?> list, int i, int j&#xff09;&#xff1b; 源码&#xff1a; /*** Swaps the elements at the specified positions in the specified list.* (If the specified positions are equal, invoking this method …...

华为OD机试真题Java实现【寻找相同子串】真题+解题思路+代码(20222023)

寻找相同子串 题目 给你两个字符串 t 和 p ,要求从 t 中找到一个和 p 相同的连续子串,并输出该字串第一个字符的下标。 🔥🔥🔥🔥🔥👉👉👉👉👉👉 华为OD机试(Java)真题目录汇总 输入描述: 输入文件包括两行,分别表示字符串 t 和 p ,保证 t 的长度…...

性能指标 确定性能目标 性能场景设计

性能测试指标 性能测试指标分为业务技术指标和系统资源指标&#xff0c;在服务端性能业务技术指标中分为三个指标&#xff0c;系统吞吐量&#xff0c;响应时间和并发用户数。响应时间分为前端展现时间和系统响应时间两部分&#xff0c;系统吞吐量体现软件系统负载承受能力的指…...

ENVI_Classic:快速入门_菜单栏常见功能的基本介绍

说明&#xff1a;由于实验要求&#xff0c;所以并没有对各个功能进行详尽的解释&#xff0c;大多点到为止&#xff0c;少部分实验内容是实验要求所以步骤详尽。当然由于经验不足&#xff0c;有一些可能存在错误恳请指正.1. 实验目的通过ENVI Classic对自行下载的遥感图像进行一…...

【深度探讨】公共部门在选择区块链平台时要考虑的6个方面

发表时间&#xff1a;2022年8月17日 信息来源&#xff1a;bsvblockchain.org 与私营企业相比&#xff0c;全球的公共部门组织在考虑升级软件解决方案时面临着一系列的全新挑战。公共部门的决策流程冗长而复杂&#xff0c;他们要不惜一切代价避免对现有业务造成干扰&#xff0c;…...

基于阿里云物联网平台设计的实时图传系统_采用MQTT协议传输图像

一、项目功能介绍 当前基于MQTT协议设计了一个实时图传系统,通过这个项目来演示,两个MQTT设备如何互相订阅,进行消息流转。 在阿里云服务器上创建2个设备,分为为设备A和设备B;设备A负责采集本地摄像头画面上传,设备B负责接收设备A上传的数据然后解析显示出来。在阿里云服…...

42-Golang中的单元测试

Golang中的单元测试需求传统方法基本介绍单元测试快速入门总结综合案例需求 在工作中&#xff0c;我们会遇到这样的情况&#xff0c;就是去确认一个函数&#xff0c;或者一个模块的结果是否正确 传统方法 在main函数中&#xff0c;调用addUpper函数&#xff0c;看看实际输出…...

python实现k_means聚类

K-Means算法是将一组N个样本的特征矩阵X划分为K个无交集的簇&#xff0c;直观上来看是簇是一组一组聚集在一起的数据&#xff0c;在一个簇中的数据就认为是同一类。簇就是聚类的结果表现。簇中所有数据的均值通常被称为这个簇的“质心”(Centroids)。在一个二维平面中&#xff…...

【批处理脚本】-3.3-exit命令详解

"><--点击返回「批处理BAT从入门到精通」总目录--> 共3页精讲(列举了所有exit的用法,图文并茂,通俗易懂) 在从事“嵌入式软件开发”和“Autosar工具开发软件”过程中,经常会在其集成开发环境IDE(CodeWarrior,S32K DS,Davinci,EB Tresos,ETAS…)中,…...

如果读了我2011年求职前端开发的酸爽经历,希望你可以鼓起勇气继续向前

今年是2023年&#xff0c;如果你觉得今年找工作很难&#xff0c;狗哥回忆了一下2011年求职前端开发工作的酸爽经历&#xff0c;希望你读了以后可以鼓起勇气&#xff0c;不要迷茫&#xff0c;简历投出去石沉大海的&#xff0c;需要改简历的就赶紧改&#xff0c;刷题不到位的就赶…...

PTA:L1-016 查验身份证、L1-017 到底有多二、L1-018 大笨钟(C++)

目录 PTA&#xff1a;L1-016 查验身份证 问题描述&#xff1a; 实现代码&#xff1a; L1-017 到底有多二 问题描述&#xff1a; 实现代码&#xff1a; L1-018 大笨钟 问题描述&#xff1a; 实现代码&#xff1a; 都是简单模拟题&#xff0c;不再写题解。 PTA&#xf…...

springboot工厂模式解决if_else流程和问题点解决

一、主要问题点 spring中的Bean由IOC容器进行管理&#xff0c;和普通工厂的区别就是springboot中的类不能通过自己New出来使用&#xff0c;如果通过new写入到工厂&#xff0c;涉及到相关实现类调用其他Service&#xff08;该service在正确情况下正常注入&#xff09;&#xff…...

如何避免缓存击穿?使用GO语言实现sliglefight

前言 在缓存系统中&#xff0c;如果发生了缓存未命中&#xff0c;通常会向数据库或者其他的缓存系统来请求数据。 想象这样一种情况&#xff0c;缓存系统中某个热点值被删除了&#xff0c;随后一大批请求到来&#xff0c;造成大量的cache miss&#xff0c;如果这些请求全部都…...

【浅学Java】MySQL索引七连炮

MySQL索引面试七连炮0. 谈一下你对索引的理解1. MySQL索引原理和数据结构能介绍一下吗2. B树和B树的区别3. MySQL聚簇索引和非聚簇索引的区别4. 使用MySQL索引都有什么原则4.1 回表4.2 索引覆盖4.3 最左匹配4.4 索引下推5. 不同的存储引擎是如何进行数据的存储的6. MySQL组合索…...

扬帆优配|昔日白马股濒临退市,却6天5涨停!ST股突然集体爆发

尽管再度重申“公司股票将被停止上市”&#xff0c;但3月8日早间&#xff0c;*ST辅仁股价仍是在开盘后快速封住涨停板。这已是该公司近6个买卖日来&#xff0c;第5次呈现涨停。 无独有偶&#xff0c;8日早间ST东瀛也在此前多次涨停后&#xff0c;再度呈现近4%的涨幅。而就在7日…...

Git 基础(一)—— Git 的安装及其配置

目录 一、Git 的下载与安装 1、Linux 环境 2、Windows 环境 (1) 下载 Git 安装包 (2) 安装 Git 二、Git 配置 1、配置用户信息 2、查看配置信息 3、Windows 环境下配置文件的位置 一、Git 的下载与安装 1、Linux 环境 在保证网络环境畅通的情况下&#xff0c;直接输…...

什么是信息安全风险评估?企业如何做?

什么是信息安全风险评估&#xff1f; 信息安全风险评估是参照风险评估标准和管理规范&#xff0c;对信息系统的资产价值、潜在威胁、薄弱环节、已采取的防护措施等进行分析&#xff0c;判断安全事件发生的概率以及可能造成的损失&#xff0c;提出风险管理措施的过程。当风险评…...

HBase---idea操作Hbase数据库并且映射到Hive

idea操作Hbase数据库并且映射到Hive 文章目录idea操作Hbase数据库并且映射到Hiveidea操作Hbase数据库环境准备启动服务创建Maven工程在测试类中编写初始化方法在测试类中编写关闭方法在测试类中编写创建命名空间方法在测试类中编写创建表方法在测试类中编写查看表结构方法在测试…...

剑指 Offer 61 扑克牌中的顺子

摘要 扑克牌中的顺子 一、集合 Set 遍历 根据题意&#xff0c;此5张牌是顺子的 充分条件 如下&#xff1a; 除大小王外&#xff0c;所有牌 无重复 &#xff1b;设此5张牌中最大的牌为max&#xff0c;最小的牌为min&#xff08;大小王除外&#xff09;&#xff0c;则需满足…...

Spring 响应式编程-读书笔记

序言 大家好&#xff0c;我是比特桃。本文为《Spring 响应式编程》的读书笔记&#xff0c;响应式技术栈可以创建极其高效、易于获取且具有回弹性的端点&#xff0c;同时响应式可以容忍网络延迟&#xff0c;并以影响较小的方式处理故障。响应式微服务还可以隔离慢速事务并加速速…...

CI流水线的理解

一、概念 单元测试&#xff1a;针对软件的基本单元&#xff08;如&#xff1a;类、函数&#xff09;所做的测试。 集成测试&#xff1a;将软件代码单元集成起来后&#xff0c;以组件、模块和子系统为单位进行的测试&#xff0c;主要测试接口间的交互关系。也称组件测试&#xf…...