题目地址:https://adworld.xctf.org.cn/task/answer?type=reverse&number=4&grade=0&id=5074&page=1
工具: ida pro、python环境
知识:简单的算法分析,简单的脚本编写

方法一、
玩游戏,依次按12345678后出现flag

done!!! the flag is zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t}

方法二、
用ida打开文件,64位打不开就用32位
打开后shift+F12,alt+T查找flag



点击确定后,就直接定位到这句话所在的函数

for ( i = 0; i < 56; ++i ){*(&v2 + i) ^= *(&v59 + i);//按位异或运算符 两个操作数中,如果两个相应位相同,则结果为0,否则为1    &v2表示v2取地址*(&v2 + i) ^= 0x13u;// 其实就是 *(&v2 + i) =*(&v2 + i) ^ 0x13u;  //u表示无符号   十六进制13 转化为 十进制是19}return sub_45A7BE("%s\n");
}// 1111   15
// 1110   14
// 0001    1
// 15^14=1  异或

粘贴到word中,用word取出V后面的值 V2~V58,把分号替换为逗号,
若要把这些数字变成一行:

将V2~V58中的值取出

123,32,18,98,119,108,65,41,124,80,125,38,124,111,74,49,83,108,94,108,84,6,96,83,44,121,104,110,32,95,117,101,99,123,127,119,96,48,107,71,92,29,81,107,90,85,64,12,43,76,86,13,114,1,117,126,0

将V59~V115中的值取出

 18, 64, 98, 5, 2, 4, 6, 3, 6, 48, 49, 65, 32, 12, 48, 65, 31, 78, 62, 32, 49, 32, 1, 57, 96, 3, 21, 9, 4, 62, 3, 5, 4, 1, 2, 3, 44, 65, 78, 32, 16,97,54,16,44,52,32,64,89,45,32,65,15,34,18,16,0

tips : word中删除一列文字

word怎么选中删除 在word怎样选中删去一列文字
按住alt键,按住鼠标左键拖动选择要删除的部分并删除

写python脚本,计算异或

a=[123,32,18,98,119,108,65,41,124,80,125,38,124,111,74,49,83,108,94,108,84,6,96,83,44,121,104,110,32,95,117,101,99,123,127,119,96,48,107,71,92,29,81,107,90,85,64,12,43,76,86,13,114,1,117,126,0]
b=[ 18, 64, 98, 5, 2, 4, 6, 3, 6, 48, 49, 65, 32, 12, 48, 65, 31, 78, 62, 32, 49, 32, 1, 57, 96, 3, 21, 9, 4, 62, 3, 5, 4, 1, 2, 3, 44, 65, 78, 32, 16,97,54,16,44,52,32,64,89,45,32,65,15,34,18,16,0]
for i in range(57): # 57次循环  0~56  前包后不包a[i]=a[i]^b[i]a[i]=a[i]^19print(chr(a[i]),end='') #转化为字符类型,不想让他换行后面加end=''


得到flag: zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t}

XCTF-Reverse:game(涉及异或脚本编写)相关推荐

  1. BUUCTF-Reverse:xor(涉及异或脚本编写)

    xor一般指异或.异或,英文为exclusive OR,缩写成xor异或(eor)是一个数学运算符. 题目地址:https://buuoj.cn/challenges#xor 用IDA载入,寻找mai ...

  2. 老李推荐: 第3章2节《MonkeyRunner源码剖析》脚本编写示例: MonkeyDevice API使用示例 1...

    老李推荐: 第3章2节<MonkeyRunner源码剖析>脚本编写示例: MonkeyDevice API使用示例 上一节我们学习了如何通过MonkeyRunner这个类的静态方法wait ...

  3. 第3章2节《MonkeyRunner源码剖析》脚本编写示例: MonkeyDevice API使用示例(原创)

    天地会珠海分舵注:本来这一系列是准备出一本书的,详情请见早前博文"寻求合作伙伴编写<深入理解 MonkeyRunner>书籍".但因为诸多原因,没有如愿.所以这里把草稿 ...

  4. Postman接口自动化之postman脚本编写

    这是之前搞的接口自动化方案,已经在业务测试中实现了使用postman编写接口脚本,通过GitHub+Jenkins+email +html report实现了接口自动化,现在分块整理一下. postm ...

  5. 【超详细】全国大学生软件测试大赛:移动应用测试脚本编写要求

    博主提供练习题下载,导入eclipse即可运行.点击查看 移动测试脚本编写要求:点击查看 博主参赛纪录分享:点击查看 目录 脚本编写要求 UIAutomatorViewer 工具介绍 1.获取快照 2 ...

  6. shell脚本编写遇到的问题--循环

    shell脚本编写遇到的问题 0 背景 工作中需要修补数据,大概半年的数据;跑数据是scala脚本+python脚本,如果手动补充数据,需要运行180次- 于是,shell脚本搞起来- 1 规划思路 ...

  7. Postman接口测试脚本编写规范

    Postman接口测试脚本编写规范 1.前言 2.名词解释 3.接口测试脚本规范 3.1接口测试脚本编写的规范 3.2 Postman使用规范 4.单个接口测试 5.整个流程的开发过程 1.前言 本规 ...

  8. 2021年大数据Kafka(三):❤️Kafka的集群搭建以及shell启动命令脚本编写❤️

    全网最详细的大数据Kafka文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 Kafka的集群搭建以及shell启动命令脚本编写 一.搭建 ...

  9. 老李推荐:第3章3节《MonkeyRunner源码剖析》脚本编写示例: MonkeyImage API使用示例 1...

    老李推荐:第3章3节<MonkeyRunner源码剖析>脚本编写示例: MonkeyImage API使用示例 在上一节的第一个"增加日记"的示例中,我们并没有看到日记 ...

最新文章

  1. linux shell之数组
  2. 忘记手机绑定过的UC/交易猫账号怎么找回
  3. boost::hana::make_range用法的测试程序
  4. myemployees库的四张表介绍
  5. LeetCode 1738. 找出第 K 大的异或坐标值(DP)
  6. Prime算法生成迷宫
  7. matlab的fftn,matlab fftn
  8. 配置Web.Config连接数据库
  9. 面向对象,局部变量和成员变量
  10. 算法设计与分析基础(第3版)
  11. 准考证丢失后如何查询四六级成绩
  12. 《Metasploit魔鬼训练营》 第二、三章
  13. Kanban in Action 免积分下载
  14. 光雨量传感器:如何滤除雨量信号中的光线干扰
  15. 20200714学习笔记
  16. 第二部分 : 简单句的核心变化(时态)
  17. web前端学习(六):WebRTC实时通信,掌握WebSocket很实用
  18. 徐小湛概率论与数理统计课件_概率论与数理统计-徐小湛-视频教程70讲
  19. 今天为什么还要阅读经典
  20. Linux系统编程(一)——环境搭建

热门文章

  1. hdu 5178(尺取法)
  2. 模板类可以使用虚函数,模板函数不能是虚函数
  3. 机器学习sklearn19.0聚类算法——Kmeans算法
  4. 转载:javaweb学习总结(二十三)——jsp自定义标签开发入门
  5. 117. Populating Next Right Pointers in Each Node II
  6. 核心概念 —— 门面(Facades)
  7. myeclipse 中项目名出现红色感叹号解决方法
  8. wp_terms分类信息表—WordPress数据库研究(2.6.2版本)#8
  9. AttributeError:module tensorflow no attribute app解决办法
  10. 吴恩达 coursera AI 专项五第三课(上)总结+作业答案