君莫笑系列视频学习(1)

今天看四个视频好了,全部看完有点难。。。

pwn入门系列0,1,2和逆向基础速成

 

pwn入门系列-1-pwn基础知识

https://www.bilibili.com/video/av14821631/?spm_id_from=333.788.videocard.2

 

第一讲,开!

Linux环境下常见漏洞利用技术是君莫笑的资料,之前下载资料太多。。已经乱了

 

ida里面查看地址

1.在view里面找到对应的,然后空格键过去

2.Options-General-Line perfixes

 

ida的伪码里面有些变量定义是ida自己的,所以引入defs.h就可以编译运行了

shift+F12 查找字符串

 

p64

以后讲p64打包的时候,可以这样演示一下,enhex的意思应该是以十六进制表示(第一个结果不用管)

 

context.binary设置上下文,在当前的环境下,设置一些常见的变量。

例如,是32位的程序,就可以设置当前的上下文为32位

主要用在asm功能

asm

shell就是可以进行远程命令交互

一般context.binary=一个路径,就可以自动设置

 

context. log level= ' debug'

设置好后,以十六进制显示每次交互信息(因为有些字符不可见)

 

send就是发送一些数据

sendline就是发送完数据后还跟着一个换行符

recv就是受到一些数据

recvuntil就是一直接收数据知道受到括号后面的数据

 

asm可以把一段汇编代码编译成一段机器语言

disasm可以反汇编

先转成了机器语言,又转回了汇编语言

使用前要安装:Binutils

 

ELF是pwntools提供的一个模块,你存进去一个路径,可以生成一个ELF对象,对象可以方便的查看他的一些信息

 

cyclic在命令行里就可以用,生成100个字符,是32位的,生成的字符中,任意找一个都是独一无二的

这样拿它来覆盖的时候,报错,即可找到从哪一位开始覆盖这个返回地址

如果要在64的话,需要-context指定成64位的

 

pwn template可以生成一个exp的模板

if那块就是如果带了参数I,就启用debug模式,以此类推。。。。

 

步入是汇编步入

源码单步是C语言等步入

 

x/20wx 0x4005fe(x/查看的数量 方式 地址)

b一个字节一个

w四个字节一个

g八个字节一个

x指代十六进制

 

hexdump也可以查看内存,后面有可以见字符串

 

 

如果(0xe80040084abfffff)还是一个值,它可以自动兼用

 

rop帮助我们利用程序的一段代码

一小段程序中已经存在的汇编代码

 

 

一般需要程序静态链接(statically linked),才直接生成rop链

ROPgadget --binary pwn2 --ropchain

自动生成一连串的链

自动生成后,只要把返回地址,覆盖到第一个地址(0x0806ed0a),它就可以直接获取到shell

 

查看本地文件的库版本:ldd 文件名

查看服务器上的库版本:libcdb.com或者Libc-database

 

可以查看程序的各个表,有偏移地址,有符号名

第1讲done!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书文的学习记录本

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值