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

攻防世界---->埃尔隆德32

做题笔记。

下载 查壳。

32ida 打开。

发现就一个判断。

跟进看看。

// 首次a2=0
int __cdecl sub_8048414(_BYTE *a1, int a2)
{int result; // eaxswitch ( a2 ){case 0:if ( *a1 == 105 )goto LABEL_19;result = 0;break;case 1:if ( *a1 == 101 )                         // egoto LABEL_19;result = 0;break;case 3:if ( *a1 == 110 )                         // ngoto LABEL_19;result = 0;break;case 4:if ( *a1 == 100 )                         // dgoto LABEL_19;result = 0;break;case 5:if ( *a1 == 97 )                          // agoto LABEL_19;result = 0;break;case 6:if ( *a1 == 103 )                         // ggoto LABEL_19;result = 0;break;case 7:if ( *a1 == 115 )                         // sgoto LABEL_19;result = 0;break;case 9:if ( *a1 == 114 )                         // r
LABEL_19:result = sub_8048414(a1 + 1, 7 * (a2 + 1) % 11);elseresult = 0;break;default:result = 1;break;}return result;
}

因为首次值a2=0,已知,所以我们可以手动计算也可以用代码去获取a1打印的值。

这是大佬的代码:

#include <stdio.h>
#include <string.h>int main()
{int a1[20] = { 105,101,0,110,100,97,103,115,0,114,0,0 };int a2[20];int k = 0;for (int i = 0;; i = 7 * (i + 1) % 11, k++){a2[k] = a1[i];printf("*%d\n", i);if (i == 2 || i == 8 || i>9)break;}//a2={105,115,101,110,103,97,114,100,0}return 0;
}

这里我选择动态查看其值。

最终脚本:

#include <stdio.h>
#include <string.h>int main()
{int a[] = { 0x0f,0x1f,0x04,0x09,0x1c,0x12,0x42,0x09,0x0c,0x44,0x0d,0x07,0x09,0x06,0x2d,0x37,0x59,0x1e,0x00,0x59,0x0f,0x08,0x1c,0x23,0x36,0x07,0x55,0x02,0x0c,0x08,0x41,0x0a,0x14 };int b[8] = { 105,115,101,110,103,97,114,100}; //难点。int len_a = sizeof(a) / sizeof(a[0]);char flag[50] = " ";for (int i = 0; i < len_a; i++){flag[i] = a[i] ^ b[i % 8];printf("%c", flag[i]);}return 0;
}

flag{s0me7hing_S0me7hinG_t0lki3n}

相关文章:

攻防世界---->埃尔隆德32

做题笔记。 下载 查壳。 32ida 打开。 发现就一个判断。 跟进看看。 // 首次a20 int __cdecl sub_8048414(_BYTE *a1, int a2) {int result; // eaxswitch ( a2 ){case 0:if ( *a1 105 )goto LABEL_19;result 0;break;case 1:if ( *a1 101 ) // e…...

redis短信登录模型

基于Session实现登录 &#xff0c;...

【React】React18.2.0核心源码解读

前言 本文使用 React18.2.0 的源码&#xff0c;如果想回退到某一版本执行git checkout tags/v18.2.0即可。如果打开源码发现js文件报ts类型错误请看本人另一篇文章&#xff1a;VsCode查看React源码全是类型报错如何解决。 阅读源码的过程&#xff1a; 下载源码 观察 package…...

深度学习-目标检测(四)-Faster R-CNN

目录 一.模型框架 二&#xff1a;步骤详细 1.conv layers 2.RPN 3.anchors 4.cls layer分类 5.reg layer回归 6.Proprosal 7.Rol pooling 8.Classification 三.训练 1.训练RPN网络 2.全连接层部分训练&#xff1a; 都看到这里了&#xff0c;点个赞把&#xff01;&a…...

MATLAB中的无线通信系统设计有哪些最佳实践

在无线通信系统设计领域&#xff0c;MATLAB提供了一套强大的工具箱&#xff0c;使得系统设计、仿真、测试和分析变得更加高效和精确。本文将探讨MATLAB在无线通信系统设计中的最佳实践&#xff0c;包括信号处理、调制与解调、信道建模、误码率分析以及无线通信标准的实现。 1.…...

Java的发展史与前景

&#x1f308;个人主页&#xff1a;Yui_ &#x1f308;Linux专栏&#xff1a;Linux &#x1f308;C语言笔记专栏&#xff1a;C语言笔记 &#x1f308;数据结构专栏&#xff1a;数据结构 &#x1f308;C专栏&#xff1a;C 文章目录 0. Java语言的发展史1.概述1.1 什么是Java1.2 …...

2024年上海小学生古诗文大会倒计时30多天:做几道今年的官方模拟题

