无符号和有符号整型 数据元素类型:unsigned(无符号整型) C语言中,无符号整型数是不带正负表示符号的整型数。C语言在计算机里编译时数都是用二进制表示的,如果最左边这一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整型数。 unsigned a=-6; printf("%u…
刷题多了对寄存器开始有着一定的了解了,这篇文章就来总结一下。 六十四位汇编 当参数少于7个时, 参数从左到右放入寄存器: rdi, rsi, rdx, rcx, r8, r9。 当参数为7个以上时, 前 6 个与前面一样, 但后面的依次从 “右向左” 放入栈中,即和32位汇编一样。 参数个数大于 7 个的时候 H(a, b, c, d, e, f,…
mprotect函数详解 在Linux中,mprotect()函数可以用来修改一段指定内存区域的保护属性 函数原型如下: #include <unistd.h> #include <sys/mmap.h> int mprotect(const void *start, size_t len, int prot); mprot…
这道题有两种解法,特地记录一下。 题目分析 先看保护,就只开了个NX保护 main函数很明显的栈溢出 字符串搜索出flag字段,点进去ctrl+x追踪过去 解题思路 思路一 这题在get_secret函数中通过fopen将flag的内容读入了unk_80CF91B中,我们通过查找可以在程序中发现write函数,通过write函数可以读取出bss字段…
今天刷题的时候又学到个东西,这道题可以直接栈溢出到getflag的位置,然后拿到flag。 payload from pwn import * context.log_level = 'debug' p = remote("node4.buuoj.cn",26382) payload = b'a…
简单介绍 Format String漏洞 即格式化字符串漏洞 具体详解可以看这篇文章 详谈Format String(格式化字符串)漏洞:https://www.cnblogs.com/0xJDchen/p/5904816.html %d 用于读取10进制数值 %x 用于读取16进制数值 %s 用于读取字符串值 %n 用于讲当前字符串的长度打印到v…
前言 ret2libc 应该是栈溢出里面的一个难点了,在这点上也卡了很久,现在做个学习记录 ret2libc 思路 ROPgadget --binary ./ciscn_2019_c_1可以查看文件拥有的gadget。 一般在溢出的时候都需要用到pop rdi;ret来控制puts从而控制输出,如果是系统版本大于等于ubuntu18的话还会需要用到…
今天在做一道sql注入题的时候在查看sql用户发现用户是root,这就给了我们操作空间,那我们知道有一个load_file()函数可以利用绝对路径去加载一个文件,于是我们利用一下 load_file(file_name):file_name是一个完整的路径,于是我们直接用flag的路径去访问一下这个文件就可以直接拿到flag
一、报错弹窗 这个错误是由于vmware和微软的Hyper-V冲突导致的报错,如果想要解决就必须要关闭hyper-v 二、关闭Hyper-v的方法 这里我提供一个bat脚本,只要用管理员身份运行,执行结束之后重启电脑即可解决问题 下载地址:http://oss.yiyunblog.top/%E5%85%B3%E9%97%ADHyper-V.bat
这篇文章只是记录一下在禁用了R指令也就是reduce方法的情况下如何进行pickle反序列化 R指令不可用的情况下还能用i指令和o指令 i b'''(S'whoami' ios system .''' o b'''(cos system S…