攻防世界——re2-cpp-is-awesome

64位

我先用虚拟机跑了一下这个程序,结果输出一串字符串+flag  ——没用

IDA打开后 F5也没有什么可看的

那我们就F12查看字符串找可疑信息

这里一下就看见了

__int64 __fastcall main(int a1, char **a2, char **a3)
{char *v3; // rbx__int64 v4; // rax__int64 v5; // rdx__int64 v6; // rax__int64 v7; // rdx_BYTE *v8; // rax__int64 v10[2]; // [rsp+10h] [rbp-60h] BYREFchar v11[47]; // [rsp+20h] [rbp-50h] BYREFchar v12; // [rsp+4Fh] [rbp-21h] BYREF__int64 v13; // [rsp+50h] [rbp-20h] BYREFint v14; // [rsp+5Ch] [rbp-14h]if ( a1 != 2 ){v3 = *a2;v4 = std::operator<<<std::char_traits<char>>(&std::cout, "Usage: ", a3);v6 = std::operator<<<std::char_traits<char>>(v4, v3, v5);std::operator<<<std::char_traits<char>>(v6, " flag\n", v7);exit(0);}std::allocator<char>::allocator(&v12, a2, a3);std::string::basic_string(v11, a2[1], &v12);std::allocator<char>::~allocator(&v12);v14 = 0;v10[0] = std::string::begin(v11);while ( 1 ){v13 = std::string::end(v11);if ( !(unsigned __int8)sub_400D3D(v10, &v13) )break;v8 = (_BYTE *)sub_400D9A(v10);if ( *v8 != off_6020A0[dword_6020C0[v14]] )sub_400B56();++v14;sub_400D7A(v10);}sub_400B73();std::string::~string(v11);return 0LL;
}

这个就是我们运行程序得到的东西

正常来说

这个while(1)和if里面比较关键——经验之谈,你们也可以联想一下写过的

先看第一个sub

bool __fastcall sub_400D3D(__int64 a1, __int64 a2)
{__int64 v2; // rbxv2 = *(_QWORD *)sub_400DAC(a1);return v2 != *(_QWORD *)sub_400DAC(a2);
}
__int64 __fastcall sub_400DAC(__int64 a1)
{return a1;
}

 ...就是一个比较函数

按N改名

__int64 __fastcall sub_400D9A(__int64 a1)
{return *(_QWORD *)a1;
}

第二个函数,就是一个复制,姑且叫他get吧

_QWORD *__fastcall sub_400D7A(_QWORD *a1)
{++*a1;return a1;
}

 最后这个也是一个简单的++操作

最后就是这样了

关键的关键就是if

off就是我们之前找到的那个字符串

dword就是一串数据

我们先脚本走下

a=[36,   0,   0,   0,   0,   0,   0,   0,   5,   0,0,   0,  54,   0,   0,   0, 101,   0,   0,   0,7,   0,   0,   0,  39,   0,   0,   0,  38,   0,0,   0,  45,   0,   0,   0,   1,   0,   0,   0,3,   0,   0,   0,   0,   0,   0,   0,  13,   0,0,   0,  86,   0,   0,   0,   1,   0,   0,   0,3,   0,   0,   0, 101,   0,   0,   0,   3,   0,0,   0,  45,   0,   0,   0,  22,   0,   0,   0,2,   0,   0,   0,  21,   0,   0,   0,   3,   0,0,   0, 101,   0,   0,   0,   0,   0,   0,   0,41,   0,   0,   0,  68,   0,   0,   0,  68,   0,0,   0,   1,   0,   0,   0,  68,   0,   0,   0,43,   0,   0,   0]
b=[]
for i in range(0,len(a),4):b.append(a[i])
print(b)
a='L3t_ME_T3ll_Y0u_S0m3th1ng_1mp0rtant_A_{FL4G}_W0nt_b3_3X4ctly_th4t_345y_t0_c4ptur3_H0wev3r_1T_w1ll_b3_C00l_1F_Y0u_g0t_1t'
flag=''
for i in b:flag+=a[i]
print(flag)

