自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

个人笔记

做条咸鱼也能遨游大海

  • 博客(212)
  • 资源 (4)
  • 收藏
  • 关注

原创 buuctf(pwn)

一日一PWN/REpwn1_sctf_2016实践是检验真理的唯一标准。pwn1_sctf_20161.找到漏洞的利用点往往才是困难点。(直接F5看看反汇编)发现两个可以函数跟进去看看2.这里对反汇编出来的Vuln理解了半天(本还想从汇编直接分析,不过进展收获不大,欢迎有兴趣的朋友一起交流),下面还是从伪代码分析。通过这几行能看出最后A变成了B。即把YOU 换成了I。因为上面是S的溢出点是3C,可fgets之读取了32并不会超过3C,但函数会把一个32个I换成32个YOU就达到了溢出点。3.

2021-04-04 22:35:26 2667

原创 buuctf(re)

一日一re

2021-04-04 22:19:36 1174

原创 全网最硬核PWN入门_图解分析

PWN序Linux环境下的基础知识从C源码到可执行文件的生成过程程序的编译与链接什么是可执行文件可执行文件分类PE/ELFELF文件格式区分节和段的存储区域加载ELF / 查看节和段区分布命令段(segment)与节(section)程序数据在内存中的组织分布大端序与小端序存储关键寄存器静态链接与动态链接常用汇编指令intel 和 AT&T汇编格式序PWN知识只有不断的重复,实践才能熟悉掌握。以下知识点以LINUX系统环境下为主要说明(Windows的会有点区别)。Linux环境下的基础知识

2021-04-03 09:54:50 6275

原创 02-独立按键控制LED状态

【代码】02-独立按键控制LED状态。

2023-07-02 20:51:14 248

原创 01-创建项目-工具使用备忘录

前连接单片机电源先关闭,再打开,否则会卡在如下。命名第一个主逻辑调用文件名为main。然后可以再main.c中编写代码。8051指令集:参考芯片型号。定时长度:视情况设置取值。不用自动生成启动文件。系统频率:参考开发板。

2023-06-29 22:46:49 234

原创 hitcontraining_magicheap-unlink

heaparray全局指针=0x6020C0;

2023-06-17 16:48:04 184

原创 wustctf2020_closed

直接getshell了,但是关闭了输出和标准错误输出。思路:文件描述符重定向。

2023-06-14 20:00:28 84

原创 jarvisoj_level1-ret2libc

利用的是pwntool模板自动搜索泄露地址匹配的libc版本。思路:无binsh,无system,考虑ret2libc。

2023-06-13 22:39:58 90

原创 [ZJCTF 2019]Login

根据输出Nope,猜测程序判断密码是否正确输出,即存在if…,回溯发现a1是参数v8,v8是password_checker(v3);输入正确即调用函数指针,因此找找看有没有。找到了后门函数,我们还需要看看。

2023-06-10 14:18:52 74 1

原创 ciscn_2019_s_4-栈迁移

