摘要:
函数调用 X86下,遵循被调用者使用规则,函数在调用子函数之前,保存相关寄存器的内容。 函数调用时,参数先入栈,接着为返回地址入栈,BP寄存器入栈、再接着就是子函数的局部变量之类的了。 常用寄存器 栈帧结构 函数调用时栈帧结构 阅读全文
摘要:
花指令是什么? 花指令是在代码中插入的不影响程序运行的垃圾指令(脏字节),让编译器无法反编译,起到混淆代码的作用。 高质量学习链接: https://bbs.kanxue.com/thread-282725.htm 阅读全文
摘要:
https://ctf-wiki.org/pwn/linux/user-mode/stackoverflow/x86/basic-rop/#ret2libc 1. 有system有binsh 这种好弄,直接 from pwn import * sh = process('./ret2libc1') 阅读全文
摘要:
https://blog.csdn.net/sinat_26472165/article/details/85342766 JEPG的SOF0图像基本信息-帧结构 FFC0-SOF0-图像基本信息 同样的,0011指示了SOF0块长度为17个字节。 前8个字节分别为: 字节数 示例中的值 示例中的含 阅读全文
摘要:
1.NotEnoughTime 这道题我发现存在网络问题可能会导致出现问题,建议关闭代理。 第二个就是要注意每个算式返回整数 点击查看代码 from pwn import * import math context.log_level='debug' p = remote('127.0.0.1',1 阅读全文
摘要:
学习地址:https://websec.readthedocs.io/zh/latest/vuln/ssrf.html 例题:【Moectf2024】ImageCloud前置 题目给出url后面有个?url=, 貌似是一个很经典的漏洞, flag在/etc/passwd里。 故构造http://12 阅读全文
摘要:
题目地址:https://www.nssctf.cn/problem/4546 主要思路: 利用Pwntools发送字节码调用执行execve("/bin/sh", NULL, NULL)实现 要点: 一定要添加context.binary = './shellcode' 解释:pwntools的一 阅读全文
摘要:
1. 使用cat指令 cat flag 2.使用重定向 echo $(<flag) <flag:这里使用了文件重定向操作符 <,将文件 flag 的内容直接读取为标准输入,输出的就是文件的完整内容。 $(...):这是命令替换操作符,它会执行括号中的命令,并将执行结果替换为这个命令的输出内容。在这个 阅读全文
摘要:
加壳是什么? 程序保护机制,保护程序不那么容易呗逆向。 upx是一种开源的压缩壳软件 命令行执行: 加壳:UPX + sample.exe 脱壳:upx -d sqmlp.exe(一般不管用) 手动脱壳 1.找到原始程序的入口地址(OEP) 2.在原始程序入口地址处设置**硬件断点**(下次调试可快 阅读全文
摘要:
IDA打开,查看func()函数,得到以下代码 点击查看代码 unsigned __int64 func() { size_t input1[6]; // [rsp+Ch] [rbp-84h] BYREF char nptr[72]; // [rsp+40h] [rbp-50h] BYREF uns 阅读全文