19 Matching Annotations
- Nov 2022
-
blog.pepsipu.com blog.pepsipu.com
-
system calls like write fail silently
write fail silently
-
l->l_info[DT_JMPREL].d_un.d_ptr
用来寻找got的位置
-
LSB
多字节序列中最小权重的位
-
A ret instruction is not inserted at the end of the function body. It has a “cascading” property, where if a noreturn function is called at the end of another function, that function will also be marked as noreturn.
noretern
-
They’ll be at consistent offsets from each other! This is a byproduct of something known as mmap relativity
ld 和 libc 的间距每次都相等
-
-
blog.csdn.net blog.csdn.net
-
.idO 文件是一个二叉树形式的数据库 .idl 文件包含描述每个程序字节 的标记 .narn文件包含与 IDA 的 Names 窗口 中显示的给定程序位置有关的索引信息 .til文件用于存储与一个给定数据库的本地类型定义有关的信息
ida 产生的文件
-
-
blog.csdn.net blog.csdn.net
-
在nx保护开启的情况下,我们依然可以通过mmap来申请出一段有读写执行权限的内存,通常mmap(target_addr,0x1000,7,34,0,0),这里target_addr需要页对齐也就是0x1000的整数倍,若不对齐,申请到的起始地址将不是target_addr。
nx mmap 绕过
Tags
Annotators
URL
-
-
cloud.tencent.com cloud.tencent.com
-
ret指令用栈中的数据,修改IP的内容,返回代码段的第一条指令。相当于pop IP
ret 和 call
Tags
Annotators
URL
-
-
codeantenna.com codeantenna.com
-
用cyclic –l 0x62616164计算出偏移offset为112
pwndbg计算溢出量
-
-
ropemporium.com ropemporium.com
-
nm ret2win|grep ' t '
查看可疑的函数
Tags
Annotators
URL
-
-
ropemporium.com ropemporium.com
-
ome versions of GLIBC uses movaps instructions to move data onto the stack in certain functions.
movaps
-
-
-
在64位机中,%p 可以打印64位(理论上是64位,实际上目前是48位),%x 只能打印32位; 在打印指针变量的值(所指变量的地址)时,%p 能正确打印,%x 则只能打印后32位。
%p %x
Tags
Annotators
URL
-
-
www.jianshu.com www.jianshu.com
-
python的open函数的第二个参数为打开的模式,如rb,rt,这包括两部分,前一个字母表示以只读模式打开(r=read),第二个字母表示将内容识别成什么数据。b表示是2进制数据,t表示是文本数据。
open 函数
-
-
zhuanlan.zhihu.com zhuanlan.zhihu.com
-
虚拟地址的最大宽度是52位,且内核虚拟地址空间和用户虚拟地址空间的宽度相同,均为最大52位宽;不过更常用的位宽是48位
arm64虚拟内存寻址48位
-
-
blog.csdn.net blog.csdn.net
-
理解一下,字符串偏移7,所以payload为got偏移+%7$s,这边用’s而不是’p’,在于got表记录内容也是个指针,%s直接解引用,返回内容:got表偏移+真实地址,所以 u32(sh.recv()[4:8])
泄露got
Tags
Annotators
URL
-
-
iamayoung.xyz iamayoung.xyz
-
1.直接在.got.plt 节中拿到地址,并跳转2.当 .got.plt 没有所需地址的时,触发「链接器」去找到所需地址,并填充到.got.plt中,然后跳转
plt作用
-
-
blog.csdn.net blog.csdn.net
-
动态链接时,一个程序PLT表中的内容始终不变,仅在程序加载时修改GOT表中的内容。PLT表中的每个表项指向对应函数在GOT表中的地址(偏移),每次加载程序都相同。程序加载后GOT表中的每个表项保存的是函数在共享区的绝对地址,每次加载都不相同。
got plt 加载
Tags
Annotators
URL
-
-
www.cnblogs.com www.cnblogs.com
-
顺便提一下,golang是比较安全的,它会先读入一定数据,然后把数据根据size拷贝给对应地址,所以只要size不出什么问题,基本不会存在溢出的。 我们要走到这个漏洞点,就需要先打通前面的Bulls and Cows猜数游戏,在之后给的菜单中选择Exit,然后读入一串rop链,走execve()来getshell即可。
go pwn的思路。
Tags
Annotators
URL
-
-
www.mrskye.cn www.mrskye.cn
-
64 位中只有 fini_array [0] ,没有 fini_array [1] ,也就是只能运行写入 fini_array 一次,然后就正常退出了。无法像静态编译那样重复调用。
fini_array利用,动态静态区别
-