nyyyddddn

nyyyddddn

xv6_and_unix_utilities
Xv6 and Unix utilities好哦,完成 mit 6.1810 2023 中 lab :Xv6 and Unix utilities了,准备开始下一章的学习了,xv6还是挺好玩的 sleep根据题目描述,和 user/ 中的其他程序的逻辑可以发现 命令行参数传递是通过 main的argc 和argv去传递的,其中argc 中存储着参数的个数,argv存储着参数名,没有参数的时候argc = 1,argv[0] = program_name。然后在 “user/user.h” 中有sleep 函数所以 只需要直接调用sleep函...
ciscn_pwn
gostack栈溢出,存在一个可以执行的命令的backdoor函数,用了下有些问题,就打ret2syscall了,栈上有一个strings结构体要伪造一下,syscall read到一个可以写的段,写binsh然后syscall execve getshell 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485from ...
hnctf_pwn
close关闭了标准输出流,直接cat /flag 1>&0就可以了 ez_pwn%s 泄露buf的地址后覆盖rbp栈迁移后打rop就好了,由于32位的调用约定,不能以连续的ret结尾的gadget去rop,然后system不能直接传binsh过去,得传;sh,所以read一次后重启main再调用system就好了 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970...
miniL2024_pwn
pwnottoshopida显示有些奇怪,修了一下,程序的逻辑是这样的,程序里还有一个backdoor,通过buy中的下界溢出去写binsh字符串,然后golden中的 scanf去写返回地址为backdoor就好了,scanf 如果输入数据的类型和formatstrings不匹配就不会写入数据,通过这种方式去绕过canary 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707...
中国海洋大学信息安全竞赛pwn方向wp
pwn摩登Pwn第一次做这种gui pwn,搜了一下是rbf协议,https://remoteripple.com/download/ 用这个远程连接软件连接和题目进行交互 程序的逻辑是,会将输入转成无符号整数,然后判断”符号位”是不是负数,如果是就输出flag,所以只需要输入4字节无符号整数能表达是最大范围4294967295 就能拿到flag 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656...
hznuctf
easycppstd::ios_base::width 这段代码设置了输入长度为96,buf距离rbp的距离为 0x90,不过 strcmp(s1, s2); 这里cmp成功的话走到后边cpy就会有一个溢出,程序存在一个backdoor函数,ret2text 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768int __cdecl main(int argc, const char **...
geekcon
pwnableMemo0有一个login函数,login success了会调用一个输出flag的函数 1234567891011121314151617181920212223242526272829unsigned __int64 login(){ unsigned __int64 v0; // rax size_t v1; // rax _BYTE *s1; // [rsp+8h] [rbp-38h] char s[40]; // [rsp+10h] [rbp-30h] BYREF unsigned __int64 v5; // [rsp+38h] [rbp-8...
尝试编译kernel和文件系统
learn about kernel pwn 尝试编译kernel和文件系统,使用qemu启动step1:make filesystem (compile busybox)https://ctf-wiki.org/pwn/linux/kernel-mode/environment/qemu-emulate/#_3 下载busybox编译 123456wget https://busybox.net/downloads/busybox-1.32.1.tar.bz2tar -jxf busybox-1.32.1.tar.bz2make menuconfig // 在Setting中把buil...
nkctf_wp
唉咱好菜,就出了两个题,后几题都没有思路 Maimai查分器子函数这里有一个格式化字符串和栈溢出漏洞,用格式化字符串泄露libc的地址和canary的值,然后打ret2libc就好了,打通后catflag发现没有权限,看了一下challenge文件,有suid权限,所以可以用libc中的setuid(0)函数提权,然后cat flag 123456789101112131415161718192021222324252627282930unsigned __int64 sub_19EA(){ char buf[8]; // [rsp+0h] [rbp-10h] BYREF ...
CyberApocalypse_2024_Hacker_Royale_wp
Delulu格式化字符串改低位两个字节就好了 123456789101112131415161718int __cdecl main(int argc, const char **argv, const char **envp){ __int64 v4[2]; // [rsp+0h] [rbp-40h] BYREF __int64 buf[6]; // [rsp+10h] [rbp-30h] BYREF buf[5] = __readfsqword(0x28u); v4[0] = 322419390LL; v4[1] = (__int64)v4; memset(bu...
avatar
nyyyddddn
快来和我贴贴qaq
FRIENDS
yuro shin