当前位置: 首页 > news >正文

[ACTF新生赛2020]easyre

先脱壳

Main函数

将找到的字符在_data_start_数组中的索引加1

*F'\"N,\"(I?+@的ASCII是{ 42, 70, 39, 34, 78, 44, 34, 40, 73, 63, 43, 64, 0 }

这是判断flag是否是ACTF{}的形式

Shift+f12找字符串

提取数据

126, 125, 124, 123, 122, 121, 120, 119, 118, 117,

116, 115, 114, 113, 112, 111, 110, 109, 108, 107,

106, 105, 104, 103, 102, 101, 100, 99, 98, 97,

96, 95, 94, 93, 92, 91, 90, 89, 88, 87,

86, 85, 84, 83, 82, 81, 80, 79, 78, 77,

76, 75, 74, 73, 72, 71, 70, 69, 68, 67,

66, 65, 64, 63, 62, 61, 60, 59, 58, 57,

56, 55, 54, 53, 52, 51, 50, 49, 48, 47,

46, 45, 44, 43, 42, 41, 40, 39, 38, 37,

36, 35, 32, 33, 34, 0

#include <stdio.h>

#include <string.h>

int main()

{

    char v4[] = { 42, 70, 39, 34, 78, 44, 34, 40, 73, 63, 43, 64, 0 };

    int X;

    unsigned char _data_start_[] =

    {

        126, 125, 124, 123, 122, 121, 120, 119, 118, 117,

        116, 115, 114, 113, 112, 111, 110, 109, 108, 107,

        106, 105, 104, 103, 102, 101, 100, 99, 98, 97,

        96, 95, 94, 93, 92, 91, 90, 89, 88, 87,

        86, 85, 84, 83, 82, 81, 80, 79, 78, 77,

        76, 75, 74, 73, 72, 71, 70, 69, 68, 67,

        66, 65, 64, 63, 62, 61, 60, 59, 58, 57,

        56, 55, 54, 53, 52, 51, 50, 49, 48, 47,

        46, 45, 44, 43, 42, 41, 40, 39, 38, 37,

        36, 35, 32, 33, 34, 0

    };

    int v4_length = sizeof(v4) / sizeof(v4[0]);

    int data_start_length = sizeof(_data_start_) / sizeof(_data_start_[0]);

    for (int i = 0; i < v4_length; i++)

    {

        for (int j = 0; j < data_start_length; j++)

        {

            if (v4[i] == _data_start_[j])

            {

                X = j + 1;

                printf("%c", X);

            }

        }

    }

    return 0;

}

http://www.xdnf.cn/news/639127.html

相关文章:

  • Bolt.new:重塑 Web 开发格局的 AI 利器
  • MFC:获取所有打印机的名称(打印机模块-2)
  • 【Siggraph Asia 2023】低光增强Diffusion-Low-Light-main(引入diffusion与DWT) -- part1论文精读
  • AutoGen SelectorGroupChat 示例:社会热搜话题事件榜单
  • 成功解决ImportError: cannot import name ‘DTensor‘ from ‘torch.distributed.tensor‘
  • 选择排序算法研究
  • 【NIPS 2024】Towards Robust Multimodal Sentiment Analysis with Incomplete Data
  • C++异步(1)
  • [Protobuf] 快速上手:安全高效的序列化指南
  • SymAgent:一种用于知识图谱复杂推理的神经符号自学Agent框架
  • Oracle中的[行转列]与[列转行]
  • 【目标检测】【医学图像目标检测】BGF-YOLO:脑肿瘤检测的多尺度注意力特征融合
  • 【linux】systemctl基本语法
  • 康佳Java开发面试题及参考答案
  • 前端vue3实现图片懒加载
  • 【LCEL深度解析】LangChain表达式语言的工程化实践指南
  • 基于stm32单片机的智能盲杖研究
  • # YOLO11解决方案之区域追踪探索
  • Python 数据类型方法(1)
  • Docker 一键部署倒计时页面:Easy Countdown全设备通用
  • 2025年5月18日蓝桥stema省选拔赛答案解析
  • GDB调试工具详解
  • 探索高效视频下载:一款绿色版工具的实用体验
  • FreeRTOSConfig.h的作用
  • Three.js 海量模型加载性能优化指南
  • CMake指令:find_package()在Qt中的应用
  • C# 深入理解类(索引器)
  • Disruptor—3.核心源码实现分析一
  • 黑马点评-分布式锁Lua脚本
  • 在线热更新 Upstream全面掌握 ngx_http_upstream_conf_module