xor题解

简介: xor题解

xor题解


1.解压文件

得到文件夹,得到一个__MACOSX,说明是MacOs系统的可执行文件

._xor在windows系统中是没用的

只需要对xor进行反汇编

2.查壳

是一个64位文件

3.静态分析

找到main函数,按下F5反编译

int __cdecl main(int argc, const char **argv, const char **envp)
{
  int i; // [rsp+2Ch] [rbp-124h]
  char v5[264]; // [rsp+40h] [rbp-110h]
  memset(v5, 0, 0x100uLL);
  printf("Input your flag:\n");  
  get_line(v5, 256LL);    //输入字符串
  if ( strlen(v5) != 33 )   //如果字符串长度不等于33,跳转
    goto LABEL_11;
  for ( i = 1; i < 33; ++i )
    v5[i] ^= v5[i - 1];     
  if ( !strncmp(v5, global, 0x21uLL) )
    printf("Success");
  else
LABEL_11:
    printf("Failed");      //字符串长度不等于33,输出failed,flag长度一定是33
  return 0;
}

flag是一个长度为33的字符串

for ( i = 1; i < 33; ++i )
    v5[i] ^= v5[i - 1];     
  if ( !strncmp(v5, global, 0x21uLL) )
    printf("Success");

根据这段关键代码编写wp

需要知道:两次异或等于没有异或

global与异或操作之后的数据相等

查看global

点击aFKWOXZUPFVMDGH继续跟进

找到数据

选中,shift加e提取

提取数据

102, 10, 107, 12, 119, 38, 79, 46, 64, 17,

120, 13, 90, 59, 85, 17, 112, 25, 70, 31,

118, 34, 77, 35, 68, 14, 103, 6, 104, 15,

71, 50, 79, 0

4.编写wp

python wp

flag=""
data=[ 102,10,107,12,119,38,79,46,64,17,120,13,90,59,85,17,112,25,70,31,118,34,77,35,68,14,103,6,104,15,71,50,79,0]
for i in range(1,len(data)):
    flag+=chr(data[i]^data[i-1])  //第一个数据之后的都参与异或运算,需要逆向
print(chr(data[0])+flag)   //第一个数据没有参与异或运算,直接打印

C++ wp

#include<iostream>
using namespace std;
int main(){
  int data[34]={102,10,107,12,119,38,79,46,64,17,120,13,90,59,85,17,112,25,70,31,118,34,77,35,68,14,103,6,104,15,71,50,79,0};
  printf("%c",char(data[0]));
  for(int i=1 ;i<=32;i++){
    char a;
    a=(char)data[i]^data[i-1]; 
    printf("%c",a);
  } 
  return 0;
} 

flag{QianQiuWanDai_YiTongJiangHu}    千秋万代,一统江湖!

相关文章
|
NoSQL Redis
解决(error) ERR Errors trying to SHUTDOWN. Check logs.问题~
解决(error) ERR Errors trying to SHUTDOWN. Check logs.问题~
531 0
|
存储 算法 数据挖掘
python5种算法模拟螺旋、分层填充、递归、迭代、分治实现螺旋矩阵ll【力扣题59】
python5种算法模拟螺旋、分层填充、递归、迭代、分治实现螺旋矩阵ll【力扣题59】
|
存储
[MRCTF2020]Xor 题解
[MRCTF2020]Xor 题解
344 0
|
数据安全/隐私保护
[FlareOn6]Overlong 题解
[FlareOn6]Overlong 题解
328 0
|
7天前
|
JSON API 数据格式
OpenCode入门使用教程
本教程介绍如何通过安装OpenCode并配置Canopy Wave API来使用开源模型。首先全局安装OpenCode,然后设置API密钥并创建配置文件,最后在控制台中连接模型并开始交互。
3039 7
|
13天前
|
人工智能 JavaScript Linux
【Claude Code 全攻略】终端AI编程助手从入门到进阶(2026最新版)
Claude Code是Anthropic推出的终端原生AI编程助手,支持40+语言、200k超长上下文,无需切换IDE即可实现代码生成、调试、项目导航与自动化任务。本文详解其安装配置、四大核心功能及进阶技巧,助你全面提升开发效率,搭配GitHub Copilot使用更佳。
|
3天前
|
人工智能 API 开发者
Claude Code 国内保姆级使用指南:实测 GLM-4.7 与 Claude Opus 4.5 全方案解
Claude Code是Anthropic推出的编程AI代理工具。2026年国内开发者可通过配置`ANTHROPIC_BASE_URL`实现本地化接入:①极速平替——用Qwen Code v0.5.0或GLM-4.7,毫秒响应,适合日常编码;②满血原版——经灵芽API中转调用Claude Opus 4.5,胜任复杂架构与深度推理。
|
14天前
|
存储 人工智能 自然语言处理
OpenSpec技术规范+实例应用
OpenSpec 是面向 AI 智能体的轻量级规范驱动开发框架,通过“提案-审查-实施-归档”工作流,解决 AI 编程中的需求偏移与不可预测性问题。它以机器可读的规范为“单一真相源”,将模糊提示转化为可落地的工程实践,助力开发者高效构建稳定、可审计的生产级系统,实现从“凭感觉聊天”到“按规范开发”的跃迁。
2206 18
|
7天前
|
人工智能 前端开发 Docker
Huobao Drama 开源短剧生成平台:从剧本到视频
Huobao Drama 是一个基于 Go + Vue3 的开源 AI 短剧自动化生成平台,支持剧本解析、角色与分镜生成、图生视频及剪辑合成,覆盖短剧生产全链路。内置角色管理、分镜设计、视频合成、任务追踪等功能,支持本地部署与多模型接入(如 OpenAI、Ollama、火山等),搭配 FFmpeg 实现高效视频处理,适用于短剧工作流验证与自建 AI 创作后台。
1076 4