自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RCE小练手

正常情况下是一次一次自增,直到构成POST,但这显然会超过150的payload限制。wp的方法,用数组变量名拼接一个空字符,变成字符串类型 --> $_=$_.''$_=$_['@'=='&'] //'@'=='&'是错误的,返回0。到这里就不会做了,两个超链接都是跳转到正常的网页,源代码也没看到什么。要通过一定的方法,使$_返回Array,一般用$_="$_"所以我们可以拼接成CHr,CH来源于自增,r来源于Array。最后构成$_GET[1](_GET[2])$_=[] //构造名为_的空数组。

2025-04-15 20:49:08 400

原创 RCE漏洞学习

在CTF(Capture The Flag)竞赛中,RCE漏洞指的是这类漏洞允许攻击者通过某种方式在目标系统上执行任意代码,从而完全控制目标系统或获取敏感信息。RCE漏洞通常是非常严重的漏洞,因为它们可以直接导致系统被攻陷。

2025-04-12 22:34:32 1004

原创 文件上传做题记录

直接上传php再试一下phtml用蚁剑连发现连不上那就只要命令执行了。

2025-04-10 22:45:59 348

原创 文件上传漏洞原理学习

文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。“文件上传” 本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。这种攻击方式是最为直接和有效的,所以我们需要思考的是如何绕过检测和过滤。

2025-04-09 23:25:50 1236 1

原创 sql做题记录

传入单引号引发sql注入报错并且发现字段数为3查回显,可以用联合注入。

2025-04-01 23:04:55 293

原创 sql注入的几种常见方法

对于报错注入其实就是在基本的sql注入上套了个函数壳,主要就是要熟悉格式和payload可见,时间盲注与布尔盲注同样麻烦,难的不是原理,而是过程,所以最好用脚本跑UA头注入用于会对UA头检查的网页,而且通常是利用UA头错误构造报错注入,还需要注意末尾的闭合,因为ua头检查可能在前面。

2025-04-01 20:49:20 886

原创 SQL注入原理

至此,一道基本的sql注入就完毕了,至于post类与get一样,只用将参数用post传参即可.sql注入的程序查字段-查回显-爆库名-爆表名-爆字段名-爆字段。

2025-03-31 21:03:57 871

原创 PHP语言学习笔记-补充

关于这类变量,可以用一个实例来看声明一个对象类要用到class关键字这里的this是一个特殊变量,相当于一个指针,作用是访问指向的对象的属性比如 $this->color就是访问当前对象(object)的color属性所以 $this->color=$color 就是将函数中传入的参数color赋值给对象中的color属性后续的$herbie=new Car("white")就是创建一个新的Car对象实例,并给该对象传参为"white",用变量herbie存储这个对象。

2025-03-28 23:47:33 247

原创 PHP语言学习笔记

PHP,全称Hypertext Preprocessor(超文本预处理器),可以包含文本,HTML,CSS一起使用。

2025-03-27 22:27:50 691

原创 Ret2libc

got表,即全局变量表它用来存放外部函数地址plt表,即程序链接表用来存放额为代码都知道写好的c源码是不能执行的,因为它还要经过编译,汇编,链接后才能生成可执行文件。而链接方式一般分为静态链接和动态链接两种方式,通过连接器链接。链接简单说就是把代码需要的库导入到内存地址中,把不同的函数链接起来并经行地址和空间的分配,符号绑定和重定位。而静态链接是对于每个独立的函数,都导入一份库。这样如果多个函数都同时用到一个函数库时,就会重复的将这个函数库复制很多次,造成空间的浪费。

2025-03-24 20:35:01 603

原创 Ret2syscall(超详细)

(System Call)是操作系统提供给应用程序的接口,允许应用程序请求操作系统内核执行某些特权操作。由于操作系统内核运行在更高的特权级别(如x86架构中的),普通应用程序(运行在)无法直接访问硬件资源或执行某些敏感操作(如文件读写、进程管理、网络通信等)。因此,应用程序需要通过系统调用来请求内核完成这些操作。我用自己的话说就是设置对应寄存器的值,达到调用系统函数的过程下面是对应的系统调用表Linux X86架构 32 64系统调用表_32位 syscall-优快云博客。

