re学习(15)BUUCTF 2019红帽杯easyRe(寻找数据+xor问题)

news2024/11/18 3:19:10

参考视频:

【BUUCTF】每天一个CTF11“2019红帽杯easyRe”_哔哩哔哩_bilibili

(本人觉得看视频比看博客效率能提高十倍,呜呜呜,还是视频香~~~与君共勉)

下载地址:

BUUCTF在线评测

前言:虽然带有easy,但是并不是那么easy。CTF偏向于算法,实战偏向于程序逻辑,执行的流程

刷题所得:

AB键将转伪代码,与空格键配合使用

0→字符串的结束标志,查看字符串结尾

Shift+e:导出数据,提取数据

X;交叉引用,寻找哪个函数用了这段数据

*号键:可以创建数组,规定数组大小

题解:
1.ida64打开

                                                  (建议多看汇编,少看伪代码 )

                                       (CTF解题大概就在这个函数里面了)

   (推测flag可能在off_6CC090中)

 进入off_6CC090,进行base64解密

 

import base64

encData='Vm0wd2VHUXhTWGhpUm1SWVYwZDRWVll3Wkc5WFJsbDNXa1pPVlUxV2NIcFhhMk0xVmpKS1NHVkdXbFpOYmtKVVZtcEtTMUl5VGtsaVJtUk9ZV3hhZVZadGVHdFRNVTVYVW01T2FGSnRVbGhhVjNoaFZWWmtWMXBFVWxSTmJFcElWbTAxVDJGV1NuTlhia0pXWWxob1dGUnJXbXRXTVZaeVdrWm9hVlpyV1hwV1IzaGhXVmRHVjFOdVVsWmlhMHBZV1ZSR1lWZEdVbFZTYlhSWFRWWndNRlZ0TVc5VWJGcFZWbXR3VjJKSFVYZFdha1pXWlZaT2NtRkhhRk5pVjJoWVYxZDBhMVV3TlhOalJscFlZbGhTY1ZsclduZGxiR1J5VmxSR1ZXSlZjRWhaTUZKaFZqSktWVkZZYUZkV1JWcFlWV3BHYTFkWFRrZFRiV3hvVFVoQ1dsWXhaRFJpTWtsM1RVaG9hbEpYYUhOVmJUVkRZekZhY1ZKcmRGTk5Wa3A2VjJ0U1ExWlhTbFpqUldoYVRVWndkbFpxUmtwbGJVWklZVVprYUdFeGNHOVhXSEJIWkRGS2RGSnJhR2hTYXpWdlZGVm9RMlJzV25STldHUlZUVlpXTlZadE5VOVdiVXBJVld4c1dtSllUWGhXTUZwell6RmFkRkpzVWxOaVNFSktWa1phVTFFeFduUlRhMlJxVWxad1YxWnRlRXRXTVZaSFVsUnNVVlZVTURrPQ== '
for i in range(10):
    encData=base64.b64decode(encData)
print(encData)

然后怎么办呢?遇到了困难,请教别人,别人根据经验.........

                           (从flag开始 两次异或)

key='flag'
encKey=[0x40, 0x35, 0x20, 0x56]
for i in range(len(encKey)):
    encKey[i]^=ord(key[i%4])
encData=[
  0x40, 0x35, 0x20, 0x56, 0x5D, 0x18, 0x22, 0x45, 0x17, 0x2F,
  0x24, 0x6E, 0x62, 0x3C, 0x27, 0x54, 0x48, 0x6C, 0x24, 0x6E,
  0x72, 0x3C, 0x32, 0x45, 0x5B
]
for i in range(len(encData)):
    print(chr(encData[i]^encKey[i%4]),end='')
#flag{Act1ve_Defen5e_Test}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756742.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Boot集成Redisson实现分布式锁

Spring Boot集成Redisson实现分布式锁 在分布式系统中,为保证数据的一致性和并发访问的安全性,我们经常会使用分布式锁来协调多个节点之间对共享资源的访问。Redisson是一个基于Redis的Java驻内存数据网格(In-Memory Data Grid)和…

【C++】string类模拟

文章目录 成员变量和查看接口迭代器(读和读写)operator[](读和读写)c_str()size() 构造函数用字符串构造用对象构造(两种方法)析构 赋值运算符重载扩容和调整reserve()resize()clear() 增删查改push_back()…

C++的switch函数用法

