攻防世界-Reversing-x64Elf-100
Reversing-x64Elf-100
18最佳Writeup由 yuchouxuan 提供
收藏
反馈
难度:1
方向:Reverse
题解数:15
解出人数:2460
题目来源:
题目描述: 暂无
note:undefined8 FUN_004006fd(long param_1){int local_2c;char *local_28 [4];local_28[0] = "Dufhbmf";local_28[1] = "pG`imos";local_28[2] = "ewUglpt";local_2c = 0;while( true ) {if (0xb < local_2c) {return 0;}if ((int)local_28[local_2c % 3][(local_2c / 3) * 2] - (int)*(char *)(param_1 + local_2c) != 1)break;local_2c = local_2c + 1;}return 1;
}
signed __int64 __fastcall sub_4006FD(__int64 a1)
{signed int i; // [rsp+14h] [rbp-24h]const char *v3; // [rsp+18h] [rbp-20h]const char *v4; // [rsp+20h] [rbp-18h]const char *v5; // [rsp+28h] [rbp-10h]v3 = "Dufhbmf";v4 = "pG`imos";v5 = "ewUglpt";for ( i = 0; i <= 11; ++i ){if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )return 1LL;}return 0LL;
}
*(char *)(i + a1) =(&v3)[i % 3][2 * (i / 3)]-1
CcmbPZ[dd\ig
DepfU`blmfts____________CdoeT_aklesr____________67 100 111 101 84 95 97 107 108
101 115 114
wrong try!
#include<stdio.h>int sub_4006FD(void)
{signed int i; // [rsp+14h] [rbp-24h]const char *v3; // [rsp+18h] [rbp-20h]const char *v4; // [rsp+20h] [rbp-18h]const char *v5; // [rsp+28h] [rbp-10h]
//int a1;v3 = "Dufhbmf";v4 = "pG`imos";v5 = "ewUglpt";for ( i = 0; i <= 11; ++i ){printf("%c",(&v3)[i % 3][2 * (i / 3)]);
// if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )
// return 1LL;}for ( i = 0; i <= 11; ++i ){printf("%s","-");// if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )// return 1LL;}for ( i = 0; i <= 11; ++i ){printf("%c",(&v3)[i % 3][2 * (i / 3)]-1);// if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )// return 1LL;}for ( i = 0; i <= 11; ++i ){printf("-");// if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )// return 1LL;}for ( i = 0; i <= 11; ++i ){printf("%d ",(&v3)[i % 3][2 * (i / 3)]-1);// if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )// return 1LL;}return 0LL;
}int main(void){sub_4006FD();return 0;
}
DepfU`blmfts------------CdoeT_aklesr------------67 100 111 101 84 95 97 107 108
101 115 114
Process exited after 0.07565 seconds with return value 0
请按任意键继续. . .
┌──(kwkl㉿kwkl)-[~/HODL/adworld]
└─$ ./43ba593623a7434fa5437cdd5c7862a1.re
Enter the password: CcmbPZ[dd\ig
Incorrect password!┌──(kwkl㉿kwkl)-[~/HODL/adworld]
└─$ ./43ba593623a7434fa5437cdd5c7862a1.re 1 ⨯
Enter the password: Code_Talkers
Nice!┌──(kwkl㉿kwkl)-[~/HODL/adworld]
└─$
Final try!
#include<stdio.h>int FUN_004006fd( void)
{int local_2c,n,i;char *local_28 [4];int param_1[11]={99};local_28[0] = "Dufhbmf";local_28[1] = "pG`imos";local_28[2] = "ewUglpt";local_2c = 0;for ( local_2c = 0; local_2c <= 11; ++local_2c ) {for (n=0;n<222;n++){if (local_28[local_2c % 3][(local_2c / 3) * 2] - (n + local_2c) == 1)param_1[local_2c]=n;}local_2c = local_2c + 1;}for ( i = 0; i <= 11; ++i ){printf("%c",param_1[i]);}printf("\n------------------------\n");for ( i = 0; i <= 11; ++i ){printf("%c",local_28[i % 3][(i / 3) * 2]-1);} return 1;
}int sub_4006FD(void)
{int i,n; // [rsp+14h] [rbp-24h]const char *v3; // [rsp+18h] [rbp-20h]const char *v4; // [rsp+20h] [rbp-18h]const char *v5; // [rsp+28h] [rbp-10h]
//int a1;v3 = "Dufhbmf";v4 = "pG`imos";v5 = "ewUglpt";int a1[11]={1};// for ( i = 0; i <= 11; ++i )
// {
// printf("%c",(&v3)[i % 3][2 * (i / 3)]);if ( (&v3)[i % 3][2 * (i / 3)] - *(char *)(i + a1) != 1 )return 1LL;
// }
//
//
//
// printf("\n------------------------\n");
//
//
// for ( i = 0; i <= 11; ++i )
// {
// printf("%c",(&v3)[i % 3][2 * (i / 3)]-1);
//
// }printf("\n------------------------\n");for ( i = 0; i <= 11; ++i ){// printf("%c",(&v3)[i % 3][2 * (i / 3)]-1);for ( n = 0; n < 222; n++){if ((&v3)[i % 3][2 * (i / 3)]- n == 1)a1[i] = n;}} for ( i = 0; i <= 11; ++i ){printf("%c",a1[i]);} printf("\n------------------------\n");return 0LL;
}int main(void){sub_4006FD();FUN_004006fd();return 0;
}
Useful code:
int FUN_004006fd( void)
{int local_2c,n,i;char *local_28 [4];int param_1[11]={99};local_28[0] = "Dufhbmf";local_28[1] = "pG`imos";local_28[2] = "ewUglpt";local_2c = 0;printf("\n------------------------\n");for ( i = 0; i <= 11; ++i ){printf("%c",local_28[i % 3][(i / 3) * 2]-1);} return 1;
}
int local_2c,n,i;char *local_28 [4];int param_1[11]={99};local_28[0] = "Dufhbmf";local_28[1] = "pG`imos";local_28[2] = "ewUglpt";local_2c = 0;printf("\n------------------------\n");for ( i = 0; i <= 11; ++i ){printf("%c",local_28[i % 3][(i / 3) * 2]-1);}
https://www.freebuf.com/articles/network/327979.html算法分析丨Reversing-x64Elf-100逆向题
https://blog.csdn.net/czw2479/article/details/124996658
res = ""
word = ["Dufhbmf", "pG`imos", "ewUglpt"]
for i in range(12):res += chr(ord(word[i % 3][2 * (i // 3)]) - 1)
print(res)"""output
Code_Talkers
"""
https://www.freebuf.com/articles/network/327979.html算法分析丨Reversing-x64Elf-100逆向题
res = “”
word = [“Dufhbmf”, “pG`imos”, “ewUglpt”]
for i in range(12):
res += chr(ord(word[i % 3][2 * (i // 3)]) - 1)
print(res)
“”“output
Code_Talkers
“””
相关文章:

攻防世界-Reversing-x64Elf-100
Reversing-x64Elf-100 18最佳Writeup由 yuchouxuan 提供 收藏 反馈 难度:1 方向:Reverse 题解数:15 解出人数:2460 题目来源: 题目描述: 暂无 note:undefined8 FUN_004006fd(long param_1){int local_2c;char *local_28 …...

C/C++每日一练(20230419)
目录 1. 插入区间 🌟🌟🌟 2. 单词拆分 🌟🌟 3. 不同路径 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日…...
[自注意力神经网络]Mask Transfiner网络-论文解读
本文为CVPR2022的论文。国际惯例,先贴出原文和源码: 原论文地址https://arxiv.org/pdf/2111.13673.pdf源码地址https://github.com/SysCV/transfiner 一、概述 传统的Two-Stage网络,如Mask R-CNN虽然在实例分割上取得了较好的效果ÿ…...

漫画:是喜,还是悲?AI竟帮我们把Office破活干完了
图文原创:亲爱的数据 国产大模型烈火制造。阿里百度字节美团各科技大佬不等闲。 大模型嘛,重大工程,对我等“怀保小民”来说,只关心怎么用,不关心怎么造。 我来介绍一下自己,我是一个写稿男团组合的成员&am…...
ChatGPT的原理分析
1.前言 ChatGPT是一种基于自然语言处理和人工智能技术的聊天机器人,它的基础是由OpenAI研发的GPT模型,其中GPT是Generative Pre-trained Transformer的缩写。GPT模型的训练使用了海量的语料库,可以预测下一个单词、短语、句子或文本…...

在线免费把Markdown格式文件转换为PDF格式
用CSDN的MarkDown编辑器在线转换 CSDN的MarkDown编辑器说实话还是挺好用的。 导出PDF操作步骤,图文配合看: 在MD编辑模式下写好MarkDown文章或者直接把要转换的MarkDown贴进来; 使用预览模式,然后在预览文件上右键选择打印&…...
R7-5 列车厢调度
R7-5 列车厢调度 分数 25 全屏浏览题目 切换布局 作者 周强 单位 青岛大学 1 <--移动方向/3 \2 -->移动方向 大家或许在某些数据结构教材上见到过“列车厢调度问题”(当然没见过也不要紧)。今天,我们就来实际操作一下列车…...

English Learning - L2 第 16 次小组纠音 弱读和语调 2023.4.22 周六
English Learning - L2 第 16 次小组纠音 弱读和语调 2023.4.22 周六 共性问题help /help/ 中的 e 和 lsorry /ˈsɒri/ 中的 ɒ 和 ilook out /lʊk aʊt/ 中的 ɒ 和 aʊdont /dəʊnt/ 中的 əʊemergency /ɪˈmɜːʤənsɪ/ 中的 ɜːname /neɪm/ 中的 eɪright /raɪt/…...

( “树” 之 前中后序遍历) 145. 二叉树的后序遍历 ——【Leetcode每日一题】
基础概念:前中后序遍历 1/ \2 3/ \ \ 4 5 6层次遍历顺序:[1 2 3 4 5 6]前序遍历顺序:[1 2 4 5 3 6]中序遍历顺序:[4 2 5 1 3 6]后序遍历顺序:[4 5 2 6 3 1] 层次遍历使用 BFS 实现,利用的就是 BFS…...
NPOI與Crystal report 13.0關於ICSharpCode.SharpZipLib控件版本衝突的解決方法
公司原來的系統用了Crystal report 13.0,它關聯使用ICSharpCode.SharpZipLib.dll (壓縮控件)的版本為0.85.1.271;後來因需要新增加 NPOI2.3控件,它關聯使用了ICSharpCode.SharpZipLib.dll 的版本為 高版本0.86…...
Sass @extend 与 继承
Sass extend 与 继承 extend 指令告诉 Sass 一个选择器的样式从另一选择器继承。 如果一个样式与另外一个样式几乎相同,只有少量的区别,则使用 extend 就显得很有用。 以下 Sass 实例中,我们创建了一个基本的按钮样式 .button-basic&#…...

权限控制导入到项目中
在项目中应用 进行认证和授权需要前面课程中提到的权限模型涉及的7张表支撑,因为用户信息、权限信息、菜单信息、角色信息、关联信息等都保存在这7张表中,也就是这些表中的数据是进行认证和授权的依据。所以在真正进行认证和授权之前需要对这些数据进行…...
CVPR2020:训练多视图三维点云配准
CVPR2020:训练多视图三维点云配准 Learning Multiview 3D Point Cloud Registration 源代码和预训练模型:https://github.com/zgojcic/3D_multiview_reg 论文地址: https://openaccess.thecvf.com/content_CVPR_2020/papers/Gojcic_Learn…...
string容器及其简单使用
string容器 概述声明和初始化获取字符串长度字符串拼接字符串比较字符串插入和删除字符串转换 概述 string是C中的一个标准库容器,用于处理字符串。它提供了一系列的操作函数,使得我们可以像处理其他容器一样方便地处理字符串。下面是string容器的详细介…...

芴甲氧羰酰基-氨基-聚乙二醇-巯基吡啶Fmoc-NH-PEG-OPSS
修饰性PEG芴甲氧羰基-氨基-聚乙二醇-巯基吡啶Fmoc-NH-PEG-OPSS是保护氨基的PEG衍生物之一 结构式: 芴甲氧羰酰基-氨基-聚乙二醇-巯基吡啶Fmoc-NH-PEG-OPSS聚乙二醇化可以提高聚乙二醇分子的稳定性,降低其免疫原性,仅用于科研实验。 FMOC-NH…...

【JavaWeb】Servlet(崔老师版)
文章目录 1.概述1.1 JavaWeb三大组件1.2 Servlet作用 2.ServletConfig接口3.Servlet接口3.1 实现Servlet的方式3.2 Servlet生命周期 4.HttpServlet抽象类5.ServletContext5.1 概述5.2 获取ServletContext5.3 JavaWeb四大域对象5.4 获取应用初始化参数5.5 ServletContext获取资源…...

ITSS服务经理 、服务工程师线上开班在即
为了促进企业信息技术服务-运行维护服务能力,全面系统的提升员工的IT服务知识和技能水平,且更好的满足参训企业的时间需求,我司将于5月份开展ITSS服务经理、服务工程师线上班。 日期和形式 五月份:ITSS服务项目经理:…...

【LeetCode】199.二叉树的右视图
1.问题 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [] 输出: []…...

Shell编程(三)grep sed awk文本处理三剑客
上一章: Shell编程(二)_做测试的喵酱的博客-CSDN博客 一、ps命令 指令: ps作用: 主要是查看服务器的进程信息选项含义: -e:等价于 ‘-A’ ,表示列出全部的进程 -f:显示全部的列&am…...

一步步带你学习Python编程:从零开始的查缺补漏
在快节奏的生活中,很难找到时间来学习新的技能。但有时候,我们会突然发现自己有一些空闲时间,而又不想虚度光阴。无聊的时候,我们可以选择学习一项新技能来充实自己。最近,我就因为有些无聊,决定重新学习Py…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...

centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...

Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...