结果就出来了

 

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

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

相关文章

知识图谱与图神经网络融合:构建智能应用的新前沿

目录 前言1 知识图谱表示学习1.1 典型模型1.2 下游任务 2 图神经网络与知识图谱表示学习2.1 Compgcn&#xff1a;合成图卷积模型2.2 知识图谱嵌入在归纳设置下的推进 3 图神经网络与知识图谱构建3.1 关系抽取的进阶应用3.2 结构信息补全与知识图谱的完整性 4 图神经网络与知识图…

JavaScript综合练习4

JavaScript 综合练习 4 1. 案例演示 2. 代码实现 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title&…

单片机的认识

单片机的定义 先简单理解为&#xff1a; 在一片集成电路芯片上集成了微处理器&#xff08;CPU &#xff09;存储器&#xff08;ROM和RAM&#xff09;、I/O 接口电路&#xff0c;构成单芯片微型计算机&#xff0c;即为单片机。 把组成微型计算机的控制器、运算器、存储器、输…

“SharpDocx” C#项目中用于创建 Word 文档的轻量级模板引擎

简介&#xff1a; SharpDocx是一个轻量级的模板引擎&#xff0c;用于创建Word文档。它允许开发者基于视图生成Word文档&#xff0c;这个视图本身就是一个Word文档&#xff0c;可以根据需要设置简单或复杂的布局。 以下是一些主要特点&#xff1a; 模板引擎类似Razor&#xf…

jmeter-问题二:JMeter进行文件上传时,常用的几种MIME类型

以下是一些常用的MIME类型及其对应的文件扩展名&#xff1a; 文本类型: text/plain: 通常用于纯文本文件&#xff0c;如 .txt 文件。 text/html: 用于HTML文档&#xff0c;即 .html 文件。 application/msword: Microsoft Word文档&#xff0c;即 .doc 和 .docx 文件。 图像…

【大厂AI课学习笔记】【1.5 AI技术领域】(8)文本分类

8,9,10&#xff0c;将分别讨论自然语言处理领域的3个重要场景。 自然语言处理&#xff0c;Natual Language Processing&#xff0c;NLP&#xff0c;包括自然语言识别和自然语言生成。 用途是从非结构化的文本数据中&#xff0c;发掘洞见&#xff0c;并访问这些信息&#xff0…

哈工大团队顶刊发布!由单偏心电机驱动的爬行机器人实现多方向运动传递

单电机也能驱动平面内前进和转弯运动&#xff1f;没错&#xff0c;图中的机器人名叫GASR&#xff0c;仅由四个零件组成&#xff0c;分别是偏心电机、电池、电路板、聚酰亚胺薄片&#xff0c;它可以灵活自如地实现前进、转弯等移动。其中的核心驱动器——纽扣式偏心转子电机产自…

[SAP] ABAP设置非系统关键字代码提示功能

在事务码SE38(ABAP编辑器)屏幕右下角&#xff0c;点击【Options选项】图标 勾选【代码完成】|【建议文本中的非关键字】&#xff0c;并点击【保存】按钮 在下面的程序代码中&#xff0c;当我需要输入在11行的位置输入非关键字lv_str的时候&#xff0c;会有非关键字代码提示的功…

【java】Hibernate访问数据库

一、Hibernate访问数据库案例 Hibernate 是一个在 Java 社区广泛使用的对象关系映射&#xff08;ORM&#xff09;工具。它简化了 Java 应用程序中数据库操作的复杂性&#xff0c;并提供了一个框架&#xff0c;用于将对象模型数据映射到传统的关系型数据库。下面是一个简单的使…

JAVA设计模式之模版方法模式详解

模板方法模式 1 模板方法模式介绍 模板方法模式(template method pattern)原始定义是&#xff1a;在操作中定义算法的框架&#xff0c;将一些步骤推迟到子类中。模板方法让子类在不改变算法结构的情况下重新定义算法的某些步骤。 模板方法中的算法可以理解为广义上的业务逻辑…

机器学习---概率图模型(概率计算问题)

