安洵杯-复现

news2024/11/28 10:37:15

reee

主要就是这个函数

在这里插入图片描述

void __noreturn sub_401640()
{
  char Buffer[52]; // [esp+0h] [ebp-60h] BYREF
  char ArgList[16]; // [esp+34h] [ebp-2Ch] BYREF
  int v2; // [esp+44h] [ebp-1Ch]
  CHAR Text[13]; // [esp+48h] [ebp-18h] BYREF
  int v4; // [esp+55h] [ebp-Bh]
  __int16 v5; // [esp+59h] [ebp-7h]
  char v6; // [esp+5Bh] [ebp-5h]

  memset(Buffer, 0, 0x32u);
  v4 = 0;
  v5 = 0;
  v6 = 0;
  strcpy(ArgList, "Input ur flag: ");
  v2 = 0;
  strcpy(Text, "try agin bro");
  sub_401010("%s", (char)ArgList);
  gets_s(Buffer, 0x32u);
  if ( strlen(Buffer) != 24 )
  {
    MessageBoxA(0, Text, "0.0", 0);
    exit(0);
  }
  sub_401430(Buffer);
  ((void (__cdecl *)(char *))loc_4011B0)(Buffer);
  sub_401010("\npress any key to quit...\n", Buffer[0]);
  getwch();
  ExitProcess(0);
}

修复了下花指令,_security_cookie = 0BB40E64E,感觉修了和没修一样,估计就是个比对

在这里插入图片描述

这个应该就是加密后的flag了

在这里插入图片描述

加密函数

在这里插入图片描述

加密算法

int __usercall sub_401130@<eax>(int a1@<edx>, int a2@<ecx>, unsigned int a3)
{
  int result; // eax
  int v4; // edi
  unsigned int i; // ebx
  unsigned __int8 v6; // dl
  int v8; // [esp+10h] [ebp-4h]

  result = 0;
  v4 = 0;
  v8 = a2;
  for ( i = 0; i < a3; a2 = v8 )
  {
    v4 = (v4 + 1) % 256;
    v6 = *(_BYTE *)(v4 + a2);
    result = (v6 + result) % 256;
    *(_BYTE *)(v4 + v8) = *(_BYTE *)(result + a2);
    *(_BYTE *)(result + v8) = v6;
    *(_BYTE *)(i + a1) ^= *(_BYTE *)((unsigned __int8)(v6 + *(_BYTE *)(v4 + v8)) + v8);
    ++i;
  }
  return result;
}

写个脚本出来就行

flag = [86,97,99,164,34,164,
     80,125,205,141,19,61,
     74,79,13,98,136,171,
     252,233,187,30,160,144]

s = [ord(i) for i in "D0g3"]
a2 = [0] * 256
v16 = [0] * 256
for i in range(256):
    v16[i] = s[i % 4]
    a2[i] = i

v9 = 0
for i in range(256):
    v10 = a2[i]
    v9 = (a2[i] + v16[i] + v9) % 256
    a2[i] = a2[v9]
    a2[v9] = v10
print("a2 = ",a2)
v4 = 0
result = 0
for i in range(24):
    v4 = (v4 + 1) % 256
    v6 = a2[v4]
    result = (v6 + result) % 256
    a2[v4] = a2[result]
    a2[result] = v6
    flag[i] ^= a2[(a2[v4] + v6) % 256]


for i in range(24):
    print(chr(flag[i]),end='')
print(flag)

flag: d0g3{This_15_FindWind0w}

Misc GumpKing

打开是个游戏,我想着给他解包出来看的,结果解出来一堆素材,看了半天也找不到flag,看别人wp说玩到100下就行(这玩意我玩不到10下 ,鼠标滑动来控制左右,但是不知道咋的跳几下就划不动了。。。)

在这里插入图片描述

虚幻4(ue4)引擎加密pak解包教程

在这里插入图片描述

直接拿ce试试

在这里插入图片描述

跳完得到的分数输进去扫描一次,扫三次就行了0x240CDF64存的就是得分

在这里插入图片描述

看下是哪个地方改写了分数

在这里插入图片描述

