9-6(8-5)学习打卡(6.23)
Posted 水番正文
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了9-6(8-5)学习打卡(6.23)相关的知识,希望对你有一定的参考价值。
昨天属实很难受,三点多才睡着,第一二节课眼睛好酸,现在第四节课又在帮别人解决几年前学习的东西,不过这次做的热水沸腾(关于一个权限没改导致的运行不成功)--6.23
6.23 To do list:
1.每日Pwn学习
2.算法导论看的开心
3.CPP前四章 校对题
一:每日Pwn学习
64位调用shellcode
64位shellcode流程
几个需要注意的细节:
1.rax是调用3b
2.rdi传参细节,首先xor清零,第二压入堆栈,第三讲/bin//sh赋值到rdi,再压入堆栈,最后将rsp地址给rdi
现在栈的数据是0x2f62696e2f73680,小端存储第一步和第二步的目的是最后的值0截断,以防后面的数据连续读
3.syscall
先来回顾一下64位的shellcode
64位的文件是靠栈传参
如这个函数就是靠这个三个函数传参
system函数是rdi传参
后八位(4个字节)或栈前面四个字节
python字符窜截取
gets_addr = u64(p.recvuntil("\\x7f")[-6:].ljust(8,"\\x00"))
意思是 接收直到\\x7f再往前读取6个字节,18xbPq,但6字节不够所以补充到八位,不够用的字符用\\x00补
exp!
成功获取shell!
二:算法导论看的开心
看的开心
三:CPP
完成校对一到四章复习题校对,解决人 工 智 能
今天肚子又稍微好了一点点,拖着三个多小时睡眠疲倦的身躯,九点准时下班。(今天想打麻将
以上是关于9-6(8-5)学习打卡(6.23)的主要内容,如果未能解决你的问题,请参考以下文章