2025-03-23 01:48:00 1070

原创 栈的工作过程

这里也是栈溢出最重要的地方,因为eip指向的是下一个命令执行的地址,这个时候我们溢出并将它覆盖为shellcode或者后门函数地址就可以拿到shell。首先,函数会从main()开始执行,而main中调用了func函数,其中的变量a,b会先行逆向入栈。然后将之前ebp的值压入栈内,并将ebp移动到esp处,形成新的ebp。用汇编语言看,首先会重置栈,然后esp-10h,用于获取栈的基本空间。首先,将call func的下一条指令的地址作为返回地址,并压入栈内。之后esp会再次下移,形成func的栈空间。

2025-03-22 22:55:38 272

原创 ret2shellcode

ret2shellcode,即控制程序执行 shellcode代码。shellcode 指的是用于完成某个功能的汇编代码,常见的功能主要是获取目标系统的 shell。一般来说,shellcode 需要我们自己填充。这其实是另外一种典型的利用方法,即此时我们需要自己去填充一些可执行的代码,然后通过利用,让程序调到shellcode的地址后去执行(这是网上随便复制粘贴的)要我来看就是我们写入的内容能被存储在栈以外的地方,通过恶意构造数据并修改返回地址到恶意数据所在的地址,执行命令并获取权限。

2025-03-22 17:10:39 474

原创 Pwn 之 ret2text

今天在打一道给出后门函数,而且没有任何保护机制的pwn时,发现直接把后门函数地址拼上去打不对,而是执行后门函数中的勾选地址才行,所以总结一下此类题型。

2025-03-20 15:28:44 551

原创 何为栈对齐 Pwn

在平常做题时总是发现直接call后门函数会EOF。后面看wp中提到了栈对齐这个概念,现在就来看看怎么回事例题一个很简单的栈溢出+后门函数题但如果你直接call后门函数的话会直接EOF所以这是为什么呢这里先介绍一个经常出现于程序中搬运浮点数的指令MOVAPSMOVAPS是 x86 汇编语言中的一条指令,用于在 SIMD(单指令多数据)操作中移动数据。具体来说,MOVAPS。

2025-03-20 08:59:09 397

原创 Python实现循环位移原理

这次考核做到的一个逆向题,用到了循环位移是哪一题呢?——《源码?启动!里面有这样的代码当初完全没看懂这里是什么ai之后,<<的意思是左移x位(二进制),如图x<<5就是左移5位比如1000 1110左移5位后1100 000,右侧补0当时我就在想,怎么将他还原为它原来的值就尝试将它位移回去后,将改变的位一一替换为1或0并解出可以显示的字符,然而这种方法计算量又大,还可能出错但我去问ai这个解密脚本怎么写,ai直接给出了位移回去的操作,这让我百思不得其解。

2025-03-15 22:38:57 930

原创 Pwn调试

这里我用的是gdb中的一个插件,pwndbg具体下载安装教程可以去csdn上面找这个插件与gdb本身比起来更适合做pwn的调试,因为它会自动显示出汇编代码和栈还有寄存器情况。

2025-03-13 22:11:19 418

原创 汇编语言学习笔记

这里梳理一下为什么CPU执行retf时,是先IP后CS栈有一个后进先出的原则,而且空间地址是从高到低增长的,所以出栈时,它便从低到高增长所以会sp+2,而在之前的内容中,我们可以发现,在数据段上,,所以先出来的就是偏移地址,存储在低地址,而后出栈的就是段地址,存储在高地址。

2025-03-11 20:35:44 553

原创 汇编语言学习笔记

数据的处理有两个关键,从之前的学习中也体会到了。

2025-03-09 12:48:02 542

原创 汇编语言学习笔记

1,[bx]是什么呢与[address]类似,比如[0]表示DS段上偏移地址为0的内存单元那这不就是把偏移地址放在寄存器里面了吗?没看出有什么区别继续往下看2,loop是什么loop简单的说就像是python中的for循环,至于怎么用,下面会讲到3,定义描述性性符号()4,约定符号idata表示常量。

