64位

查看字符串

跟进main函数

__int64 __fastcall main(__int64 a1, char **a2, char **a3)
{__int64 v4; // [rsp+0h] [rbp-A8h]char v5; // [rsp+20h] [rbp-88h]unsigned __int64 v6; // [rsp+88h] [rbp-20h]v6 = __readfsqword(0x28u);__printf_chk(1LL, "Please give me the key string:", a3);scanf("%s", &v5);if ( sub_860(&v5) ){sub_C50((__int64)&v5, &v5, &v4);__printf_chk(1LL, "Judgement pass! flag is actf{%s_%s}\n", &v5);}else{puts("False key!");}return 0LL;
}

先看sub_860()

bool __fastcall sub_860(char *a1)
{int v1; // ecxint v2; // esiint v3; // edxint v4; // er9int v5; // er11int v6; // ebpint v7; // ebxint v8; // er8int v9; // er10bool result; // alint v11; // [rsp+0h] [rbp-38h]v1 = a1[1];v2 = *a1;v3 = a1[2];v4 = a1[3];v5 = a1[4];v6 = a1[6];v7 = a1[5];v8 = a1[7];v9 = a1[8];result = 0;if ( -85 * v9 + 58 * v8 + 97 * v6 + v7 + -45 * v5 + 84 * v4 + 95 * v2 - 20 * v1 + 12 * v3 == 12613 ){v11 = a1[9];if ( 30 * v11 + -70 * v9 + -122 * v6 + -81 * v7 + -66 * v5 + -115 * v4 + -41 * v3 + -86 * v1 - 15 * v2 - 30 * v8 == -54400&& -103 * v11 + 120 * v8 + 108 * v7 + 48 * v4 + -89 * v3 + 78 * v1 - 41 * v2 + 31 * v5 - (v6 << 6) - 120 * v9 == -10283&& 71 * v6 + (v7 << 7) + 99 * v5 + -111 * v3 + 85 * v1 + 79 * v2 - 30 * v4 - 119 * v8 + 48 * v9 - 16 * v11 == 22855&& 5 * v11 + 23 * v9 + 122 * v8 + -19 * v6 + 99 * v7 + -117 * v5 + -69 * v3 + 22 * v1 - 98 * v2 + 10 * v4 == -2944&& -54 * v11 + -23 * v8 + -82 * v3 + -85 * v2 + 124 * v1 - 11 * v4 - 8 * v5 - 60 * v7 + 95 * v6 + 100 * v9 == -2222&& -83 * v11 + -111 * v7 + -57 * v2 + 41 * v1 + 73 * v3 - 18 * v4 + 26 * v5 + 16 * v6 + 77 * v8 - 63 * v9 == -13258&& 81 * v11 + -48 * v9 + 66 * v8 + -104 * v6 + -121 * v7 + 95 * v5 + 85 * v4 + 60 * v3 + -85 * v2 + 80 * v1 == -1559&& 101 * v11 + -85 * v9 + 7 * v6 + 117 * v7 + -83 * v5 + -101 * v4 + 90 * v3 + -28 * v1 + 18 * v2 - v8 == 6308 ){result = 99 * v11 + -28 * v9 + 5 * v8 + 93 * v6 + -18 * v7 + -127 * v5 + 6 * v4 + -9 * v3 + -93 * v1 + 58 * v2 == -1697;}}return result;
}

是一个函数运算
python有个z3库可以实现解方程

pip install z3-solver
或者直接下载安装
https://pypi.org/project/z3-solver/#files

由于伪代码更改了数组顺序
v1 = a1[1];v2 = *a1;
v6 = a1[6]; v7 = a1[5];

from z3 import *s = Solver()
v1 = Int('v1')
v2 = Int('v2')
v3 = Int('v3')
v4 = Int('v4')
v5 = Int('v5')
v6 = Int('v6')
v7 = Int('v7')
v8 = Int('v8')
v9 = Int('v9')
v11 = Int('v11')s.add(-85 * v9 + 58 * v8 + 97 * v6 + v7 + -45 * v5 + 84 * v4 + 95 * v2 - 20 * v1 + 12 * v3 == 12613)
s.add(30 * v11 + -70 * v9 + -122 * v6 + -81 * v7 + -66 * v5 + -115 * v4 + -41 * v3 + -86 * v1 - 15 * v2 - 30 * v8 == -54400)
s.add(-103 * v11 + 120 * v8 + 108 * v7 + 48 * v4 + -89 * v3 + 78 * v1 - 41 * v2 + 31 * v5 - (v6 * 64) - 120 * v9 == -10283)
s.add(71 * v6 + (v7 * 128) + 99 * v5 + -111 * v3 + 85 * v1 + 79 * v2 - 30 * v4 - 119 * v8 + 48 * v9 - 16 * v11 == 22855)
s.add(5 * v11 + 23 * v9 + 122 * v8 + -19 * v6 + 99 * v7 + -117 * v5 + -69 * v3 + 22 * v1 - 98 * v2 + 10 * v4 == -2944)
s.add(-54 * v11 + -23 * v8 + -82 * v3 + -85 * v2 + 124 * v1 - 11 * v4 - 8 * v5 - 60 * v7 + 95 * v6 + 100 * v9 == -2222)
s.add(-83 * v11 + -111 * v7 + -57 * v2 + 41 * v1 + 73 * v3 - 18 * v4 + 26 * v5 + 16 * v6 + 77 * v8 - 63 * v9 == -13258)
s.add(81 * v11 + -48 * v9 + 66 * v8 + -104 * v6 + -121 * v7 + 95 * v5 + 85 * v4 + 60 * v3 + -85 * v2 + 80 * v1 == -1559)
s.add(101 * v11 + -85 * v9 + 7 * v6 + 117 * v7 + -83 * v5 + -101 * v4 + 90 * v3 + -28 * v1 + 18 * v2 - v8 == 6308)
s.add(99 * v11 + -28 * v9 + 5 * v8 + 93 * v6 + -18 * v7 + -127 * v5 + 6 * v4 + -9 * v3 + -93 * v1 + 58 * v2 == -1697)if s.check() == sat:result = s.model()#print(result)for i in result:print(i,end=' ')print(chr(result[i].as_long()))