1. 直接计算法 给定模型和观测序列&#xff0c;计算观测序列O出现的概率。最直接 的方法是按概率公式直接计算.通过列举所有可能的长度为T的状态序列&#xff0c;求各个状 态序列 I 与观测序列的联合概率&#xff0c;然后对所有可能的状态序列求和&#xff0c;得 到。 状态…

在屏蔽任何FRP环境下从零开始搭建安全的FRP内网穿透服务

背景 本人目前在境外某大学读博&#xff0c;校园网屏蔽了所有内网穿透的工具的数据包和IP访问&#xff0c;为了实现在家也能远程访问服务器&#xff0c;就不得不先开个学校VPN&#xff0c;再登陆。我们实验室还需要访问另一个大学的服务器&#xff0c;每次我都要去找另一个大学…

Mysql-Explain-使用说明

Explain 说明 explain SELECT * FROM tb_category_report;id&#xff1a;SELECT识别符&#xff0c;这是SELECT查询序列号。select_type&#xff1a;表示单位查询的查询类型&#xff0c;比如&#xff1a;普通查询、联合查询(union、union all)、子查询等复杂查询。table&#x…

酷开科技荣获消费者服务平台黑猫投诉“消费者服务之星”称号

什么是优质服务&#xff1f;既是以客户为中心的庄严承诺&#xff0c;又是对服务能力提升的深耕细作&#xff1b;既是对服务标准的敬畏&#xff0c;也是对服务创新的不断探索……服务是多维的&#xff0c;每个企业都有自己独到的诠释&#xff0c;或事无巨细环环严控&#xff0c;…

NumPy:Python的强大数值计算库

NumPy&#xff1a;Python的强大数值计算库 NumPy&#xff08;Numerical Python&#xff09;是Python中最常用和最强大的数值计算库之一。它提供了高性能的多维数组对象和广泛的数学函数&#xff0c;使得在Python中进行科学计算和数据分析变得更加简单和高效。本文将介绍NumPy的…

《动手学深度学习(PyTorch版)》笔记8.1

注&#xff1a;书中对代码的讲解并不详细&#xff0c;本文对很多细节做了详细注释。另外&#xff0c;书上的源代码是在Jupyter Notebook上运行的&#xff0c;较为分散&#xff0c;本文将代码集中起来&#xff0c;并加以完善&#xff0c;全部用vscode在python 3.9.18下测试通过&…

kmeans聚类选择最优K值python实现

Kmeans算法中K值的确定是很重要的。 下面利用python中sklearn模块进行数据聚类的K值选择 数据集自制数据集&#xff0c;格式如下&#xff1a; 维度为3。 ①手肘法 手肘法的核心指标是SSE(sum of the squared errors&#xff0c;误差平方和)&#xff0c; 其中&#xff0c;Ci是第…

【玩转408数据结构】线性表——定义和基本操作

考点剖析 线性表是算法题命题的重点&#xff0c;该类题目实现相对容易且代码量不高&#xff0c;但需要最优的性能&#xff08;也就是其时间复杂度以及空间复杂度最优&#xff09;&#xff0c;这样才可以获得满分。所以在考研复习中&#xff0c;我们需要掌握线性表的基本操作&am…

Linux探秘:如何用 find 命令发现隐藏的宝藏

&#x1f31f;&#x1f30c; 欢迎来到知识与创意的殿堂 — 远见阁小民的世界&#xff01;&#x1f680; &#x1f31f;&#x1f9ed; 在这里&#xff0c;我们一起探索技术的奥秘&#xff0c;一起在知识的海洋中遨游。 &#x1f31f;&#x1f9ed; 在这里&#xff0c;每个错误都…

无心剑汉英双语诗《龙年大吉》

七绝龙年大吉 Great Luck in the Dragon Year 龙腾五岳九州圆 年吼佳音万里传 大漠苍鹰华夏梦 吉人天相铸奇缘 Dragon flies over five peaks watching the divine land so great and round, New Year’s call sends joyous tidal waves far across the world’s bound. The…