一共有两个地方,第一个是+1,第二个是清零

在这里插入图片描述

直接给第二个下落的代码改成加0x100

在这里插入图片描述

只要跳一下,数字就出来了,就是有点臭。。。。

在这里插入图片描述

flag: d0g3{1145141919810}

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

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

相关文章

《Redis实战篇》一、短信登录

1.1、导入黑马点评项目 1.1.1 、导入SQL 1.1.2、有关当前模型 手机或者app端发起请求&#xff0c;请求我们的nginx服务器&#xff0c;nginx基于七层模型走的事HTTP协议&#xff0c;可以实现基于Lua直接绕开tomcat访问redis&#xff0c;也可以作为静态资源服务器&#xff0c;轻…

Java并发常见面试题(二)

为什么要使用多线程&#xff1f; 从整体上来看 从计算机底层来说&#xff1a; 线程可以看作是轻量级的进程&#xff0c;是最小的程序执行单位&#xff0c;线程间的切换和调度的成本远远小于进程。另外&#xff0c;多核CPU时代&#xff0c;多个线程可以同时运行&#xff0c;这…

PCB布线及后仿真验证过程(干货满满,建议收藏)

一 布线的基本要求 1. 布线次序考虑 1) 规则驱动布线遵循的基本步骤 定义禁布区&#xff0c;或控制区&#xff1b; 若有规则约束&#xff0c;要求设置规则&#xff1b; 试布线&#xff0c;评估单板是否可以布通&#xff0c;若不能布通&#xff0c;需要采用策略&#x…

Linux测试常用命令

Linux测试常用命令1.Linux安装2.linux常用命令1.一些Linux环境下的基本操作2. 目录管理3.文件管理1.Linux安装 在VMWare虚拟机上安装linux操作系统&#xff0c;得到一个ip&#xff0c;然后通过MobaXterm远程连接linux并进行命令操作。 公司测试的时候是直接拿到服务器ip&…

食品经营许可证办理要什么材料

食品经营许可证办理要什么材料 1.食品经营许可申请书&#xff1b; 2.营业执照或者其他主体资格证明文件复印件&#xff1b; 3.法定代表人&#xff08;负责人&#xff09;和食品安全管理人员的名册、身份证明复印件。申请人委托他人办理食品经营许可申请的&#xff0c;代理人…

代码审计-2 SQL注入

代码审计之SQL注入审计流程ThinkPHP框架ThinkPHP的路由PbootCMSPbootCMS留言处存在SQL注入代码分析ThinkPHP框架 ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架 MVC模式的php开发框架 MVC&#xff1a;一种软件架构模式&#xff0c;把系统分为三个部分&#xff1a…

基于OpenDaylight和OVSDB搭建VxLAN网络

1 简介 本文主要介绍基于OpenDaylight子项目OVSDB中的southbound组件来搭建VxLAN网络&#xff0c;包括初始环境搭建和southbound RestConf API调用等。OpenDaylight中的northbound组件也可以用来创建VxLAN网络&#xff0c;但northbound不是基于yang的且OVSDB封装的不好&#x…

overflow属性详解

overflow属性详解_桃花扇J的博客-CSDN博客_overflow属性 原链接 overflow是对溢出内容的处理&#xff0c;有四个属性值visible&#xff0c;hidden&#xff0c;scroll&#xff0c;auto&#xff0c;且可以分别设置overflow-x&#xff0c;overflow-y&#xff0c;需要注意的是&am…

从夜间照明到随动转向速锐得解码比亚迪唐车灯升级改装技术方案

汽车大灯犹如人的眼睛一样&#xff0c;在汽车的正脸&#xff0c;灵魂与窗口一样的存在&#xff0c;我们通过技术手段将汽车大灯升级为更高亮度、更智能化&#xff0c;是从根本解决行车安全问题。行车灯发展了几十年&#xff0c;已经不仅限于满足“夜间照明”的功能&#xff0c;…

lt基站学习总结

目录 1.nanocell基站的介 2.lte的网络结构 2.1 网络实体 2.2 功能划分 2.3功能描述 2.4业务类型 2.5语音回落原理 3 S1接口上用户注册消息的简介 3.1 S1接口的位置 3.2 S1接口的协议栈关系 3.3 S1接口建立实例 4 3g用户附着流程 5. Lte用户开机附着过程 1.nanocell基站…

