ICode9

精准搜索请尝试: 精确搜索
  • pwn | jarvisoj_level22021-11-17 19:01:48

    jarvisoj_level2 简单栈溢出rop ret2text 存在system和binsh字符串 直接丢exp: from pwn import * context.log_level = 'debug' # sh = process('./level2') sh = remote('node4.buuoj.cn', 29799) p_binsh = 0x804a024 # p_system = 0x804849e p_system

  • pwn | ciscn_2019_n_82021-11-17 18:33:43

    ciscn_2019_n_8 没有溢出,纯粹考察数据类型转化 直接丢exp: from pwn import * context.log_level = 'debug' # sh = process('./ciscn_2019_n_8') sh = remote('node4.buuoj.cn', 27552) sh.recv() payload = b'a' * 4 * 13 + p32(17)+p32(0) sh

  • CTF高质量PWN题之二叉树的漏洞利用2021-11-17 11:01:46

    分享一道CTF线下比赛中由c++编写的一道高质量赛题。 附件领取:链接: https://pan.baidu.com/s/1k3Wmf64yqRPW517rQKT_Wg 密码: qpwb 初步分析 程序运行起来看起来似乎是一道常规的菜单堆题: libc环境: 是Glibc 2.27-3ubuntu1.4,这个版本与2.31版本很像,都有key机制,一定程度上防止了do

  • pwn方向杂记1.02021-11-13 23:02:38

    ret2win 1.使用ida7.5打开软件后浏览main函数,发现缓冲区buf32,并且具有read函数,直接写脚本, payload中64位要多加8个字节覆盖,32位4个字节,并且python3中payload格式要在最前面加b,同时返回地址要写bin/sh的字符串位置。          

  • pwn环境配置2021-11-06 12:31:33

    文章目录 前言一、安装虚拟机二、安装linux必备的环境前提条件:1.将中文目录(如桌面)改成英文目录2.安装VMware-tools3.更新清华源,4.安装编辑器(1)安装vim(2)安装sublime 5.小技巧 三、安装pwn环境1:安装pwntools2:安装one_gadget3:安装gdb插件安装 git安装 pip3安装pwndbg安装pedapw

  • [BUUCTF-pwn] ciscn_2019_ne_22021-11-03 19:05:31

    自从300题后,难题让人搜不着,也有极简单的题,今天遇到一个 概况: c++写的程序,反汇编后一个字符串有1米长冒: 6个字符依次或或6-1得到 H@QRPNfree未清指针 步骤: 输入"NEUQRO" 开始建80,70,10(/bin/sh\x00)free90 八次 70两次 show 0得到libc建70 三次,依次写free_hook,x,system

  • pwn从0开始-2-level02021-11-01 12:02:17

      先看read函数 函数名:write 头文件:<io.h> 函数原型: int write(int handle,void *buf,int len); 功能:获取打开文件的指针位置 参数:int handle 为要获取文件指针的文件句柄 void *buf 为要写入的内容 int len 为要写入文件的长度 返回值:返

  • pwn从0开始-1-hello_pwn2021-11-01 01:00:40

    队里没人打pwn,由于某些原因还是练练吧。 我是pwn完全新手(就会点c语言),开个博客系列记录一下自己的pwn之路。 网上pwn题目不是很多,主要从攻防世界的几个pwn开始练吧 由于博客是个分享的地方,我就详细写写我遇到的大部分问题,网上pwn入门还是太深了   hello_pwn 这里先看文件多少位和

  • 一道堆方向的pwn(double free & unsorted bins)2021-10-17 12:34:48

    一道堆方向的pwn(double free & unsorted bins) 做题环境什么是double freeunsorted binsRoc826最后 在某博客上看到了一道堆的题,博主说是入门的,嗯,那正好适合我,于是我花了一周终于出结果了。。。。。。 来看看我都遇到了什么问题 另外,希望你在看这篇文章之前有了解过堆的

  • 攻防世界pwn高手区stack2 lea调整栈帧导致偏移错误2021-10-14 14:02:45

    Stack2 这题废话很多,说白了就一个数组越界的漏洞可以利用,没有对下标v5做限定,所以可以利用数组越界,直接越过canary,利用留下的后门getshell 刚开始看ida以为位移是0x74所以exp如下 from pwn import * p = remote('111.200.241.244', '50928') # p = process("./stack2") # c

  • roarctf_2019_easy_pwn2021-10-10 20:33:13

    1.利用off-by-one将chunk0修改后,释放掉chunk1,然后chunk1进入unsorted_bin中,申请一个合适大小的堆块,使剩余部分的刚好与chunk2重叠,最后通过show chunk2的内容泄露main_arena的地址。 注意:当申请一个从unsorted_bin中切割的堆块时,剩余的堆块在下次申请前仍然在unsorted_bin中 2.利用

  • BUUCTF pwn wp 51 - 552021-10-06 12:33:01

    wustctf2020_getshell_2 简单rop from pwn import * url, port = "node4.buuoj.cn", 25118 filename = "./wustctf2020_getshell_2" elf = ELF(filename) # libc = ELF("./") # context(arch="amd64", os="linux") cont

  • pwn-64和32位ROP以及system与execve的差别2021-10-05 19:02:37

    ①:ROP位数差别  这篇文章讲的很细:  (1条消息) [CTF pwn]傻傻分不清的execve、int80、syscall、system及shellcode_漫小牛的博客-CSDN博客 核心区别就是: 对于32位和64位,要遵循各自的调用约定,32位时摆在栈空间,64位时放在rdi寄存器。 ②:system与execve  参见这篇详细的讲解

  • 【pwn】2021 绿城杯(部分)2021-10-04 18:02:14

    【pwn】2021 绿城杯(部分) 前言 补题,这场没报名,比赛的时候机房唯一报名的战队pwn穿了(tql),就没去做了 1、uaf_pwn 简单的uaf,free之后之后没有置0,直接申请unsorted bin泄露libc,再double free改malloc_hook写入one_gadget exp如下 def add(size): sla(">","1") sla("size>"

  • BUUCTF 2021-10-4 Pwn2021-10-04 17:04:43

    文章目录 保持手感echo分析EXP Pwnme1分析EXP wdb_2018_1st_babyheap分析EXPFSOP houseoforange_hitcon_2016分析前置知识House_of_orangeFSOP EXP zctf_2016_note3分析EXP gyctf_2020_document分析EXP动态调试复现 护网杯_gettingstart分析EXP picoctf_2018_buffer overf

  • pwn基础ROP-碎片组合2021-10-03 21:57:56

    题源:基本 ROP - CTF Wiki (ctf-wiki.org) 的ret2syscall ①:老套路,先检查。  没有RXW可执行段。而且NX保护打开了。  ②:拉到IDA反汇编。 没有system,也没有可直接利用的后门函数,但是有bin/sh。什么也没有。而且段都是不可执行段,也不能直接写入整个shellcode段。 但是还有

  • xctf-pwn-高手进阶区-Aul2021-10-02 12:01:39

    heap 查得Lua是个脚本语言 执行系统命令语言如下 os.execute("/bin/sh")

  • 【pwn】DASCTF Sept 九月赛2021-09-30 21:05:30

    【pwn】DASCTF Sept 月赛 1、hehepwn 先查看保护,栈可执行,想到shellcode 这题需要注意shellcode的写法 拖入ida中分析 一直以为iso scanf不能栈溢出,后来发现我是shabi 先进入sub_4007F9()函数 有个read函数,恰好读完s数组,由于printf是碰到\x00截断,所以如果我们输满0x20个padding

  • SharkCTF2021 pwn“初见”12021-09-26 18:00:21

    (无内鬼 今日不想学了 水一篇) nc nc nc    easyoverflow            Intoverflow      

  • 长城杯2021 pwn2021-09-20 10:03:48

    长城杯2021 1.K1ng_in_h3Ap_I2.K1ng_in_h3Ap_II 菜鸡第一次在国内比赛做出两道题,害,长城杯比第五空间温柔多了,第五空间一道rop,之后就直接vm,musl都没学过,还有个c++逆向8出来。打完国赛(写了一道简单堆题,orw调一晚上没出来,服了)之后划水时间太长了,8月下旬才开始继续学堆,争取10

  • Linux pwn 之 ret2_dl_resolve2021-09-16 17:03:20

    点击 链接 上合天lab玩转CTF!了解re2_dl_resolve,首先要弄清楚基础的got表和plt表 got表 和 plt表 plt表,过程链接表,过程链接表的作用是将位置无关的符号转移到绝对地址,当一个外部符号被调用的时候,PLT去引用GOT表中的符号对应的绝对地址。 首先我们看一下二进制文件中got表,以及plt

  • BUU PWN RIP1 RET2CODE WRITEUP2021-09-13 22:03:32

    1、下载附件后,运行是一个输入程序,IDA分析main函数,gets可溢出。 F5伪代码如下: int __cdecl main(int argc, const char **argv, const char **envp) { char s; // [rsp+1h] [rbp-Fh] puts("please input"); gets(&s, argv); puts(&s); puts("ok,bye!!!"); r

  • 攻防世界 pwn guess_number2021-09-11 12:32:25

    第六题 这题是一个猜数字的游戏,连续猜对十次程序给的伪随机数,即可获得flag,也不是很难的一道题,直接放代码了: from pwn import * from ctypes import * context(log_level = 'debug',os= 'linux', arch = 'amd64') libc = cdll.LoadLibrary('/lib/x86_64-linux-gnu/libc.so.6') sh

  • BUUCTF PWN ciscn_2019_n_12021-09-10 23:59:23

      拿到文件先checksec   仅开启了NX保护 放入IDA中 查看main函数很简单,没有什么明显漏洞   发现了func函数,双击试试看   可以看到只要v2等于11.25125就可以执行cat flag命令 先把11.28125转为16进制,放着备用(0x41348000) 我们的思路就是利用gets这个危险函数,通过覆盖v

  • pwn-welpwn2021-09-08 22:30:43

    1.题目 1.保护机制 开启nx 2.关键代码 主函数 echo函数 2.思路 重点1:可以看到栈溢出漏洞,但是echo函数代码显然限制了ROP链中有\x00的出现,但是我们发现echo函数栈非常小,导出我们溢出可以溢出到主函数的buf缓冲区中,而且主函数的buf是不受\x00影响的,所以我们先使用pop覆盖echo

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有