整合一下
F0uRTy_7w@
还有一个sub_C50()懒得分析了(
直接运行程序

flag{F0uRTy_7w@_42}

buu-[ACTF新生赛2020]Universe_final_answer相关推荐

  1. BUU [ACTF新生赛2020]Universe_final_answer

    [ACTF新生赛2020]Universe_final_answer 首先查壳, 64bit 无壳 ida64位打开 main() __int64 __fastcall main(int a1, ch ...

  2. [SUCTF2018]babyre [ACTF新生赛2020]fungame

    文章目录 [SUCTF2018]babyre 惯用思维 常人思维 GAMEOVER [ACTF新生赛2020]fungame int __cdecl sub_401340(int a1) int __ ...

  3. BUUCTF Misc 穿越时空的思念 [ACTF新生赛2020]outguess [HBNIS2018]excel破解 [HBNIS2018]来题中等的吧

    目录 穿越时空的思念 [ACTF新生赛2020]outguess [HBNIS2018]excel破解 [HBNIS2018]来题中等的吧 穿越时空的思念 下载文件 使用Audacity打开 点击图示 ...

  4. [BUUOJ] [RE] [ACTF新生赛2020] rome1

    IDA 好久没写博客了,最近在刷re,这道题是我觉得十分有意义的一道题.故AC后总结分享给大家.不足之处请指正. 分析 直接导入IDA shift +F12 双击后按 ctrl + x跳转到被调用的函 ...

  5. BUUCTF-MISC-[BJDCTF2020]你猜我是个啥~[ACTF新生赛2020]outguess

    文章目录 1.[BJDCTF2020]你猜我是个啥 2.秘密文件 3.[SWPU2019]神奇的二维码 4.[BJDCTF2020]一叶障目 5.[BJDCTF2020]just_a_rar 6.[B ...

  6. re学习笔记(59)BUUCTF - re - [ACTF新生赛2020]Oruga

    新手一枚,如有错误(不足)请指正,谢谢!! 题目链接:[ACTF新生赛2020]Oruga IDA64位载入,进入main函数 进入sub_78A()函数 类似于象棋里面的'车'吧,不过这个要走到障碍 ...

  7. BUUCTF——[ACTF新生赛2020]SoulLike——使用angr解

    64位无壳.IDApro打开,查看main函数 逻辑很简单,我们来查看sub_83A函数.点进去,toobig 看了其他博客. 我们需要将ida /ctg目录下的hexrays.cfg文件中的MAX_ ...

  8. [ACTF新生赛2020]fungame

    32位无壳 简单异或,解出来是 Re_1s_So0_funny but没有那么简单,这里只有16字节.继续分析: 这里出现了栈溢出: 4013BA函数的参数source 也就是v4(我们的flag) ...

  9. [ACTF新生赛2020]easyre

    脱壳 使用exeinfo查看文件,发现有upx,使用upxshell解压缩.之后放进IDA中. 查看程序 很明显V4和v16都是个数组.可以看出是将v4的每个值(一共12个),去和data的那个数组去 ...

最新文章

  1. 《Adobe Acrobat XI经典教程》—第6课转换PPT演示文稿
  2. 小米盒子连接不上服务器显示wifi,小米盒子连接不上wifi的原因及解决办法
  3. Angular 2/Ionic 2 @input和@output理解
  4. insert在python中的用法_python中insert用法是什么_后端开发
  5. Python + Django 如何支撑了 7 亿月活用户的 Instagram?
  6. docker安装mysql及相关配置、运行细节和常见报错解决方案
  7. html批量翻译 github,英文单词短语批量翻译工具WordListTranslator
  8. Django框架(10.Django中的模型类的定义以及模型类字段属性和选项)
  9. mysql数据库ip地址_MySQL数据库存储IP地址的方法
  10. java面试常考系列四
  11. 在C#中ParameterizedThreadStart和ThreadStart区别
  12. python处理pdf文档_pyPdf - 用Python方便的处理PDF文档
  13. 吴恩达神经网络和深度学习-学习笔记-8-梯度消失与爆炸 + 梯度检测
  14. red hat linux没有库文件libiconv.so,libiconv库链接问题一则(备忘)
  15. Java程序员 面试如何介绍项目经验?
  16. 将动态IP切换为静态
  17. SOFA-DTX 分布式事务的设计演进路线
  18. 数字电路——流水灯(一)
  19. 直播回顾 | 一起来get 电商风控实操知识点
  20. wps合并所有sheet页_WPS怎么把几个工作表合并到一个工作表 - 卡饭网

热门文章

  1. 如何对 iOS App 内购买项目进行测试?
  2. Qt 之打开系统文件管理器
  3. 正在准备面试?快手三面面试真题,搞懂这些直接来阿里入职
  4. 智慧交通大数据可视化,让城市运营车辆可视、可监、可控
  5. Hyper-V 2016 系列教程50 某德国制造型企业上线案例分享
  6. 一个好的科技公司logo长这样
  7. 《深入理解计算机系统》练习解析(持续更新)
  8. 小号系统搭建接口教程
  9. 怎么学python入门?python新手学习路线
  10. java word apache poi 操作word模板。