扫描点读笔搭载北京君正X2000多核异构跨界处理器的案例

外研通云畅VT-S30扫描点读笔搭载北京君正X2000多核异构跨界处理器&#xff0c;X2000多核异构跨界处理器主要面向于智能音频、图像识别、智能家电、智能家居、智能办公等五大领域。CPU采取三核结构&#xff0c;搭载双XBurst2&#xff0c;主频1.2GHz&#xff0c;跨界第三核XBurst…

Vue3.0五问五答

1、Vue 3.0 性能提升主要是通过哪几方面体现的&#xff1f; 响应式系统升级 首先来看一下响应式系统升级。我们都知道Vue2的时候&#xff0c;数据响应式的原理使用的是defineProperty&#xff0c;在初始化的时候会遍历data中的所有成员。通过defineProperty&#xff0c;把对象的…

Clion代码提示功能消失无法标出错误代码

Clion就不用多说了吧&#xff0c;jetbrains永远的神&#xff01; 初次遇到这个问题也不知道是怎么回事&#xff0c;突然代码写着写着感到十分顺利。要是按照往常&#xff0c;依据jetbrains的强迫症&#xff0c;非要对你写的代码催毛求疵找出有误的地方&#xff0c;或者警告&…

spark安装与入门

下载 https://archive.apache.org/dist/spark/spark-3.0.0/spark-3.0.0-bin-hadoop3.2.tgz Local 模式 将 spark-3.0.0-bin-hadoop3.2.tgz 文件上传到 Linux&#xff0c;解压 tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz -C /opt/module 重命名 cd /opt/module mv spark-3.0.…

Vue3项目搭建教程

找到一个你想要创建Vue项目的目录&#xff08;本文以C:\Users\XTT\Desktop\新建文件夹\project为例&#xff09;。在此目录打开命令行&#xff0c;输入以下命令&#xff1a; 回车&#xff0c;如果是第一次用这种方式创建Vue3项目&#xff0c;命令行会提示安装 create-vue 包&…

sharedPtr

shared_ptr 1.以何种方式传递 通过下列方式将 shared_ptr 传递给其他函数&#xff1a; 按值传递 shared_ptr。 这将调用复制构造函数&#xff0c;增加引用计数&#xff0c;并使被调用方成为所有者。 此操作的开销很小&#xff0c;但此操作的开销可能很大&#xff0c;具体取决…

python小游戏编程arcade----坦克动画图片合成

python小游戏编程arcade----坦克动画图片合成前言坦克动画图片合成1、PIL image1.1 读取文件并转换1.2 裁切&#xff0c;粘贴1.3 效果图1.4 代码实现2、处理图片的透明度问题2.1 past 函数的三个参数2.2 注意点12.3 注意点22.4 效果![在这里插入图片描述](https://img-blog.csd…

Android中简单使用aspectj

Android中简单使用aspectj 前言&#xff1a; 面向切面编程&#xff08;AOP是Aspect Oriented Program的首字母缩写&#xff09;,这种在运行时&#xff0c;动态地将代码切入到类的指定方法、指定位置上的编程思想就是面向切面的编程. 1.简介&#xff1a; 在Android中使用注解…

48、线程

一、线程相关概念&#xff1a; 1、程序&#xff08;program&#xff09;&#xff1a; 是为完成特定任务、用某种语言编写的一组指令的集合&#xff0c;即我们写的代码。 2、进程&#xff1a; &#xff08;1&#xff09;进程是指运行中的程序&#xff0c;比如我们使用QQ&…

✿✿✿JavaScript --- BOM、DOM对象

目 录 一、BOM浏览器对象模型 1.Window窗口对象 (1)与弹出有关的方法 (2)与定时器有关的方法 (3)与打开关闭有关的方法 (4) 获取其他对象的属性 2.Location地址栏对象 3.History历史记录对象 二、DOM文档对象模型 1.Document文档对象 (1)获取Element对象 (2)创建…