首页 > 其他分享 >buu Youngter-drive

buu Youngter-drive

时间:2024-07-15 18:52:37浏览次数:6  
标签:函数 drive buu source flag text1 线程 Youngter 就是

查壳,有壳,upx脱壳(upx.exe -d )

image-20240715094111766

进ida看主函数

image-20240715161108375

又是这种粉色的没见过的函数,速查

CreateMutexW可以创建或打开命名的或未命名的互斥体对象。

简单来说就是后面的多线程同时只会同时运行一个线程

CreateThread就是创建线程来运行

CloseHandle就是关闭线程

在这道题中就是StartAddress和sub_41119F两个函数交替进行

首先就是这个sub_4110FF,进去之后是下图,主要是读取输入的36个字符

image-20240715175320462

然后就是StartAddress,倒数第三层是这个函数,可以看到一个循环,每次418008都会自减,这个值是1D,即29。

image-20240715175305375

image-20240715171349081

最后一层函数,传进去a1就是source的首地址,a2就是29

看函数内容就是大写字母一个操作,小写字母一个操作,把source字符串中的字符进行操作后的字符当作索引,在418000字符中找到位置并返回给source。

image-20240715171511130

然后就是另一个线程,可以看到就是单纯的递减,没有操作

image-20240715180236694

所以总结就是单数操作,双数不变

最后有个检验函数

image-20240715183956068

image-20240715184028913

写个EXP

text1 = 'TOiZiZtOrYaToUwPnToBsOaOapsyS'
text2 = 'QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm'
flag = ''

for i in range(len(text1)):
    if i % 2 == 0:
        flag += text1[i]
    else:
        if text1[i].islower():
            flag += chr(text2.find(text1[i]) + 38)
        else:
            flag += chr(text2.find(text1[i]) + 96)
print(flag)

得到结果ThisisthreadofwindowshahaIsES

网上看到这题flag后面还要加个E,不懂为什么,没看到为什么是30位

flag{ThisisthreadofwindowshahaIsESE}

标签:函数,drive,buu,source,flag,text1,线程,Youngter,就是
From: https://www.cnblogs.com/yee-l/p/18303749

相关文章

  • Structure of Linux Kernel Device Driver(Part I)
    StructureofLinuxKernelDeviceDriverref.https://www.youtube.com/watch?v=XoYkHUnmpQo&list=LL&index=1&t=272sDeviceDriversDef.:设备驱动(DeviceDrivers),实际上就是硬件设备对应的抽象,用户能够通过这样的一个抽象与对应的硬件进行交互设备驱动与固件的区别:设备驱......
  • BUUCTF-ningen1
    1.由于是jpg后缀,所以先打开详细信息看看里面有没有东西(png后缀的不需要)2.发现没有东西后,将其放在010Editor里面,看看里面有没有隐藏的文件在010Editor里面发现了PK(PK文件是一种压缩文件格式),于是将其选择保存(后缀记得写成.zip)。3.将压缩包保存在电脑后打开发现需要密码,......
  • buuctf-FLAG1
    1.下载后发现是一张图片;按照做题思路首先打开010Editor查看里面有没有东西,这个图片中我没发现什么东西,于是将图片放在Stegsolve.jar中查看看图片没啥问题后,进行数据提取(dataextract),进行预览发现了504b0304,也就是说里面藏了一个压缩包,这个时候进行保存打开后只发现了一......
  • java 连接 oracle数据库时报错 Oracle JDBC驱动未找到! No suitable driver found for
    在用IDEA编写java连接Oracle时,报错:OracleJDBC驱动未找到!可这部分之前测试是好用。想来想去。哦,我把这个项目代码换过路径,问题就出在这。需要重新引用下  ojdbc6.jar架包 下面是java连接oracle的部分代码ClassNotFoundException可以捕获OracleJDBC驱动未找到的异......
  • BUUCTF Crypto 做题记录
    目录:1.一眼就解密2.Url编码3.MD54.看我回旋踢5.摩丝6.password#1.一眼就解密https://buuoj.cn/challenges#一眼就解密ZmxhZ3tUSEVfRkxBR19PRl9USElTX1NUUklOR30=确实一眼看出是Base64,拿去解密即可2.Url编码https://buuoj.cn/challenges#Url编码直接网上搜urlenco......
  • BUUCTF刷题_RoarCTF 2019_Easy Calc
    个人刷题学习记录,如有错误请多多指教进入题目如下,猜测是命令注入,输入ls弹框,估计是做了过滤查看页面源代码,发现一串代码,但是不怎么看得懂,查看网上大佬的wp进行学习看了别人的解题步骤知道这里有个url,存在calc.php,访问一下看看是啥上面注释里面写了有waf,猜测这里应该是waf的......
  • AWS JDBC Driver连接中国区的Aurora需要配置参数 enableClusterAwareFailover=false
    AWSJDBCDriver中国区和Global区域的区别是,由于中国区AuroraEndpoint与Global的后缀不同,中国区的AWSJDBCDriver其实无法识别中国区endpoint,因为中国区的资源endpoint是以".cn"结尾,这个endpoint不被认为是aurora的endpoint,会被认为是customdomain.因此应用程序在使用AW......
  • CP AUTOSAR标准之ADCDriver(AUTOSAR_SWS_ADCDriver)(更新中……)
    1简介和功能概述  本规范描述了AUTOSAR基础软件模块ADC驱动程序的功能、API和配置。ADC驱动程序针对的是逐次逼近型ADC硬件。DeltaSigmaADC转换用例不在本规范的范围内。  ADC模块初始化并控制微控制器的内部模拟数字转换器单元。它提供启动和停止转换的服务,分别启......
  • <mvc:annotation-driven/>使用介绍
    mvc:annotation-driven/是SpringMVC中的一个配置元素,它用于简化和加速SpringMVC应用的配置,尤其是那些使用注解的控制器。当你在SpringMVC配置文件中添加了mvc:annotation-driven/元素时,Spring会自动注册一系列的消息转换器(messageconverters)、数据绑定器(databinder......
  • 清华&地平线!SparseDrive:端到端自动驾驶 论文精读
    论文地址:SparseDrive:End-to-EndAutonomousDrivingviaSparseSceneRepresentation源代码:SparseDrive摘要    传统的模块化自动驾驶系统被分解为不同的独立任务,例如感知、预测和规划,这导致了信息丢失和跨模块的误差累积。相比之下,端到端范式将多任务统一到一个......