思路:由于无直接getshell的利用函数,溢出空间只有8字节(ebp+ret占用无法继续填充ROP了),所以需要栈迁移更大的空间来构造ROP。栈迁移位置:执行函数+0xdeadbeef(假ebp)+0xdeadbeef(假ret)+参数。此栈帧迁移到s[40]数组的位置,先通过第一次打印泄露s[40]的起始地址。栈迁移核心(通过ROPGadget寻找。ebp位置:栈迁移位置-4(32位)ret位置:leave_ret。题目类型猜测:栈溢出,栈迁移。作用:赋值执行函数调用。

2023-06-07 20:36:33 665 1

原创 Hitcon 2016 SleepyHolder-fastbin_dup_consolidate.c

参考/题目下载:1,三联保护:基本都开了功能:0、唤醒功能;1、创建-secret:Big secret;2、清除-secret;3、修改-secret;2,IDA分析功能主函数:清除功能-free:这四个指针都是BSS段的地址。问题点:未检查free的指针是否为空;free后指针未至置为0;导致:可以double free而要想成功double free,仅一个fastbin的chunk不行。

2023-06-04 12:05:50 221

原创 how2heap-fastbin_dup_consolidate.c

malloc(largebin_chunk)后再次free(fast_binA)的时候,判断是不是double free仅仅根据从同一个大小的 fastbin中拿出第一个 bin,比较地址是不是相同,即free的fast_bin链中的地址,而我们的 chunk 早到 unsorted bin 中去了。利用malloc(largebin_chunk)把free(fast_binA)移动到unsorted bin中;再次free(fast_binA),即double free了fast_binA;

2023-05-27 22:07:54 213

原创 mrctf2020_easyoverflow

分析:a1=v5,check(v5)=1的前提是for循环正常退出,即v5=n0t_r3@11y_f1@g。分析:gets(v4)溢出点,check(v5)=1则执行system();思路:通过v4溢出覆盖控制v5。

2023-05-25 23:24:25 119

原创 CTF 2015: Search Engine-fastbin_dup_into_stack

参考:[1]https://gsgx.me/posts/9447-ctf-2015-search-engine-writeup/[2]https://blog.csdn.net/weixin_38419913/article/details/103238963(掌握利用点,省略各种逆向细节)[3]https://bbs.kanxue.com/thread-267876.htm(逆向调试详解)[4]https://bbs.kanxue.com/thread-247219.htm(双解法)1,三连2

2023-05-24 21:04:15 757

原创 0ctf_2017_babyheap-fastbin_dup_into_stack

参考:题目下载参考[1]通过pause()构成一个断点。本人尝试的其它方式都无法在payload中下断成功。如有知道的师傅欢迎在评论区分享。

2023-05-19 00:18:55 417

原创 wustctf2020_getshell_2

原因:由于system需要调用构造栈上布局参数,所以必须得通过call来实现ESP的变化匹配栈布局。system地址0x08048529。

2023-05-15 20:39:22 108

原创 how2heap-fastbin_dup_into_stack.c

伪造fake的chunk,区别于mem(指向写入数据地址指针),sizeof(d)直接写8也行(64位下)

2023-05-14 22:26:56 45

原创 how2heap-fastbin_dup.c

不同libc版本的fastbin_dup.c源码有点小区别:主要是有tcache的,需要先填充。double free的chunk不能是头结点,需要利用一个中间替换头结点;有tcache先malloc(8)*7,在free掉7个占满tcache;优先分配-用malloc(8)的大小即可free后占用。头结点不能同时free两次。

2023-05-13 23:56:47 304

原创 bbys_tu_2016

思路:ret2text。

2023-05-12 22:03:59 55

原创 xdctf2015_pwn200

依据:./bof的执行为见堆malloc特征,虽然未出现segment fault,可能是输入数量不够。思路:write泄露libc,ret2libc类型。3,IDA分析寻找利用点。思路:猜测是溢出题。

2023-05-11 19:48:09 157

原创 cmcc_simplerop

int80(11,“/bin/sh”,null,null),后面的四个参数分别是eax、ebx、ecx、edx。由于未开启PIE,我们利用simplerop中的read()函数写入bss段。2、ROPgadget找寄存器。偏移:0x14+4(错误)

2023-05-08 21:03:06 117

原创 how2heap-calc_tcache_idx.c

否则CHUNKSIZE = (x + SIZE_SZ + MALLOC_ALIGN_MASK) & ~MALLOC_ALIGN_MASK);判断是否是属于tcache index,当计算chunk的idx公式的结果大于63时,即不为tcache。x + SIZE_SZ + MALLOC_ALIGN_MASK < MINSIZE(0x20) 时,则CHUNKSIZE = MINSIZE (0x20);

2023-05-06 22:15:58 54

原创 how2heap-first_fit.c

malloc(size)中size小于已被free的chunk_size即可达成UAF。2、chunk足够大,fastbin也行;最终效果:修改c即修改了a。1,ubuntu16编译。1、空闲chunk;

2023-05-06 21:34:42 50

原创 picoctf_2018_buffer overflow 2

参数a1=0xDEADBEEF+参数a2=0xDEADC0DE。

2023-05-05 21:42:40 72

原创 jarvisoj_test_your_memory

需要正常结束程序(执行cat flag后hint中才有内容),所以调用system之后再调用main打印hint,即flag。没有/bin/sh,但是存在cat flag,同样可以用作system的参数。有system,无/bin/sh,但有cat flag。存在栈溢出,可以进行溢出调用system。

2023-05-02 14:57:36 133

原创 inndy_rop

无法利用libc,所以利用rop构造系统调用。生成一键getshell的rop片段组合。单纯溢出,无直接利用点。

2023-05-01 17:07:32 158

原创 hitcontraining_uaf

8字节填充(利用点之一)=print_note_conten函数地址+print_note_content内容地址;例如一次add_note(),notelist[0]=&print_note_content。关注点:0x804b158[3] = node[0]= 0x080485fb等会被改写。一次add_note()malloc了两次,地址被notelist[]数组保存;notelist[]属于bss段全局变量,存储chunk。基本信息:x86-32-el,堆题思路;保护:Partial RELRO。

2023-04-28 22:19:19 748

原创 picoctf_2018_buffer overflow 1

【代码】picoctf_2018_buffer overflow 1。

2023-04-26 22:22:40 86

原创 [ZJCTF 2019]EasyHeap-patchlibc-调试

后面只用关注伪造的fd地址0x6020C8即可,也即是heaparray_addr - 0x18。heaparray_addr = malloc(chunk0)这里获得的就是&chunk[0];1、伪造chunk[2]=[全局地址-3];chunk[3] = [全局地址-2]通过修改chunk[3]的值 ->控制 &chunk[0] ->4、给任意地址填入内容,chunk[0] = [任意内容]3、填入控制任意地址,chunk[3] = [任意地址]chunk[3] ->实现[任意地址]写。

2023-04-25 23:56:51 506 1

