自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

至臻求学,胸怀云月

道阻且长,未来可期

  • 博客(15)
  • 资源 (2)
  • 收藏
  • 关注

原创 花式栈溢出技巧之frame faking

frame faking构造一个虚假的栈帧来控制程序的执行流原理之前所讲的栈溢出不外乎两种方式:控制程序EIP控制程序EBP其最终都是控制程序的执行流。在frame faking中,我们所利用的技巧辨是同时控制EBP和EIP,这样我们在控制程序执行流的同时,也改变程序栈帧的位置。函数的入口点和出口点入口点push ebp #将ebp压栈mov ebp, esp ...

2020-02-29 19:25:36 2599 5

原创 栈溢出之ELF文件格式学习

ELF文件ELF文件格式最前部ELF文件头,包含了整个文件的基本属性,比如ELF版本,目标机器型号,程序入口地址等。其中ELF文件与段有关的重要结构就是段表。ELF文件格式可重定向文件:包含代码和适当的数据,用来和其他的目标文件一起来创建一个可执行性文件或者是一个共享目标文件可执行文件:保存着一个用来执行的程序共享目标文件:共享库,包含了用于链接的代码和数据,分两种情况:静态连接器...

2020-02-28 14:07:33 1026 1

原创 使用阿里云服务器搭建一道BROP的pwn题

搭建题目环境题目:HCTF2016 bropC代码如下:#include <stdio.h>#include <unistd.h>#include <string.h>int i;int check();int main(void) { setbuf(stdin, NULL); setbuf(stdout, NULL); ...

2020-02-26 11:37:21 1038

原创 中级ROP之BROP

Blind ROP基本介绍于2014年提出,论文题目名为Hacking Blind,BROP是指在没有对应应用程序的源代码或者二进制文件的情况下,对程序进行攻击,劫持程序的执行流。攻击条件源程序必须存在栈溢出漏洞,以便于攻击者可以控制程序流程。服务器端的进程在崩溃之后会重新启动,并且重新启动的进程的地址与先前的地址一样,目前nginx,mysql,apache,openssh等服务器应...

2020-02-25 12:23:30 3061 5

原创 中级ROP之ret2reg

ret2reg原理查看栈溢出返回时哪个寄存器指向缓冲区空间。查找对应的call 寄存器或者jmp 寄存器指令,将EIP设置为该指令地址。将寄存器所指向的空间上注入shellcode(确保该空间是可以执行的,通常是栈上的)利用思路分析和调试汇编,查看溢出函数返回时哪个寄存器指向缓冲区地址向寄存器指向的缓冲区中注入shellcode查找call 该寄存器或者jmp 该寄存器指令,...

2020-02-23 19:01:51 2839 3

原创 中级ROP之ret2csu

ret2csu原理在64位程序中,函数的前6个参数是通过寄存器传递的,但是大多数时候,我们很难找到每一个寄存器对应的gadgets。这时候,我们可以利用x64下的__libc_csu_init中的gadgets,如例二情况。这个函数是用来对libc进行初始化操作的,而一般的程序都会调用libc函数,所以这个函数一定会存在。下面是我在IDA摘出来的__libc_csu_init函数的汇编...

2020-02-22 18:52:05 7044 9

原创 Bugku pwn5 WP

下载地址urlchecksec[*] '/mnt/hgfs/ubuntu_share/pwn/bugku/human' Arch: amd64-64-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x...

2020-02-19 13:02:20 879

原创 Bugku pwn4 WP

下载地址urlchecksec[*] '/mnt/hgfs/ubuntu_share/pwn/wiki/pwn4' Arch: amd64-64-little RELRO: Partial RELRO Stack: No canary found NX: NX disabled PIE: No PIE (0x4...

2020-02-18 21:39:47 683

原创 花式栈溢出技巧之stack pivoting

原理正如它描述的,该技巧就是劫持栈指针指向攻击者所能控制的内存处,然后在相应位置进行ROP。一般来说,我们可能在下述情况使用劫持栈指针。可以控制栈溢出的字节数较少,难以构造较长的ROP链。开启了PIE保护,栈地址未知,我们可以将栈劫持到已知的区域。其他漏洞难以利用,需要进行转换,比如将栈劫持到推空间,从而在堆上写rop及进行堆漏洞利用。此外,栈指针劫持有以下几个要求:可以控制程序...

2020-02-18 12:04:27 1367 1

原创 SUS2019迎新赛ret2moonWP

下载地址https://pan.baidu.com/s/1fa2D8ivzYiE9JPVyL3wgXA提取码:dzyu注:不知道什么时候失效checksec+IDA[*] '/mnt/hgfs/ubuntu_share/pwn/wiki/ret2moon' Arch: amd64-64-little RELRO: Partial RELRO St...

2020-02-16 13:12:48 463 1

原创 基本ROP之ret2libc3

ret2libc思路ret2libc就是控制函数的执行libc中的函数,通常是返回至某个函数的 plt 处或者函数的具体位置 (即函数对应的 got 表项的内容)。一般情况下,我们会选择执行 system("/bin/sh"),因此我们通常需要找到 system 函数的地址。ret2libc通常可以分为下面这几类:程序中自身就含有system函数和"/bin/sh"字符串程序中自身就有s...

2020-02-15 21:54:20 4718 6

原创 基本ROP之ret2libc2

原理ret2libc即控制函数执行libc中的函数,通常是返回至某个函数plt表处或者函数的具体位置(即函数对应的got表项的内容),一般情况下我们选择执行system("/bin/sh"),故而我们需要知道system函数的地址过程下载地址:urlchecksecIDA分析gets函数system函数经计算gets字符串和ebp的偏移为108,这里不进行赘述查找bin/s...

2020-02-14 23:04:56 3578 7

原创 pwn学习(格式化字符串漏洞)

格式化字符串函数介绍格式化字符串函数可以接受可变数量的参数,并将第一个参数作为格式化字符串,根据其来解析之后的参数,通俗来说。格式化字符串函数就是将计算机内存中表示的数据转化为我们人类可读的字符串格式。一般来说,格式化字符串在利用时分为三个部分。格式化字符串函数格式化字符串后续参数(可选)Exampleprintf("my name is %s, age is %d.", "das...

2020-02-05 13:55:56 1848 2

转载 kaggle下载数据集步骤

一.前言在下载之余利用间隙时间来分享Microsoft Malware Classification Challenge (BIG 2015)数据集的获取。先前笔者在搜索引擎想得到获取方式的时候,几乎没有教程是特定于这个数据集的,于是想记录这个过程。二.准备1.安装kaggle库pip install kaggle2.注册登录kaggle账户https://www.kagg...

2020-02-01 18:13:13 6013 8

转载 PLT表和GOT表学习

GOT表和PLT表在程序中的作用非常巨大,接下来的讲解希望大家可以仔细看看我们用一个非常简单的例子来讲解,代码如下:图1然后我们编译我们直接 gdb./a.out 来进行反编译处理,然后通过disas main查看main函数中的反编译代码如下:图3我们可以观察到 gets@plt 和 puts@plt 这两个函数,为什么后面加了个 @plt ,因为这个为 PLT 表...

2020-02-01 18:06:34 556

网上图书商城

使用ssm框架搭建而成的网上图书商城的小系统,主体功能已实现,导入数据库,修改项目中数据库连接用户名密码后可直接使用

2018-07-15

css+js+jquery

css+js+jquery

2016-12-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除