自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 ctf 密码基础

基本算法,选取一串英文字母,除去重复出现的字母,将剩下的字母逐个逐个加入 5 × 5 的矩阵内,剩下的空间由未加入的英文字母依 a-z 的顺序加入。若组内的字母相同,将 X(或 Q)加到该组的第一个字母后,重新分组。在每组中,找出两个字母在矩阵中的地方,1)若两个字母不同行也不同列,在矩阵中找出另外两个字母(第一个字母对应行优先),使这四个字母成为一个长方形的四个角。它与恺撒密码之间的区别是其密码字母表的字母不是简单的移位,而是完全是混乱的,解密时,我们一般是知道了每一个字母的对应规则,才可以正常解密。

2024-04-30 19:16:19 408

原创 栈迁移学习

参考资料https://blog.csdn.net/qq_38154820/article/details/106330238。

2023-02-20 19:27:22 195

原创 hijack GOT

这是main函数,起始的ask_username函数和ask_password函数应该就是检查登录的函数,可以看到当command = 2时执行put_file函数,command = 3时执行show_dir函数,command = 1时执行get_file函数(判断条件应该是ida解析的时候出现问题了,应该都没有“!在没有开启RELRO保护的前提下,每个libc的函数对应的GOT表项是可以被修改的。这个函数会有一次输入,让我们选择要打印的文件,并且打印出我们输入的文件内容,并且能够在最后看到很明显的。

2023-01-28 22:48:17 197

原创 使用格式化字符串漏洞绕过Canary保护(32位ELF)萌新篇

当启用栈保护后,函数开始执行的时候会先往栈里插入cookie信息,当函数真正返回的时候会验证cookie信息是否合法,如果不合法就停止程序运行。原理是在一个函数的入口,先从fs/gs寄存器中取出一个四字节(eax)或者八字节的rax的值存在栈上(最低位都是\x00),当函数结束是会检查这个栈上的值是否和存在去的值一致,若一致则正常退出,如果是栈溢出或者其他原因导致canary的值发生变化,那么程序就会执行___stack_chk_fali函数,继而保护程序。32位文件,开启了NX和Canary保护。

2023-01-15 22:40:44 454

原创 ctf pwn 萌新学习记录 基本rop(题目来自Wiki)

此后又发现在 secure 函数又发现了存在调用system(“/bin/sh”) 的代码,那么如果我们直接控制程序返回至 0x0804863A,那么就可以得到系统的 shell 了。我们控制执行程序已有的代码的时候也可以控制程序执行好几段不相邻的程序已有的代码 (也就是 gadgets),这就是我们所要说的 ROP。下面就是我们如何构造 payload 了,首先需要确定的是我们能够控制的内存的起始地址距离 main 函数的返回地址的字节数。发现错了(原因:IDE可能会把栈的长度测量错了)

2023-01-04 23:39:13 1316

原创 汇编语言学习

mov 寄存器/立即数 操作数用来指向一个执行所要使用源数据的值,放置结果的目的位置,mov 源操作数的值是一个立即数,值存放在内存或者寄存器中 目的操作数一个寄存器或者是一个内存地址。movq %rax,-12(%rbp) 8bytes 寄存器–内存l。movb $-17,(%rsp) 1bytes 立即数–内存。movb (%rdi,%rcx),%al 1bytes 内存–寄存器。下面有一点地址或寄存器的值,写出操作数的值。寄存器寻址%ra R[ra] (寄存器)

2022-12-12 11:56:41 1564 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除