- 博客(23)
- 收藏
- 关注
原创 pwn学习
首次调用会先在got表中找到函数的地址 在下次调用时直接在plt表中直接调用函数执行。get flag函数 发现不可执行 堆栈不平衡 需要找到exit函数 让他恢复平衡。exit地址是0x0804E6A0(exit函数是为了保持堆栈平衡)get flag地址是0x080489A0。这里plt表保存的真实的地址。32位 堆栈不可执行保护。get溢出是0x38。mprotect函数。
2024-02-21 12:20:04
368
原创 pwn的习题
F5 查看一下伪代码,在main函数中看到了gets函数 可以进行栈溢出,上面定义数组s可以存储15。在main函数中看到fgets,s的偏移量是60,再加上4,64位加上flag地址就可以返回。找到main函数,F5查看伪代码 然后发现gets漏洞,同时溢出为64。main函数中说当var的第13位是17 就可以访问到bin sh。32位 不可执行保护 地址随机化保护 栈保护。32位 不可执行保护 部分重定位保护。空格查看地址,地址为0x40118A。先查看一下文件保护 发现是64位。
2024-02-20 17:20:36
355
原创 buuctf前四题学习
居然打开了,但是可以看到这个txt需要密码,根据它文件名的提示,我们知道这是一个4位数的密码,于是用Ziperrllo暴力破解密码。下载题目附件之后,得到了一个exe文件,准备打开这个exe,却发现打不开 用PE查一下。发现并不简单,类似于base64,但是又有图片。利用QR Research工具,扫描得到了一个不是flag的信息。得到密码7639,然后打开txt,得到flag。发现并不是exe文件,用winhex打开。解压之后得到了一个png的二维码图片。下载附件之后,得到一个gif动图。
2024-02-01 10:45:16
341
原创 pwn学习
栈帧也是一种栈,(stack frame),他是用来存储调用函数过程中的一些参数,返回值等,栈底的地址最高,用ebp来表示(extended base pointer)栈顶的地址最低 用esp来表示,在栈顶与栈底之间就是栈帧,每次调用一个函数就会形成一个栈帧,调用者叫caller,被调用者叫callee,我们需要在被调用者返回后ebp和esp的值与调用前一致,我们要用栈来保存这些数据。然后esp会下移以为,因为地址从高到低,所以后移就是上移,这样esp就到了主函数的最下面!
2024-02-01 10:09:32
342
1
原创 逆向的一些知识
字节:8个bit位,2的8次,255,一个汉字2个字节,2汉字(32位),4汉字(64位),寄存器 RAX(64)-EAX(32)-AX(16)-AH(8)-AL(8);大端序排列:内存增长的方向排序;(A B C D)小端序反过来(D C B A);EBP栈底 EBP栈顶 (后入先出) 栈是真实的数据变化过程。mov: 执行复制指令(后面的赋给前面会在右上窗口看见哦)左上:地址段——字节码——汇编指令。push :执行压到栈里的命令。堆是由低地址向高地址增长的。
2023-12-24 19:16:05
316
1
原创 栈 帧初步了解
/将% esp 的值赋给% ebp ,使新的% ebp 指向栈顶 movl -12(% esp ),% esp;第二,将返回地址压入栈中。这两件事都是调用者负责的,因此压入的栈应该属于调用者的栈帧。我们再来看看被调用者,它也做了两件事情:第一,将老的(调用者的)% ebp 压入栈,此时% es p 指向它。栈帧其本质就是一种栈,只是这种栈专门用于保存函数调用过程中的各种信息(参数,返回地址,本地变量等)。栈帧有栈顶和栈底之分,其中栈顶的地址最低,栈底的地址最高, SP (栈指针)就是一直指向栈顶的。
2023-12-24 19:13:38
15
1
原创 密码11111
2. base16:0-9 A-F进行编码 base32:A-Z 2-7进行编码 base36:A-Z 0-9 base91:0-9 a-z A-Z 一堆符号 base100由一些表情组成。3.base64解码原理:字符转化成ASCII码值,在转换为2进制数,(8位),6位一组查找索引得到base64的编码;大写字母 小写字母 =(特殊符号) 数字 (可能是base64:a-z 0-9 + = /)
2023-12-09 10:05:44
27
原创 upload
MIME验证 (上传的文件中通过content-type来进行验证 看你上传的文件是不是图片例如image/png)pass1是前端验证(上传文件非常快的弹出弹窗就是前端验证)相当于没有验证,因为能看到的都是可以改的。pass11:可以通过大小写绕过,也可通过更改文件名为pphpphp。通过bp抓包找到content-type这个验证,更改为图片类型。因为上传的是一句话木马,所以通过蚁剑来验证是否成功上传。通过抓包和改包就可以将文件成功上传。通过更改文件后缀名就可以上传成功。通过蚁剑连接成功说明上传成功。
2023-11-22 21:40:52
23
1
原创 simple_php
条件1是php弱类型的等于判定 在0与字符串进行比较时 会将字符串变成0,所以为真的情况下a可以取任意字符串。get传参输入a和b的两个值。条件2要注意b不能为数字。
2023-11-08 19:16:52
22
1
原创 攻防世界PHP2
首先使用bp抓包没有作用,接着在网站后面加入index.php也没有用,然后加入index.phps就有效果了!然后进行GET传参 注意要加原来的网址 然后是“?”在加admin的两次编码 因为代码前面写了id= 所以传参的时候也要写。phps的文件是存放php的源代码的 urldecode url解码 encode是编码的意思。这样输入依旧有问题,因为浏览器会将他进行解码,所以要编码两次。直接输入用GET传参admin则会报错。需要用bp将admin进行url编码。
2023-11-07 20:06:34
13
原创 攻击虚拟器永恒之蓝
首先要注意的是:在攻击之前,两台虚拟机要确定可以相互连接(通过编辑虚拟机网络适配器改成NAT模式,修改LAN区段)search ms17_010(搜索永恒之蓝)sudo su (通过这个进入主管理系统)(停止相ping的方式是ctrl+z)输入options查找是否有没有填的。没有问题后点击run 就可以进行攻击。msfconsole(msf控制)use 0(使用攻击系统)options 进行查看。
2023-11-01 23:07:51
33
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人