Simple XOR - Writeup by AI

Simple XOR - Writeup by AI

题目信息

  • 题目名称: simple xor
  • 分类: Crypto
  • 题目描述: Found the following message: XUBdTFdScw5XCVRGTglJXEpMSFpOQE5AVVxJBRpLT10aYBpIVwlbCVZATl1WTBpaTkBOQFVcSQdH 😃

分析过程

1. 理解加密算法

从提供的 xor.py 文件中,我们可以看到加密逻辑:

python 复制代码
sxor = ':)'
sflag = 'this is the flag'
flag = bytearray(sflag)
xor = bytearray(sxor)
encrypted = ''
for i in range(0,len(flag),2):
    encrypted += str(hex(flag[i] ^ xor[0]))[2:]
    encrypted += str(hex(flag[i+1] ^ xor[1]))[2:]
print encrypted

加密步骤

  1. 使用两字节密钥 :)
  2. 对明文的每个字节与密钥交替进行XOR运算
  3. 将XOR结果转换为十六进制字符串(去掉0x前缀)
  4. 拼接所有十六进制字符串

2. 密文分析

题目给出的密文:XUBdTFdScw5XCVRGTglJXEpMSFpOQE5AVVxJBRpLT10aYBpIVwlbCVZATl1WTBpaTkBOQFVcSQdH

观察密文字符:

  • 长度:76个字符
  • 包含字符:数字、大写字母、小写字母
  • 包含非十六进制字符(如 X, U, J, G, W 等)

这说明密文不是直接的十六进制字符串

3. 关键发现

注意到密文末尾有 :),这提示我们密钥就是 :)

尝试将密文进行 Base64解码

  • 76个字符的Base64字符串可以解码为57个字节
  • Base64编码常用于将二进制数据转换为可打印字符

4. 解密步骤

Step 1: Base64解码密文

python 复制代码
import base64
encrypted_str = 'XUBdTFdScw5XCVRGTglJXEpMSFpOQE5AVVxJBRpLT10aYBpIVwlbCVZATl1WTBpaTkBOQFVcSQdH'
decoded_bytes = base64.b64decode(encrypted_str)

Step 2 : 与密钥 :) 进行XOR解密

python 复制代码
key = ':)'
decrypted = ''
for i in range(len(decoded_bytes)):
    decrypted += chr(decoded_bytes[i] ^ ord(key[i % 2]))
相关推荐
小小工匠1 小时前
Spring AI RAG - 06 敏感词过滤与内容安全防护
人工智能·安全·spring
一切皆是因缘际会2 小时前
AI技术新风口:边缘计算与智能体协同,解锁产业落地新范式
大数据·人工智能·安全·ai·架构·语音识别
JiaWen技术圈3 小时前
网站开发中登录与注册安全防范完整指南
安全
mzhan0174 小时前
Linux: config: CRYPTO_USER_API_AEAD
linux·安全·module
想你依然心痛4 小时前
HarmonyOS 6(API 23)实战:基于悬浮导航、沉浸光感与HMAF的“代码哨兵“——AI智能体代码安全审计平台
人工智能·安全·harmonyos·智能体
ze^05 小时前
Day01 Web应用&架构搭建&域名源码&站库分离&MVC模型&解析受限&对应路径
安全·web安全·架构·mvc·安全架构
轻口味5 小时前
HarmonyOS 6.1 全栈实战录 - 09 极光底座:ArkWeb 6.1 性能、安全与视觉插帧全特性深度实战
pytorch·安全·harmonyos
Paranoid-up5 小时前
安全启动和安全固件更新(SBSFU)11:保护链:开发 / 量产 / SECURE_LOCK 三种模式
安全·iap·安全启动·安全升级·sbsfu
TOWE technology5 小时前
同为科技雷电防护产品,构筑全场景电气安全防线
网络·科技·安全·防雷产品·防雷工程·防雷施工·防雷设计