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

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打包的时候,可以这样演示一下,enhex的意思应该是以十六进制表示(第一个结果不用管)

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

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

主要用在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!

君莫笑系列视频学习(1)相关推荐

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

    这次视频讲解的是通过jmp esp布置跳到shellcode执行 pwn_by_example_7_b0verfl0w (jmp esp):https://www.bilibili.com/video ...

  2. mysql入门很简单系列视频-学习笔记

    mysql入门很简单系列视频-学习笔记 视频链接:mysql入门很简单系列视频 https://www.bilibili.com/video/av14920200/ 以前主要就了解DDL.DML.DC ...

  3. Android Performance Patterns 系列视频学习记录(持续更新中)

    系列文章旨在记录YouTube上谷歌发布的Android Performance Patterns系列视频,一共79个视频,每个视频也就几分钟.当然对于大部分安卓开发者来说,这些都是基础,可能你会说, ...

  4. 奋斗吧,程序员——第五十四章 坐拥美人君莫笑,古来征战几人回

    排除了诸多问题后,最终的不良率大概在千分之二左右,已经在行业惯例的千分之三以内. 但是Sharp要求千分之一,我将剩下的坏料逐个分析,最终又找到一个rom的问题,在成测里加上rom检测应该可以进一步提 ...

  5. Android音视频学习系列(五) — 掌握音频基础知识并使用AudioTrack、OpenSL ES渲染PCM数据

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  6. android 键编译,Android 音视频学习系列 (四) 一键编译 32/64 位 FFmpeg 4.2.2

    前言 2020/5/20 增加了硬件解码编译脚本 编译环境 Centos + NDK20b + FFmpeg4.2.2 + Android-21/16 2020/4/26 更新了编译 64 位脚本 编 ...

  7. Android音视频学习系列(七) — 从0~1开发一款Android端播放器(支持多协议网络拉流本地文件)

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  8. Android音视频学习系列(八) — 基于Nginx搭建(rtmp、http)直播服务器

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  9. Android音视频学习系列(九) — Android端实现rtmp推流

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  10. Android音视频学习系列(六) — 掌握视频基础知识并使用OpenGL ES 2.0渲染YUV数据

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

最新文章

  1. flux java_FluxJava 新增 RxJava2 的支援功能
  2. Nginx之rewrite使用
  3. 锦欣生殖获战略投资,华平、信银领投,红杉、药明康德跟投
  4. 计算机网络(二)-性能指标
  5. mysql 大量列 动态变量_aardio动态mysql变量设置
  6. Linux下命令行压缩照片或图片的脚本 (ImageMagick使用心得,convert,import,display实例)...
  7. Python办公自动化|光速对比并提取两份Word/Excel中的不同元素
  8. Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)
  9. 多任务学习Multi-Task Learning
  10. windows黑窗命令
  11. python能做什么软件?Python到底能干嘛,一文看懂
  12. java什么是继承_JAVA中什么是继承?
  13. Word 软回车和硬回车
  14. 码云推送代码后不显示贡献度
  15. linux环境下,geopandas 安装报错,显示Proj executable not found. Please set PROJ_DIR variable
  16. 利用ArcSoftFace做人脸识别-屏幕卫士 保护你的屏幕不被别人偷窥
  17. git pull 技巧
  18. echarts 仪表盘图展示百分比
  19. c语言中signal函数详细说明--举例
  20. Android手机实时视频监控

热门文章

  1. Canvas(画布)的使用
  2. Nmap下载和简单应用
  3. 网络安全与网站安全及计算机安全:如何下载到Windows各版本的Nmap网络扫描神器
  4. 边沿触发是什么意思_epoll 水平触发 边沿触发
  5. bzoj 3772 :精神污染 线段树+打标记 or 主席树
  6. 苹果电脑上不错的五款视频调色应用
  7. 解决ios微信端video全屏
  8. Self-Attention with Relative Position Representations(2018)
  9. 阿里P9大牛徒手编写的这份十亿级并发手册,教你彻底玩懂高并发,赶紧收藏
  10. 计算机视频的压缩方式,电脑压缩视频的方法图解步骤