BUUCTF——Reverse——[GXYCTF2019]luck_guy

1、题目

2、工具

  • Exeinfo PE:查壳工具。
  • IDA:是一款功能强大的反汇编工具,用于分析和逆向工程二进制文件。
  • python:编写自动化脚本。

3、方法

  • 下载压缩包,解压得到一个没有后缀的文件。
  • 用Exeinfo PE查询该文件是否加了壳。
    • 发现这是一个64位的.elf文件(linux),并且没有壳。
  • 使用64位的IDA将其打开。找到main函数,双击,按F5进行反汇编。
    • 主函数中要求输入一个数字,然后该数字被传入了patch_me()函数中。
  • 双击patch_me函数。
    • 如果该数字为奇数则结束,偶数则返回get_flag()函数。
  • 双击get_flag()函数。
  • 代码含义:
    • switch语句判断的条件,rand()是生成一个随机数,rand()%200则将范围定在了0~199之间。
    • switch语句中的case2、case3和default与flag无关排除。
    • case1输出的变量s应该就是flag,由f1和f2组成。双击f1得到其值为:GXY{do_not_,f2为空。
    • case4对变量s进行了赋值,然后把s拼接给了f2,其中s为十六进制长整型,存储时按照小端方式存储(高位在前),需要逆转过来。
    • case5对f2进行了处理,奇数位的字符进行-2操作,偶数位字符进行-1操作。
  • 按照题目的意思,应该是给5次机会,每次随机生成一个数字,并且恰好能够按顺序地执行case4,case5和case1。
  • 所以只需要编写脚本,顺序执行case4,case5和case1就可以了。
  • python脚本:
    • s = [0x69, 0x63, 0x75, 0x67, 0x60, 0x6f, 0x66, 0x7f]  # 小端方式
      f1 = "GXY{do_not_"
      flag = f1
      for i in range(0, len(s)):if i % 2 == 1:s[i] -= 2else:s[i] -= 1flag += chr(s[i])
      print(flag)
    • 运行结果:
  • 以flag{do_not_hate_me}形式提交。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/595575.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sql:定时执行存储过程(嵌套存储过程、使用游标)

BEGINDeclare FormNo nvarchar(20) --单号Declare Type nvarchar(50) --类型Declare PickedQty float -Declare OutQty float Declare 生产量 floatDeclare 已装箱数量 float Declare 已入库数量 floatDeclare 损耗数量 float Declare 退货品出库数量 intdeclare k c…

C++面向对象编程与泛型编程(GP)

C既支持面向对象编程,又支持泛型编程 1.面向对象编程 将数据结构与处理方法(容器与算法)组成对象封装在一个类中,通过类的封装隐藏内部细节,可以使用继承,多态等方法。 注意:list容器本身带有…

【计算机毕业设计】SSM实现的在线农产品商城

项目介绍 本项目分为前后台,且有普通用户与管理员两种角色。 用户角色包含以下功能: 用户登录,查看首页,按分类查看商品,查看新闻资讯,查看关于我们,查看商品详情,加入购物车,查看我的订单,提交订单,添加收获地址,支付订单等功能。 管理员角色包含以…

LiveGBS国标GB/T28181流媒体平台功能-国标级联中作为下级平台对接海康大华宇视华为政务公安内网等GB28181国标平台查看级联状态及会话

LiveGBS国标级联中作为下级平台对接海康大华宇视华为政务公安内网等GB28181国标平台查看级联状态及会话 1、GB/T28181级联是什么2、搭建GB28181国标流媒体平台3、获取上级平台接入信息3.1、如何提供信息给上级3.2、上级国标平台如何添加下级域3.2、接入LiveGBS示例 4、配置国标…

Linear Regression 线性回归

深度学习: 数据集模型选择训练(KNN不需要)推理(预测) 假设学生用x小时学习深度学习,能够得要y分数: 那么学习4小时,能够得到多少分? 用已知数据作为训练集&#xff1a…

Anbernic RG35XXX 固件刷入

才买的安博尼克,没几天发现无法开机,且按键失灵;后来发现是因为自带的存储卡坏掉的原因,于是决定自己买存储卡刷个系统。 参考地址: Anbernic RG35XX Starter Guide – Retro Game Corps Anbernic RG35XX does not …

助力数据出境安全 | 时代新威出席第二届粤港澳数据合作会议

12月19日,第二届粤港澳数据合作会议在广州南沙成功举办。会议以“数智力量汇聚南沙,打造粤港澳数据高水平合作平台,赋能大湾区数字经济高质量发展”为主题,汇聚了政府主管部门领导、粤港澳相关主管机构代表、中国工程院院士和众多…

Apollo开放平台概览 :自动驾驶的未来趋势

🎬 鸽芷咕:个人主页 🔥 个人专栏:《linux深造日志》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! ⛳️ 粉丝福利活动 ✅参与方式:通过连接报名观看课程,即可免费获取精美周边 ⛳️活动链接&#xf…

Wpf 使用 Prism 实战开发Day08

备忘录页面设计 1.效果图 一.布局设计跟第7章节一样&#xff0c;只是内容方面发生变化&#xff0c;其他样式都一样。直接把代码粘出来了 MemoView.xaml 页面代码 <UserControl x:Class"MyToDo.Views.MemoView"xmlns"http://schemas.microsoft.com/winfx/2…

各位大佬看看这是不是macos的一个bug啊

请各位大佬看看是不是一个bug啊&#xff0c; 打开mac自带的命令行&#xff0c;先输入man less&#xff0c;显示没问题&#xff0c;再输入man more&#xff0c;发现出现的是less的说明&#xff0c;这里出了问题。 第一张图是man less&#xff0c;第二张图是man more。 我的系统…

JSON网络令牌JWT

1.什么是身份验证 日常生活中的身份验证的场景: 比如进入公司的大楼时&#xff0c;需要携带工牌&#xff1b;打卡上班时&#xff0c;需要指纹识别&#xff1b;打开工作电脑时&#xff0c;需要输入密码。 2. 什么是 JSON 网络令牌&#xff1f; JSON Web Token (JWT) 是一个开…

大数据 - Doris系列《一》- Doris简介

目录 &#x1f436;1.1 Doris 概述 &#x1f436;1.2 OLAP和OLTP&#xff08;面试&#xff09; 1. 应用场景 &#x1f959;联机事务处理OLTP(On-Line Transaction Processing) &#x1f959;联机分析处理OLAP(On-Line Analytical Processing) 2. OLAP和OLTP比较--“用户行…

Unity SRP 管线【第五讲:自定义烘培光照】

文章目录 一、自定义烘培光照1. 烘培光照贴图2. 获取光照贴图3. 获取物体在光照贴图上的UV坐标4. 采样光照贴图 二、自定义光照探针三、 Light Probe Proxy Volumes&#xff08;LPPV&#xff09;四、Meta Pass五、 自发光烘培 一、自定义烘培光照 细节内容详见catlikecoding.c…

2024年防止内卷和被潜规则,RocketMQ消息中间件实战派上下册上线啦|架构随笔录

2023已经过去啦&#xff0c;作为技术小伙伴一定要做好2024年的规划&#xff0c;只有这样才能够避免内卷和潜规则。 2024年即将是一个重新开始的一年&#xff0c;但是你要说互联网不倦&#xff0c;那是不可能的&#xff0c;就连某大厂都开始走下坡路啦&#xff0c;里面卷的是不…

很实用的ChatGPT网站—在线编程模块增补篇

很实用的ChatGPT网站&#xff08;http://chat-zh.com/&#xff09;——增补篇 今天介绍一个好兄弟开发的ChatGPT网站&#xff0c;网址[http://chat-zh.com/]。这个网站功能模块很多&#xff0c;包含生活、学习、医疗、法律、经济等很多方面。今天跟大家分享一下&#xff0c;新…

Cesium自定义电子围栏特效材质

1.new Cesium.Viewer中添加 requestWebgl1: true, 2. 编写材质&#xff0c;主要分三步 &#xff08;1&#xff09;定义MaterialProperty &#xff08;2&#xff09;设置材质 &#xff08;3&#xff09;添加材质 //定义材质对象及变量 function DynamicWallMaterialPropert…

linux centos 添加临时ip

### 1.添加ip ip addr add IP/mask dev 网络设备 例&#xff1a;ip addr add 172.104.210.247/24 dev ens5f1 ### 2.启动网卡 ip link set up 网络设备 例&#xff1a;ip link set up ens3f0 ### 3.设置默认路由 ip route add default via GATEWAY 例&#xff1a;ip route add …

C# 反射 入门到详解

1.什么是反射 首先看一张流程图 反射最最要的关注的地方 就在metadata 元数据 元数据&#xff1a;描述DLL/EXE文件中有什么内容 点击生成之后&#xff0c;就会在文件中生成DLL/EXE文件 点击打开文件夹 在bin/Debug 文件下就会生成该文件 exe/dll文件的区别&#xff1a;…

NSSCTF websign

开启环境&#xff1a; 提示我们看源码&#xff0c;那就看。 但是我们发现右键被禁用了&#xff0c; ctrlU也被禁用了。 直接在url前加view-source:得到页面源码取出flag

银河麒麟V10sp3操作系统设备初始化(设置主机名、挂载数据盘、设置网卡bond模式)

本篇记录安装好银河麒麟V10sp3操作系统后对服务器做一些初始化配置 1、设置主机名 2、挂载数据盘 3、设置网卡bond模式 登录 打开终端 开始配置 1、设置主机名 hostnamectl set-hostname Kylin # Kylin为主机名2、挂载数据盘 先用fdisk命令查看磁盘信息 fdisk -l格式化数…