- 博客(4)
- 收藏
- 关注
原创 浏览器安全
加载了b.com上的b.js,但是b.js是运行在a.com页面上的,因此对于当前打开的页面(a.com页面)来说,b.js的Origin就应该是a.com而非b.com。是一种约定,是浏览器最核心也是最基本的安全功能,影响“源”的因素有:host(域名或IP地址,如果是IP地址则看做一个根域名),子域名,端口,协议。
2023-05-15 22:48:20
102
1
原创 ret2xx
其主要思想是在栈缓冲区溢出的基础上,利用程序中已有的小片段(gadgets)来改变某些寄存器或者变量的值,从而控制程序的执行流程,所谓gadgets就是以ret结尾的指令序列,通过这些指令序列,我们可以修改某些地址的内容,方便控制程序的执行流程,ret2text即控制程序本身已有的代码(.text),其实,这种攻击方法是一种笼统的描述,我们控制执行程序已有的代码的时候也可以控制程序执行好几段不相邻的程序已有的代码(也就是gadgets),这就是我们所要说的ROP。我们可以寻找到gadges,poprdi;
2023-04-02 23:31:32
168
原创 栈溢出基础
函数调用栈是指程序运行时内存一段连续的区域。用来保存函数运行时的状态信息,包括函数参数1与局部变量等。称之为栈是因为发生函数调用时,调用函数(caller)的状态被保存在栈内,被调用函数(callee)的状态被压入调用栈的栈顶 在函数调用结束时,栈顶的函数(callee)状态被弹出,栈顶恢复到调用函数(caller)的状态 函数调用栈在内存中从高地址向低地址生长,所以栈顶对应的内存地址在压栈时变小,退栈时变大。 函数状态主要涉及三个寄存器——esp,ebp,eip。 eip用来存储函数调用栈的栈顶地址,在压
2023-03-27 20:06:44
81
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人