CTF-scanf相关的漏洞详解
前言:比赛中往往会遇到很多零散的漏洞,对解题有十分大的作用,所以写一个文章来巩固一下
1、scanf("%u",&num);
如果题目存在数组越界,但是开了canary保护,可以通过输入带符号整数来绕过canary
如果输入带符号整数,可以不写入数据,scanf直接ret
例如:-456465、+12313
2、scanf("%d",&num);
如果题目存在数组越界,但是开了canary保护,可以通过输入负号来绕过canary
如果输入负号,可以不写入数据,scanf直接ret
例如:-
3、堆题构造libc地址
Ubuntu16.04在已经存在free的fastbin的时候输入0x401个数字,就可以在fastbin中写入libc,如果存在uaf漏洞,就可以实现libc leak
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 咲夜南梦's 博客!
评论