2025-03-08 22:03:48 798

原创 汇编语言学习

为什么要学汇编语言?因为最底层,机器能读懂的机器语言晦涩难懂,全是由01构成。而汇编语言是基于机器语言,通过助记符等让我们能更加容易编写语言。它离底层的机器语言最近,而其他高级语言python,java,C,C++等都是在其基础上来的。所以学好机器语言是十分重要的。

2025-03-07 18:36:41 948

原创 汇编语言学习笔记

栈的基本知识栈顶元素总是最后入栈,在出栈时又是最先出来(LIFO——Last in First out)

2025-03-06 22:29:23 821

原创 春季开学考复现

这题的py源码中其实有很多没用到的自定义函数和变量删完后剩下的才是有效的内容这里定义了一个函数redcoredage主要内容就是将传入的字符串先疑惑后位移操作,然后添加到Franxx列表中,最后base64加密返回这里的第一个坑就是base64加密,因为平常没怎么用过,所以可能这里会出错base64库的encode函数输入和输出都是bytes类型,不能是str类型而decode可以是bytes也可也是str类型,所以这一句。

2025-03-03 16:39:26 864

原创 pwn学习笔记之stack

之后caller函数调用结束,并继续调用下一个函数还记得最开始讲的cpu存储访问顺序吗?如果我们可以在一些危险函数get(),或者没有严格限制的read函数输入超过对应地址存储量的字符串,就可以覆盖掉返回地址,在函数调用结束时,返回地址就会被送入eip寄存器中,从而我们能够执行我们想要的动作。系统栈是由高地址往低地址增长的, 而数据的写入(局部变量)是按低地址到高地址的顺序写入. 如果程序没有对输入的字符数量做出限制, 就存在数据溢出当前栈帧以及覆盖返回地址的可能, 从而实现控制程序的执行流.

2025-02-25 22:16:34 790

原创 pwn学习笔记—程序装载与虚拟内存

我们之前加载程序所看到的内存视图并不是直接在物理内存上呈现的,而是在虚拟内存中因为物理内存的一些原因,不便于直接看见,所以操作系统会提供一个虚拟内存以供程序员查看虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存,而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。

2025-02-25 20:07:28 225

原创 PWN的学习笔记(前置基础)

pwn简单说就是一次hack可能用到的名词用于攻击的脚本或方案攻击载荷,需要发送的攻击数据调用攻击目标的shell代码。

2025-02-24 21:19:39 386

原创 大作业(登录网站)

在小皮中创建一个数据库然后访问phpmyadmin,这里php版本过高或者过低都会出错,我用的7.3.4然后输入密码访问数据库这里应该要用root账户访问,自己创建的数据库没有权限然后可以通过phpmyadmin创建数据库然后是创建表名然后就可以添加字段了字段添加完成后通过插入加入内容。

2025-02-23 17:22:03 358

原创 xss靶场记录

可以看到用户名显示在了url栏中,f12查看网页元素看一下这个test这种可以直接插入JavaScript的代码。

2025-02-23 10:05:02 825

原创 Pickachu靶场记录

对于简单的密码和用户,可以用字典暴力破解先随便输入用户名和密码,并用bp抓包(如果无法抓包,可以先查一下自己的ip地址,先访问自己的ip在近靶场)发送到测试器选中炸弹爆破,网上找一个密码字典最后发现admin 123456可以登录。

2025-02-21 21:44:46 967

原创 Upload-labs

第一段是function的意思是函数,定义了一个名为function的函数第二行进行了缩进,所以以下部分都是函数内容var的意思是把后面的变量限定为当前函数的变量,而不是全局变量GetElementByName是一种获取元素的方法document是一个全局对象,代表整个HTML或XML文档,用来访问和修改元素HMTL元素之后是一个if的条件判断,检查file变量是否为空,如果为空就会输出请选择要上传的文件并结束函数,返回错误值然后在定义了一个allow_ext和ext_name。

2025-02-15 01:37:51 1217

原创 Sqli-labs详解

