下载文件先查壳,可以看到有UPX壳

用upx脱壳

拖到ida pro32,shift+F12查看字符串,看到关键字flag,双击进去

双击然后f5查看伪代码

main函数伪代码

关键函数:

strncmp(const char *str1, const char *str2, size_t n)

比较前n个字节的str1和str2的ASCII值,如果相同则返回0

所以下面这行代码意思就是如果Str1=Str2,那么就为真,即Str1就是flag。

if ( !strncmp((const char *)&Str1, Str2, strlen(Str2)) )

Str1=HappyNewYear!,所以flag应该为:flag{HappyNewYear!}

BUUCTF Reverse 新年快乐的更多相关文章

  1. [BUUCTF]REVERSE——新年快乐

    新年快乐 附件 例行查壳儿,32位程序,upx加壳儿 利用网上找到的脱壳儿工具,拿到了去壳儿后的程序 32位ida打开,shift+f12查看程序里的字符串,得到了关于flag的提示 双击,ctrl+ ...

  2. [BUUCTF]REVERSE——[ACTF新生赛2020]Oruga

    [ACTF新生赛2020]Oruga 附件 步骤: 例行检查,64位程序,无壳 64位ida载入,检索字符串,根据提示来到关键函数 14行~18行就是让字符串的前5位是 actf{ ,sub_78A( ...

  3. [BUUCTF]REVERSE——firmware

    firmware 附件 步骤: 检查文件没有看出什么,ida载入一堆乱码,看了其他师傅的wp才知道要先binwalk对文件进行提取 120200.squashfs这是一个linux的压缩文件 我们需要 ...

  4. [BUUCTF]REVERSE——[WUSTCTF2020]Cr0ssfun

    [WUSTCTF2020]Cr0ssfun 附件 步骤: 例行检查,无壳儿,64位程序,直接ida载入,检索程序里的字符串,根据提示跳转 看一下check()函数 内嵌了几个检查的函数,简单粗暴,整理 ...

  5. [BUUCTF]REVERSE——[FlareOn6]Overlong

    [FlareOn6]Overlong 附件 步骤: 例行检查,32位程序,不懂是个啥 32位ida载入,main函数很简单 处理函数 sub_401000 程序只对unk_402008的28位进行了处 ...

  6. [BUUCTF]REVERSE——[WUSTCTF2020]level3

    [WUSTCTF2020]level3 附件 步骤: 例行检查,64位程序,无壳 64位ida载入,找到关键函数 看样子是个base64加密,但又感觉没那么简单,再翻翻左边的函数,找到了base64加 ...

  7. [BUUCTF]REVERSE——[MRCTF2020]hello_world_go

    [MRCTF2020]hello_world_go 附件 步骤: 例行检查,64位程序,无壳 64位ida载入,检索程序里的字符串,有很多,直接检索flag 一个一个点过去,找到了flag 按a,提取 ...

  8. [BUUCTF]REVERSE——[GKCTF2020]BabyDriver

    [GKCTF2020]BabyDriver 附件 步骤: 例行检查,64位程序,无壳 64位ida载入,检索程序里的字符串,看到提示flag是md5(input),下方还看到了类似迷宫的字符串 找到关 ...

  9. [BUUCTF]REVERSE——[MRCTF2020]Xor

    [MRCTF2020]Xor 附件 步骤: 例行检查,32位程序,无壳 32位ida载入,首先检索程序里的字符串,根据字符串的提示,跳转到程序的关键函数 根据flag,跳转到sub_401090函数 ...

  10. [BUUCTF]REVERSE——[FlareOn4]IgniteMe

    [FlareOn4]IgniteMe 附件 步骤: 例行检查,32位程序,无壳 32位ida载入 当满足第10行的if条件时,输出G00d j0b!提示我们成功,看一下sub_401050函数 3.s ...

随机推荐

  1. python实现简单的爬虫功能

    前言Python是一种广泛应用于爬虫的高级编程语言,它提供了许多强大的库和框架,可以轻松地创建自己的爬虫程序.在本文中,我们将介绍如何使用Python实现简单的爬虫功能,并提供相关的代码实例. 如何实 ...

  2. Llama2-Chinese项目:2.3-预训练使用QA还是Text数据集?

      Llama2-Chinese项目给出pretrain的data为QA数据格式,可能会有疑问pretrain不应该是Text数据格式吗?而在Chinese-LLaMA-Alpaca-2和open-l ...

  3. PLSQL_developer安装与配置

    前言: 记录安装与配置操作 环境: 客户机:windows 服务器:虚拟机中的windows server 2003 /---------------------------------------- ...

  4. day1 C语言:对于P1055 ISBN号码的代码优化及多解

    day1 C语言:对于P1055 ISBN号码的代码优化及多解 先看题目 直接说最优解,其他方法后置 第一部分 1.第一个点是数据的输入,本人第一的想法是直接用int类型去接受数据,但因为" ...

  5. Android Studio3.2.1升级刨坑记录

    Android Studio出了3.2.1,我用的是2.3,所有决定升级一下,看看如何 为了保险一点,下载了官方的解压版本,也就是说不含sdk,下载android-studio-ide-181.501 ...

  6. shell解析xml文档

    需要解析的源文件: /tmp/cameralist : <?xml version="1.0" encoding="UTF-8"?><came ...

  7. 【日常收支账本】【Day04】优化编辑动账记录的操作——QTableWidget单元格设置QComboBox控件

    一.项目地址 https://github.com/LinFeng-BingYi/DailyAccountBook 二.新增 1. 在表格中设置选项列表,让用户更快地编辑动账记录 1.1 功能详述 为 ...

  8. 题解 CF916C

    题目大意: 要求构造一张图,并让该图满足以下条件: 有 \(n\) 个点,\(m\) 条边. 每条边的边权范围是 \([1,10^9]\). 图中从 \(1\) 到 \(n\) 的最短路径长度是个质数 ...

  9. 原生JS实现视频截图

    视频截图效果预览 利用Canvas进行截图 要用原生js实现视频截图,可以利用canvas的绘图功能 ctx.drawImage,只需要获取到视频标签,就可以通过drawImage把视频当前帧图像绘制 ...

  10. python之object类

    object类 如python之继承及其实现方法这一节提到过的,object类是所有类的父类,因此所有类都有object类的属性和方法. 如python之封装及私有方法使用过的,内置函数dir()可以 ...