原创 [Black Watch 入群题]PWN-栈迁移

细节详情参考:https://blog.csdn.net/mcmuyanga/article/details/109260008。buf溢出栈空间只有0x20-0x18=8字节无法构造rop,所以需要利用栈迁移技术,迁移到bss上构造rop。bss栈布局:(左边是第一泄露Libc构造栈帧,右边是第二次重写获取shell的栈帧)改变思路:由于此程序没有可直接ret利用的函数同时溢出空间很小,所以需要。栈迁移操作:构造好栈中ebp新位置。思路:ret2shellcode。栈迁移关键指令:leave。

2023-04-20 22:47:33 366

原创 mrctf2020_shellcode

RELRO: Full RELRO完全没起作用,直接构造shellcode输入即可。

2023-04-19 19:35:03 217 1

原创 [网鼎杯 2018]Fakebook

1,网页访问内容2,join功能自动跳转:查看源码:这里使用了伪协议获取数据。收集信息:可通过伪协议读数据2,观察url特征,尝试sqli出现报错,大概率存在sqli,但感觉得绕过,先做个目录扫描多收集点信息。收集信息:web目录路径3,robots.txt文件发现信息直接可以把user.php.bak下载下来,内容如下:直接审计一波。

2023-04-15 21:55:29 363 1

原创 bjdctf_2020_router

思路:ping看看是否能绕过,命令拼接。

2023-04-15 13:21:18 71

原创 pwnable_orw-seccomp沙箱

但是,并不是所有的系统调用都被需要,而且不安全的代码滥用系统调用会对系统造成安全威胁。seccomp安全机制能使一个进程进入到一种“安全”运行模式,该模式下的进程只能调用4种系统调用(system call),即 read(), write(), exit() 和 sigreturn(),否则进程便会被终止。还能调用o(open)/r(read)/w(write)功能,题目orw的提示就是这样来的!输出flag文件内容,sys_write(1,file,0x30);手动生成读取文件shellcode。

2023-04-11 20:18:13 724 1

原创 bjdctf_2020_babyrop2-fmt-leak canary

这使得参数可以输出多次,使用多个格式说明符,以不同的顺序输出。本地libc下载:https://github.com/Yeuoly/buuctf_pwn/tree/master/bjdctf_2020_babyrop2。printf(“%p”, a) 用地址的格式打印变量 a 的值,printf(“%p”, &a) 打印变量 a 所在的地址。思路:aa相当于定位标识,format在格式化假参数6的位置,所以构造成。2,IDA静态分析,查看可以泄露canary的地方,否则只能爆破了。canary的位置:即。

2023-04-10 18:42:00 401

原创 [CISCN2019 华北赛区 Day2 Web1]Hack World

思考:这里如果对访问次数加以限制就很难爆破盲注突破了。2,burp测试黑名单关键字。思路:大概率得盲注了。

2023-04-08 21:47:30 174

原创 jarvisoj_level4

思路:ret2libc,泄露_write来获取Libc基址。3,IDA静态查看是否有ret利用点。

2023-04-08 14:44:07 129

原创 wustctf2020_getshell

file+checksec+执行。思路:ret2sys。

2023-04-07 23:21:22 71

原创 jarvisoj_level3_x64

思路:ret2libc,程序中含有write函数,我们泄露plt_write地址用来计算libc_base。小端序,取后四个字节计算偏移。用ldd查看libc。

2023-04-05 19:03:42 168

原创 [GYCTF2020]Blacklist

发现flag列,推测其应为flag,尝试获取内容,但是因为select被限制,查了一些资料了解HANDLER语法可以绕过select限制。没有限制关键字show,通过堆叠注入查看库名。2,利用Burp测试过滤关键字。handler句柄使用知识点。

2023-04-05 11:44:34 42

honeyd1.0资源打包

centos7_x86

2022-02-15

honeyd1.5打包资源搭建

ubuntu20.04+honeyd1.5打包资源搭建

2022-02-15

Cisco Packet Tracer 6.2sv模拟器

Cisco Packet Tracer是由Cisco公司发布的一个辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了网络模拟环境。用户可以在软件的图形用户界面上直接使用拖曳方法建立网络拓扑,并可提供数据包在网络中行进的详细处理过程,观察网络实时运行情况。可以学习IOS的配置、锻炼故障排查能力。Cisco Packet Tracer补充物理设备在课堂上允许学生用的设备,一个几乎无限数量的创建网络鼓励实践,发现,和故障排除。基于仿真的学习环境,帮助学生发展如决策第二十一世纪技能,创造性和批判性思维,解决问题。Packet Tracer补充的网络学院的课程,使教师易教,表现出复

2020-11-28

delphiQQ聊天窗体+登录界面跳转

分享给更多的朋友们学习,希望大家能从中学习借鉴而不是copy,此项目只是一个简单的样式供大家学习,想拥有更多丰富的功能可以自己在此基础上完善。

2020-05-12

空空如也

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

TA关注的人

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