The_Maya_Society

突然发现自己做了一些逆向题都没有写笔记
今天,发现这道题有意思

1.解压文件

在这里插入图片描述

在这里插入图片描述
三个文件The Maya Society.html,maim.cc,maya.png
当时我看到这个题的时候,我以为是不是会是js逆向
看来是我蠢了

这三个文件,main.css和maya.png这两个就是
main.css这个就是这个主页的设计
maya.png就是这张图
在这里插入图片描述

看看html有什么信息没有
在这里插入图片描述
在这里插入图片描述

主要分析

最后就是launcher这个文件
在这里插入图片描述ELF文件

IDA打开看看,很自然的就找到了main函数
一次对应看看IDA反汇编有什么坑没
那就直接看看代码

__int64 __fastcall main(int a1, char **a2, char **a3)
{size_t v3; // rbxsize_t v4; // raxsize_t v6; // raxsize_t v7; // rax__int64 v8; // rditime_t timer; // [rsp+18h] [rbp-128h] BYREFchar v10[32]; // [rsp+20h] [rbp-120h] BYREFchar src[32]; // [rsp+40h] [rbp-100h] BYREFchar s[104]; // [rsp+60h] [rbp-E0h] BYREF__int64 v13; // [rsp+C8h] [rbp-78h] BYREFchar v14[9]; // [rsp+D4h] [rbp-6Ch] BYREFchar v15[9]; // [rsp+DDh] [rbp-63h] BYREFchar v16[9]; // [rsp+E6h] [rbp-5Ah] BYREFchar v17[9]; // [rsp+EFh] [rbp-51h] BYREFvoid (__fastcall *v18)(__int64); // [rsp+F8h] [rbp-48h]__int64 v19; // [rsp+100h] [rbp-40h]char *v20; // [rsp+108h] [rbp-38h]char *dest; // [rsp+110h] [rbp-30h]int *v22; // [rsp+118h] [rbp-28h]size_t v23; // [rsp+120h] [rbp-20h]struct tm *tp; // [rsp+128h] [rbp-18h]strcpy(v10, ".fluxfingers.net");timer = time(0LL);tp = localtime(&timer);strftime(s, 0x63uLL, "%Y-%m-%d", tp);v23 = strlen(s);mad5(s, v23);v22 = &dword_2030B8;snprintf(v17,9uLL,"%02x%02x%02x%02x",(unsigned __int8)dword_2030B8,BYTE1(dword_2030B8),BYTE2(dword_2030B8),HIBYTE(dword_2030B8));v22 = &dword_2030C0;snprintf(v16,9uLL,"%02x%02x%02x%02x",(unsigned __int8)dword_2030C0,BYTE1(dword_2030C0),BYTE2(dword_2030C0),HIBYTE(dword_2030C0));v22 = &dword_2030B4;snprintf(v15,9uLL,"%02x%02x%02x%02x",(unsigned __int8)dword_2030B4,BYTE1(dword_2030B4),BYTE2(dword_2030B4),HIBYTE(dword_2030B4));v22 = &dword_2030BC;snprintf(v14,9uLL,"%02x%02x%02x%02x",(unsigned __int8)dword_2030BC,BYTE1(dword_2030BC),BYTE2(dword_2030BC),HIBYTE(dword_2030BC));snprintf(src, 0x21uLL, "%s%s%s%s", v17, v16, v15, v14);v3 = strlen(src);v4 = strlen(v10);dest = (char *)malloc(v3 + v4 + 1);if ( !dest )return 1LL;*dest = 0;strcat(dest, src);strcat(dest, v10);v20 = (char *)sub_18A4(dest);if ( !v20 )return 1LL;v6 = strlen(v20);v19 = sub_15E0(v20, v6, &v13);v7 = strlen(v20);v18 = (void (__fastcall *)(__int64))sub_15E0(v20, v7, &v13);if ( !v19 )return 1LL;v8 = v19;sub_1858(v19, v13, v18);v18(v8);return 0LL;
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
获取到正确的日期
md5加密后拼接.fluxfingers.net
后端服务器域名解析并返回正确的响应内容-
传统base64解密
简单的逐位异或
得到flag

最后的问题,就是这个时间是多少?
好玩的地方,这个时间是maya预言的世界末日时间

2012年12月21日
把linux时间设置成这个时间就好了
flag{e3a03c6f3fe91b40eaa8e71b41f0db12}

当然你也可以写个脚本

逆向还是要一条条的来
不过最近再学习了操作系统,有些更多的理解了,对于汇编语言,反汇编还得多看才行

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

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

相关文章

PyQt5的安装和配置

1.准备工作 首先,下载Pycharm及python-3.7.5-amd64.exe并安装两个软件。 Pycharm链接: python-3.7.5-amd64.exe链接: 2.1.在线安装 pip安装PyQt5: pip install PyQt5 pip安装pyqt5-tools pip install pyqt5-tools 遇到下载…

编译原理 LR(0)

讲解视频:编译原理LR(0)分析表(上)_哔哩哔哩_bilibili 【编译原理】LR(0)分析表分析输入串_哔哩哔哩_bilibili 拓广文法 已知G:S->(S)S | ε 拓广文法: S -> S S -> (S)S S -> ε…

基于springboot的公交线路查询系统设计与实现

第1章 绪论 1.1 研究背景 互联网时代不仅仅是通过各种各样的电脑进行网络连接的时代,也包含了移动终端连接互联网进行复杂处理的一些事情。传统的互联网时代一般泛指就是PC端,也就是电脑互联网时代,但是最近几十年,是移动互联网…

中台架构下的性能测试实践方法

有同学私信问我:中台服务建设过程中,性能测试如何开展?问题背景如下: 业务背景:银行业务; 技术架构:业务应用和中台之间请求统一走ESB; 当前阶段:中台建设中,…

如何部署 wfs 分布式服务

说明: wfs是海量小文件存储系统。wfs1.x不直接支持分布式存储,但为了应对大规模部署和高可用需求,推荐采用如Nginx这样的负载均衡服务,通过合理的资源配置和定位策略,可以在逻辑上模拟出类似分布式的效果。也就是说&am…

【kettle002】kettle访问人大金仓KingbaseES数据库并处理数据至execl文件

一直以来想写下基于kettle的系列文章,作为较火的数据ETL工具,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。 熟悉、梳理、总结下人大金仓KingbaseES数据库相关知识体系 kettle访问人大金仓KingbaseES数据库…

Linux网络-DHCP原理与配置

目录 一.DHCP工作原理 1.了解DHCP服务 1.1.使用DHCP的好处 1.2.DHCP的分配方式 2.DHCP的租约过程 2.1.DHCP工作原理 2.2.DHCP交互过程 二.DHCP服务器的配置 1.关闭防火墙 2.检查并且安装DHCP有关软件包 3.查看系统的配置文件 3.1.设置参数 4.修改网络 4.1.修改虚…

redis基于Stream类型实现消息队列,命令操作,术语概念,个人总结等

个人大白话总结 1 在Redis Stream中,即使消息被消费者确认(acknowledged, ACK),消息也不会自动从Stream数据结构中删除。这与Kafka或RabbitMQ等传统消息队列系统的做法不同,在那些系统中,一旦消息被消费并…

MyBatisPlus详解(四)通用枚举、JSON类型处理器、配置加密、自动分页插件与工具类

文章目录 前言3 扩展功能3.3 通用枚举3.3.1 使用枚举类3.3.2 功能测试 3.4 JSON类型处理器3.4.1 使用JSON类型处理器3.4.2 功能测试 3.5 配置加密3.5.1 生成密钥3.5.2 修改配置3.5.3 功能测试 4 插件功能4.1 自动分页插件4.1.1 配置分页插件4.1.2 分页API 4.2 通用分页实体4.2.…

递归实现斐波那契数列的空间复杂度的讲解

题目:计算斐波那契数列Fib的空间复杂度 过程图解: 理解要点: 递归的运算顺序和方式不是同时进行图中的所有Fib函数,而是有顺序的! 第一步:单独的一个Fib(N)进行到底Fib&#xff08…

XV6源码阅读——进程地址空间

文章目录 前言页表实际情况 前言 一个本硕双非的小菜鸡,备战24年秋招。打算尝试6.S081,将它的Lab逐一实现,并记录期间心酸历程。 代码下载 官方网站:6.S081官方网站 页表 每个进程都有一个单独的页表,当xv6在进程之…

Linux套接字编程详解

Linux套接字编程 预备知识IP地址和MAC地址套接字结构网络字节序 UDP套接字编程服务端代码客服端代码 TCP 套接字守护进程 计算器模块1 日志头文件序列化和反序列化 预备知识 IP地址和MAC地址 MAC地址用来在局域网中标识唯一主机 Ip地址用于在广域网中标识唯一主机 &#xff0…

2767. 将字符串分割为最少的美丽子字符串

2767. 将字符串分割为最少的美丽子字符串 Java: class Solution {int cnt;int ans;int[] arr;Set<Integer> set;private void dfs(String s, String s1, int pos, int len) {if (pos len) {ans Math.min(ans, cnt);return;}for(int i pos; i < len; i) {String s2…

软件游戏缺失d3dcompiler_43.dll怎么修复?分享多种靠谱的解决方法

在我们日常频繁地操作和使用电脑的过程中&#xff0c;时常会遇到一些突发的技术问题。其中一种常见的情况是&#xff0c;在尝试启动或运行某个应用程序时&#xff0c;系统会弹出一个错误提示窗口&#xff0c;明确指出当前电脑环境中缺少了一个至关重要的动态链接库文件——d3dc…

Linux配置腾讯云yum源(保姆级教学)

1. 备份原有的 yum 源配置文件 例如&#xff1a; mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2. 下载腾讯云的 yum 源配置文件 例如&#xff1a; wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/…

将数字状态码在后台转换为中文状态

这是我们的实体类 可以看出我们的状态status是2如果返回到前端我们根本不知道2代表的是什么&#xff0c;所以我们需要再这里将数字转换成能看懂的中文状态&#xff0c;首先我们创建一个枚举类 先将我们状态码所对应的中文状态枚举出来&#xff0c;然后创建一个静态方法&#…

基于OpenCV+QT的人脸识别打卡项目

1.基本概念 基于OpenCV的人脸识别是一个多步骤的过程&#xff0c;通常涉及以下步骤&#xff1a; 人脸检测&#xff1a;使用Haar级联或深度学习模型来检测图像中的面部区域。OpenCV提供了预训练的Haar级联分类器&#xff0c;可以用于快速检测。 特征提取&#xff1a;一旦检测到…

eCharts 折线图 一段是实线,一段是虚线的实现效果

在lineStyle里写了不生效的话&#xff0c;可以尝试数据拼接 option {xAxis: {type: category,data: [Mon, Tue, Wed, Thu, Fri, Sat, Sun]},yAxis: {type: value},series: [{data: [150, 230, 224,218 ,,,],type: line},{data: [,,, 218, 135, 147, 260],type: line,lineStyl…

【御控工业物联网】JAVA JSON结构转换、JSON结构重构、JSON结构互换(5):对象To对象——转换映射方式

御控官网&#xff1a;https://www.yu-con.com/ 文章目录 御控官网&#xff1a;[https://www.yu-con.com/](https://www.yu-con.com/)一、JSON结构转换是什么&#xff1f;二、术语解释三、案例之《JSON对象 To JSON对象》四、代码实现五、在线转换工具六、技术资料 一、JSON结构…

JavaScript实现代码雨

一、功能描述 使用canvas实现一个代码雨的功能&#xff0c;炫一个~~~ 二、上码 html <canvas id"canvas"></canvas> js let canvas document.querySelector(canvas);let ctx canvas.getContext(2d);// screen.availWidth:可视区域的宽度canvas.width…