[V&N2020 公开赛]strangeCpp

每天水一道题计划,打卡第三天

看着挺奇怪的,然后想动调,出现了一点错误

沉默,反思,不解,疑惑

然后观察,最开始有一堆数据,不知道干嘛的

对welcome中间的数据交叉引用发现

重点应该在异或

根据12-15行的算法,加上上一张图里的dword_140021190 <= 14549743,可以穷举暴力破解出result里的值

python 复制代码
result=0
for v8 in range(14549743):
    v7 = (((v8 << 8) ^ (v8 >> 12))*291)&0xFFFFFFFF 
    if (v7 == 607052314):
        result = v8
        break
    
print(result)
python 复制代码
result=0
for v8 in range(14549743):
    v7 = (((v8 << 8) ^ (v8 >> 12))*291)&0xFFFFFFFF # 原文是unsigned int--0~0xFFFFFFFF,输出的值需要截断
    if (v7 == 607052314):
        result = v8
        break
    
print(result)

a=[0x26, 0x2C, 0x21, 0x27, 0x3B, 0x0D, 0x04, 0x75, 0x68, 0x34,
  0x28, 0x25, 0x0E, 0x35, 0x2D, 0x69, 0x3D, 0x6F, 0x6D, 0x00]

for j in range(17):
    print(chr((v8^a[j])&0xff),end="")

然后根据flag提示,找个网站md5加密

相关推荐
胡萝卜术15 小时前
力扣5. 最长回文子串
前端·javascript·面试
Wang's Blog15 小时前
Go-Zero项目开发4: 用户服务搜索、详情与统一错误处理
开发语言·golang
我星期八休息15 小时前
网络编程—应用层HTTP协议
linux·运维·开发语言·前端·网络·网络协议·http
梅雅达编程笔记15 小时前
零基础学 Python 第14章 | 模块、包与第三方库
开发语言·python·django·numpy·pandas
Mr__Miss15 小时前
Java泛型完全指南:从入门到精通
java·开发语言·python
赵庆明老师15 小时前
Vben精讲:14-Vben远程加载语言包
开发语言·vben
hehelm16 小时前
AI大模型接入SDK—通用模块设计
linux·开发语言·c++
触底反弹17 小时前
🔥 从零搭建 RAG 知识库:爬虫→分词→向量化→检索,一步都不能错
javascript·人工智能·面试
梅雅达编程笔记18 小时前
零基础学 Python 第15章 | 类与对象:面向对象编程入门
开发语言·python·django·numpy·pandas
行思理18 小时前
微信支付“商家转账用户确认模式”,新手教程
java·开发语言·微信