2024年上海市小学生古诗文大会自由报名活动的初赛日期于10月19日开始&#xff0c;距离今天只有34天了。 小学生古诗文大会考什么&#xff1f;怎么考呢&#xff1f;今天好真题就带着大家来做一做官方发布的2024年小学生古诗文大会的模拟题&#xff0c;根据往年的经验&#xff0…...

IDEA 常用配置和开发插件

件市场中搜索并安装“Git Integration”插件。 一、前言 在本篇文章中我会为大家总结一些我自己常用的配置和开发插件&#xff0c;此外也给大家提供一个建议&#xff0c;可以根据自己的项目需求和个人偏好选择适合的插件。另外&#xff0c;IDEA 也在不断更新&#xff0c;可能会…...

还在为企微联系人烦恼?一招解决!企业微信2024年效率升级全攻略

现在信息多得让人眼花&#xff0c;微信里头那些企业微信的联系人是不是让你头疼&#xff1f; 看着满屏的绿色头像&#xff0c;心里想&#xff1a;“我就想和朋友聊聊天&#xff0c;怎么就这么难&#xff1f;”别急&#xff0c;今天教你个办法&#xff0c;轻松搞定这些小烦恼&am…...

【docker npm】npm 私库

1.部署环境 window 11 x64Docker Desktop 4.34.1 (166053) Docker Engine v27.2.0 1.1.Docker 镜像源 1.1.1.Docker Engine 配置 {"builder": {"features": {"buildkit": true},"gc": {"defaultKeepStorage": "32…...

完整gpt应用(自用)

qrc.py 把gpt_qrc.qrc转化成gpt_qrc.py pyrcc5 -o icons_rc.py icons.qrc <RCC><qresource prefix"img"><file>img/53.png</file><file>img/ai.png</file><file>img/关闭.png</file><file>img/最小化.png&l…...

【信息论基础第二讲】离散信源的数学模型及其信息测度包括信源的分类、信源的数学模型、离散信源的信息测度、二元信源的条件熵联合熵

一、信源的分类 二、信源的数学模型 1、信源的概念 在通信系统中&#xff0c;收信者在未收到信息以前&#xff0c;对信源发出什么消息是不确定的、随机的、因此我们可以用随机变量、随机序列或者随机过程来描述信源的输出。严格地说&#xff0c;用概率空间来描述信源输出。 …...

在 Spring Boot 项目中连接 IBM AS/400 数据库——详细案例教程

文章目录 1. 添加 jt400 依赖2. 下载 jt400 驱动包依赖下载手动下载下载地址&#xff1a;手动下载 JAR 的步骤&#xff1a; 3. 配置 application.properties 或 application.yml&#xff08;1&#xff09;application.properties&#xff08;2&#xff09;application.yml 4. 数…...

VUE + NODE 历史版本安装

以node 12.20.0为例子&#xff0c;想下载哪个版本&#xff0c;后面写哪个版本 https://registry.npmmirror.com/binary.html?pathnode/v12.20.0/ 安装国内镜像7.1.0 cnpm npm install -g cnpm7.1.0 -g --registryhttps://registry.npmmirror.com 安装vue脚手架4.5.15 cnpm …...

git reset 几点疑问

疑问&#xff1a;使用 git reset --hard <commit-hash-from-branch-B> 将工作区状态reset为其他branch的某点。 如果当前工作区的分支&#xff08;比如 branch A&#xff09;上使用 git reset --hard 将其状态重置为另一个分支&#xff08;比如 branch B&#xff09;的某…...

Rust Windows下编译 静态链接VCRuntime140.dll

Rust 编译出来的exe默认动态链接VC运行库&#xff0c;分发电脑上需要安装有Microsoft Visual C Redistributable for Visual Studio 2015运行库。 编译时能静态链接进去&#xff0c;就省去客户端未安装运行库的问题。方法如下: 只需在当前根目录下新建.cargo\config.toml&#…...

从“天宫课堂”到人工智能:中国少儿编程的未来在哪里?

近日&#xff0c;中国载人航天“天宫课堂”第三次开讲&#xff0c;激发了全国数百万青少年对科技的热情。从航天技术到人工智能&#xff0c;科技的快速发展正不断改变我们的生活&#xff0c;也让越来越多的家长意识到&#xff0c;未来属于那些掌握编程和创新思维的孩子。与其让…...

ARM base instruction -- blr

BLR Branch with Link to Register calls a subroutine at an address in a register, setting register X30 to PC4. 带寄存器链接的分支在寄存器中的某个地址调用一个子程序&#xff0c;将寄存器 X30 (lr) 设置为 PC4。 BLR <Xn> BLR 跳转到reg内容地址&#xff0c;…...

宠物猫领养馆会员管理系统---附源码72579

目录 1 绪论 1.1 课题目的与意义 1.2国内外研究现状 1.3论文结构与章节安排 1.4 express框架介绍 2 宠物猫领养馆会员管理系统系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 操作可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 …...

驾驶员注意力分神状态检测系统源码分享

驾驶员注意力分神状态检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of …...

SIM800C模块硬件连接避坑指南:从USB-TTL调试到STM32F407实战接线

SIM800C模块硬件连接避坑指南&#xff1a;从USB-TTL调试到STM32F407实战接线 在嵌入式开发中&#xff0c;GSM模块的硬件连接往往是项目成功的第一步&#xff0c;也是最容易踩坑的环节。SIM800C作为一款经典的工业级GSM/GPRS模块&#xff0c;其稳定性和性价比备受开发者青睐&…...

PangoDesign Suite与Modelsim协同仿真:从库编译到实战排错全解析

1. 为什么需要PangoDesign Suite与Modelsim协同仿真 第一次接触FPGA仿真时&#xff0c;我也被各种专业术语绕晕了。直到某次项目出现时序问题&#xff0c;才发现仿真工具就像汽车的"安全气囊"——平时感觉不到存在&#xff0c;关键时刻能救命。PangoDesign Suite&…...

从RC电路到传递函数:一个实例讲透自动控制原理的建模核心

从RC电路到传递函数&#xff1a;一个实例讲透自动控制原理的建模核心 在自动控制原理的学习中&#xff0c;许多初学者常常陷入理论与实际脱节的困境。他们能够背诵拉氏变换的定义&#xff0c;却不知道如何将一个简单的电路转化为数学模型&#xff1b;他们熟悉传递函数的公式&am…...

终极iOS越狱完整指南:5个步骤解锁iPhone隐藏功能

终极iOS越狱完整指南&#xff1a;5个步骤解锁iPhone隐藏功能 【免费下载链接】Jailbreak iOS 26.4 - 26, 17 - 17.7.5 & iOS 18 - 18.7.3 Jailbreak Tools, Cydia/Sileo/Zebra Tweaks & Jailbreak News Updates || AI Jailbreak Finder &#x1f447; 项目地址: http…...

STHS34PF80红外存在检测:InfraredPD算法库集成与调试实战

1. 项目概述与核心价值最近在折腾一个智能家居的节能项目&#xff0c;核心需求是让设备能精准判断房间里到底有没有人&#xff0c;而不是简单地检测到有物体移动就触发。市面上很多基于PIR&#xff08;被动红外&#xff09;的运动传感器&#xff0c;对于静止不动的人体识别效果…...

PostgreSQL日期时间格式化终极指南:to_char、to_timestamp、extract epoch实战详解

PostgreSQL日期时间格式化终极指南&#xff1a;to_char、to_timestamp、extract epoch实战详解 在处理数据库时&#xff0c;日期和时间操作几乎是每个开发者都会遇到的挑战。PostgreSQL作为功能强大的开源关系型数据库&#xff0c;提供了丰富的日期时间处理函数&#xff0c;能够…...

开源AI本地化框架py-gpt:微内核插件化架构与RAG应用实战

1. 项目概述&#xff1a;一个本地化、可扩展的AI应用框架最近在折腾AI应用本地化部署的朋友&#xff0c;可能都绕不开一个核心矛盾&#xff1a;既想享受大语言模型&#xff08;LLM&#xff09;强大的对话和推理能力&#xff0c;又对数据隐私、网络依赖和持续付费心存顾虑。市面…...

初创团队如何利用Taotoken的多模型聚合能力低成本验证产品创意

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 初创团队如何利用Taotoken的多模型聚合能力低成本验证产品创意 对于资源有限的初创团队而言&#xff0c;在产品早期验证阶段&#…...

告别加密日志:MTK平台离线调试利器SpOffineDebugSuite v3.4安装与使用全攻略

MTK平台离线调试实战&#xff1a;SpOffineDebugSuite v3.4与GAT工具链深度解析 在移动设备开发领域&#xff0c;联发科技(MTK)平台因其高性价比和丰富功能而广受欢迎。然而&#xff0c;当系统出现崩溃或异常时&#xff0c;传统的在线调试方式往往受限于设备连接状态和实时性要求…...

基于BLE与NeoPixel的智能眼镜控制:在ATtiny85上实现无线光效交互

1. 项目概述与核心价值几年前&#xff0c;当我第一次把玩Adafruit的NeoPixel灯环时&#xff0c;就被其绚丽的色彩和简单的控制方式所吸引。后来&#xff0c;一个很自然的想法冒了出来&#xff1a;能不能把这些灯珠集成到一副眼镜上&#xff0c;并且用手机来无线控制它&#xff…...