这里的sql源码先通过get的方式获取参数id,后面的fopen具体意思如图重点是sql语句,从uesr表中搜索传入的id,而且传入的是字符型从后面的echo输出部分,可以看到输出了两个内容所以我们可以用order by来先判断表中的字段个数order by 是对查询结果按照某列进行排序当我们查询的数大于列表中的字段就会报错,否则就是正常回显具体的语法为SELECT 列名 FROM 表名 ORDER BY 列名 [ASC|DESC];ASC的意思是升序,输入就是默认升序DESC是降序。

2025-01-28 04:02:42 1159

原创 2025寒假作业

解压后得到一张三明治图片,先拖入010看看粗略翻了一下,看见一串不是乱码的字符用base32解码就可以得到flag。

2025-01-26 05:50:23 536

原创 [2025寒假作业]

下载附件压缩包,用exeinfope查看,确实是一个压缩包解压后是一个gif动图查看后发现其中闪出几帧的flag,所以要把gif分帧查看可以找到三部分的flag图片,组成后就是flag{he11ohongke}

2025-01-10 12:00:50 1101

原创 [2024秋季招新期末考复现]

源码结尾给了s的值,先用pyhon将s反转,获得正向的字符串,再将其中一些9替换为1,因为其中有个 “1229”的字符串,我将其中的一些1换为9,获得如下字符 604cyber1212zerohi1229=i1229110r3ally1100a1229y110r3110wizeroh=pyzerohon}i 表示不区分大小写。但是用bugku上的解不开,说格式不正确,用bugku加密的没有换行,用另一种解密网站,先将原文转为brainfuck,再将brainfuck转为flag。

2024-12-15 19:58:19 784

原创 [2024ISCTF]复现

这里要用到一句话木马打开网页链接可以上传文件,讲一句话木马上传,并用antsword链接可以发现一个flag文件,但是打开没有显示任何东西,当时就是做到这里卡住了看来wp后发现是没有权限,当初其实也知道是这个,但不知道后面应该如何去做而且每过一段时间就会访问不了网站目录,因该就是down_file.sh这个程序会删除我们上传的文件wp说可以利用它定时执行并具有写入权的特点,我们可以编写代码并将flag带出这是用kimi写的代码 ,结合现有wp修改文件路径(没写出来,先放一下)

2024-12-06 17:53:55 676

原创 永恒之蓝漏洞

之前就已经装好了,可以网上自行搜索教程。

2024-11-30 22:12:43 248

原创 第四周作业其他题目

看了一眼就知道是社会主义核心价值观编码,将附件内容用bugku的社会主义核心价值观编码解码,可以得到flag为 LitCTF{为之则易,不为则难},注意要换格式提交。

2024-11-28 21:14:35 240

原创 [CTFHub]web信息泄露

打开题目是一个图形交互界面的目录一个个目录搜索,最后在2\3下发现flag。

2024-11-28 20:52:41 767

原创 [CTFHub]web技能树

提示只有admin才能拿到flag,根据题目,因该是要更爱cookie获得权限拿flag,下面是关于cookie的信息。提示需要Authorization,也就是需要认证,用bp抓包,发现了Authorization后有加密字符。这里的admin是用户名,然后密码需要用bp中的爆破,这里就要用到下载的附件了,是一个密码本。将拦截的包发送到测试器(intruder),用sniper模式,勾选之前的base64编码。这里用f12查看cookie存储,将值改为1(0是cookie失效),获得flag。

2024-11-18 15:20:10 628

原创 [CTFHub]文件上传

用记事本写完后将后缀改为php,进行上传,但是发现上传不了,用py文件发现可以上传,于是把后缀改.py,还是上传不了,打开属性查看,发现大小为0。后来发现是没有保存直接退出的原因。根据之前师兄上课所讲,应该是要上传一个一句话木马,然后用antsword链接查看网站目录。保存以后再上传,在网址后加上文件路径。用antsword链接,得到flag。网上搜索了一下,木马代码为。

2024-11-08 23:30:49 236

空空如也

空空如也

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

TA关注的人

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