一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。 语法 C 中 switch 语句的语法: switch(expression){ case constant-expression : statement(s); break; // 可选的 case c…

Redis数据类型 — Zset

目录 Zset内部设计 跳表哈希表 ZipList ZSet中每一个元素都需要指定一个score值和member值&#xff1a;<1> 可以根据score值排序后<2> member必须唯一<3> 可以根据member查询分数 Zset内部设计 因此&#xff0c;zset底层数据结构必须满足键值存储、键必…

AutoCAD如何通过C#进行插件开发?

文章目录 0.引言1.开发工具准备2.VS&#xff08;C#&#xff09;创建插件3.使用插件 0.引言 AutoCAD是一款广泛应用于工程设计和建筑行业的计算机辅助设计软件。通过使用C#语言进行插件开发&#xff0c;可以扩展AutoCAD的功能&#xff0c;实现定制化的需求。插件可以实现自动化绘…

linux之Ubuntu系列(-)

单用户和多用户 注意事项 Linux 系统 中区分大小写的 Window 系统 不分区大小写的

1.Java语言概述

1.1概述 JDK(Java development kit)java开发工具包 JDK是提供Java开发人员使用的&#xff0c;其中包含java的开发工具&#xff0c;包括JRE,所以安装JDK&#xff0c;就不需要安装JRE了 其中编译工具javac.exe、打包工具jar.exe JRE(Java Runtime environment) java运行环境 包括…

android11 input 事件 1 初始化

system_server 初始化InputManagerService // SystemServer.java private void startOtherServices(NonNull TimingsTraceAndSlog t) {t.traceBegin("startOtherServices");// 初始化InputManagerServicet.traceBegin("StartInputMana…

让机器学习不再是过门不入,带您一起详解机器学习(机器学习 Machine Learning 研习之一)

什么是机器学习&#xff08;Machine Learning&#xff09;&#xff1f; 机器学习是]赋予计算机学习能力的研究领域 无需明确编程。 ——阿瑟塞缪尔&#xff0c;1959 计算机程序可以从关于某些任务的经验 E 中学习 T 和一些绩效衡量 P&#xff0c;如果其在 T 上的绩效按 P 衡量&…

微信批量自动加好友神器,多账号如何统一自动加好友

其实这样的方式不仅太集中容易造成频繁 效率还很低 现在可以解放双手 只需要你有数据 导入数据设置相应添加任务 就可以每天根据你设置的时间点去添加好友 直到数据被用完 就不用每天手动一个个去添加咯 还可以多账号统一自动加好友 一天就可以加多点 相信 无论是个…

RDS-Tools RDS-Knight Crack

RDS 高级安全性 利用全面的网络安全工具箱中有史以来最强大的安全功能集来保护您的 RDS 基础架构。 全方位 360 保护 无与伦比的功能集 无与伦比的物有所值 企业远程桌面安全。现代工作空间的智能解决方案。 办公室正在权力下放。远程办公室和移动员工数量创历史新高。随…

Netty网络编程

参考文档 https://zhuanlan.zhihu.com/p/550956053 https://zhuanlan.zhihu.com/p/514448867 BIO 读取数据有两个阶段 等待数据就绪&#xff0c;数据到达内核缓冲区读取数据(系统调用)&#xff0c;从内核缓冲区&#xff0c;拷贝至用户缓冲区 BIO两个阶段都会阻塞 BIO编程时&…

RIS 系列 RISCLIP: Referring Image Segmentation Framework using CLIP 论文阅读笔记

RIS 系列 RISCLIP: Referring Image Segmentation Framework using CLIP 论文阅读笔记 一、Abstract二、引言三、相关工作Referring Image SegmentationVisual Grounding PretrainingContrastive Language-Image Pre-training (CLIP) 四、Referring Image Segmentation Framewo…

Numpy总结

Numpy 文章主要通过案例来理解广播机制、结合相应函数&#xff08;rollaxis、swapaxes&#xff09;来理解Axis、总结了相关函数axis1的操作规律。 文章参考博客如下&#xff1a; 大致参考&#xff1a;Python之Numpy详细教程。 线性代数部分&#xff1a;Numpy重要模块——lin…

考研英语一阅读真题逐词翻译(2010-2023)共211页

整理了考研英语一阅读真题逐词翻译&#xff08;2010-2023&#xff09;共211页 包含了2010年到2023年所有阅读的逐次逐句翻译&#xff0c;重难点单词的下划线翻译等 也对这份真题逐词翻译进行了年份分类整理&#xff0c;合集包含了多年的考研英语一阅读题目&#xff0c;覆盖了不…

美团JVM面试题

1. 请解释一下对象创建的过程? Java对象创建的过程主要分为以下五个步骤&#xff1a; 类加载检查 Java虚拟机在读取一条new指令时候&#xff0c;首先检查能否在常量池中定位到这个类的符号引用&#xff0c;并且检查这个符号引用代表的类是否被加载、解析和初始化。如果没有&a…

数据库多表查询作业

数据库多表查询作业 创建数据库 插入数据 mysql> insert into student values(901,张老大,男,1985,计算机系,北京市海淀区),-> (902,张老二,男,1986,中文系,北京市昌平市),-> (903,张三,女,1990,中文系,湖南省永州市), -…

IT学不好没什么,大不了躺平

目录 一、个人经历 二、情绪调节技巧和策略 三&#xff1a;治愈自己 最近确实发生很多因为情绪失控发生意外的事情&#xff0c;有伤害别人的&#xff0c;也有伤害自己的&#xff0c;最近才听说过一个词叫呼吸性碱中毒&#xff0c;这就是情绪波动导致的身体不适&#xff0c;有…

layui实现左侧导航树形菜单

今日金句 战术上的勤奋并不能掩盖战略上的懒惰 文章目录 前言一、左侧导航1.1 概述1.2 树形菜单 二、导入数据表及无限级分类2.1 导入数据2.2 无限级分类 三、Book实例3.1 环境准备3.3 导入封装的工具类3.3 实体类及dao方法的编写3.4 编写Servlet3.5 编写Jsp 前言 在上篇博客…

【miniQMT实盘量化2】与客户端建立连接

前言 上篇从概念上介绍了miniQMT和它的优势&#xff0c;本篇开始实操的第一步&#xff1a;连接客户端&#xff0c;让你知其然&#xff0c;也只其所以然&#xff0c;话不多说&#xff0c;开干&#xff01; 登录客户端 一切的开始&#xff0c;我们要首先保证QMT极简版客户端的…