自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Centos 前准备工作

在[daemon]后面加入:重启虚拟机reboot。

2025-03-27 10:35:49 350

原创 ARP 渗透与防御

每台计算机都有一个ARP表,记录了IP地址和MAC地址的映射关系。访问IP地址的时候就去查ARP表,从而找到对应的MAC地址;如果ARP表中匹配不到,就会使用广播的方式发送一个ARP请求 ,目标主机收到请求后会使用单播的方式返回一个ARP响应,告知自己的MAC地址。拿到MAC地址后,会将映射关系缓存到ARP表。

2025-01-08 21:57:24 1013

原创 setoolkit报错问题

进入etc/resolv.conf目录,添加一条nameserver,注意位置,不要放到最下面。

2024-12-09 10:43:27 217

原创 OpenVas安装步骤及报错问题

1、更新系统2、安装openvas3、初始化gvm-setup。

2024-12-04 23:23:21 666 1

原创 docker-compose 升级

官方下载地址: https://github.com/docker/compose/releases。下载完放到kali root目录下。

2024-11-29 22:56:20 302

原创 docker拉取hello-world失败解决办法(包可以的)

最重要的是daocloud,第二个是个人阿里云加速器,点击下面链接就有。只用改第二个就行,其他照抄。

2024-11-29 22:04:11 761 4

原创 在kali用msfpc远程控制Windows

本次实验我们将使用msfpc生成windows下的被控端,并使用metasploit渗透工具进行远程控制。

2024-11-24 14:26:24 659

原创 NSSCTF

nikto扫描 nikto -h urlPUT请求,如果不存在这个路径下的文件,将会创建,如果存在,会执行覆盖操作。

2024-10-24 22:24:27 345

原创 ctfshow-web 萌新题

spring漏洞pyload:1.发现git2.工具得到.git文件addslashes函数:在预定义的字符前面加上反斜杠%1$的作用就是防止 ' 被过滤掉输入?在Cookie里发现file,,为flag.txt把Cookie中的file赋值为,注这里抓包是响应页面的包。

2024-10-09 22:37:21 470

原创 Linux-DHCP服务器搭建

usr/share/doc/dhcp*/dhcpd.conf.example //官方例子。# cat dhcpd.conf //dhcpd.conf 主配置文件。# rpm -qc dhcp // 检查是否安装dhcp。3.1 把客户端改的BOOTPROTO该为dhcp,把最后两行去掉。区域指定dhcp服务器ip地址(区域大于全局)到客户端看MAC地址,或者拿过租约的服务端会有记录(最后一行)} 用于固定地址(公司的打印机)第一行:全局dhcp服务器地址。

2024-09-22 15:44:49 1303

原创 [第五空间 2021]WebFTP

访问phpinfo.php,ctrl+f 搜索 flag,找到 flag。一开始想到是sql注入,但是不行。

2024-05-14 20:11:00 322

原创 [FSCTF 2023]ez_php1

把a的地址赋给b,因为在__destruct()中有echo,可以输出文件内容。

2024-05-13 12:44:46 327

原创 [UUCTF 2022 新生赛]ez_unser

正常序列化出来是O:4:"test":3:{s:1:"a";preg_match('/test":3/i',$a)) 序列化里面要有 "test":3 ,但又要绕过__wakeup(),这显然冲突了。把a的地址给到b,然后在把正确的内容给到c,因为$this->b=$this->c。改不了变量属性,$a肯定会被' '覆盖,那怎么办呢?

2024-05-12 21:22:49 375

原创 【重庆橙子科技】了解调用链

第一种:可以把new放到__construct(),对源代码没什么影响,因为在源码中反序列化时,没有用到__construct()。第二种:把private改成public,把序列化的结果加上%00index%00test。2.对于在序列化时没有用到的类,应该可以先不用看。但要在反序列化时看有什么用。1.对于私有属性如何赋值。pop链小例子,源码。

2024-05-12 10:21:06 331

原创 [NISACTF 2022]popchains

作为链尾,则要触发 append($value) -->>__invoke(),看到$function()。使 $this->string 为 Make_a_Change 的一个对象,则这个对象的类里面没有page这个变量,则会触发__get()。第二步:$function() ,则要触发 __get($key),看到 $this->string->page。第四步:preg_match,则要触发 __wakeup(),而原文中有 unserialize(),不用管。3.对于第三步和第四步要分开赋值。

2024-05-10 22:48:05 708

原创 [NISACTF 2022]babyserialize

一、理清pop链并进行标注二、如何编写相关脚本三、过滤与绕过1、waf的绕过2、preg_match的绕过_[nisactf 2022]babyserialize。[NISACTF 2022]babyserialize(pop链构造与脚本编写详细教学)-优快云博客。

2024-05-09 17:10:37 427

原创 [HUBUCTF 2022 新生赛]checkin

只是一个变量,不能存类,要用数组来构造。true、0与字符串比较为真。1.构造不能用类,因为。

2024-05-07 21:54:51 303

原创 [SWPUCTF 2021 新生赛]pop

所以$p->w00m = new w33m();则不会触发__toString()。对于__toString(),要是在它的类里的变量被实例化。4.一般类里的函数可以直接去掉,简化代码(方便看)。1.有私有属性的一定要url编码一下,会有不可见字符。3.对于pop链,从链尾分析到链头。

2024-05-07 20:02:31 1143

原创 [ZJCTF 2019]NiZhuanSiWei

上面的源码有echo $password,会触发__toString()。2. include($file)文件包含。1.变量如何变成文件输出。

2024-05-07 17:37:29 358

原创 [GXYCTF 2019]BabyUpload

后端代码对文件类型 Content-type 有限制。但文件后缀为.jpg,蚁剑不能连接。:解析.jpg文件中的php代码 ,内容为。传.htaccess文件失败,后发现。且后缀不能有 php。.htaccess文件。

2024-04-26 19:23:30 387 3

原创 [NISACTF 2022]babyupload

(path,*paths)函数用于将多个文件路径连接成一个组合的路径。第一个函数通常包含了基础路径,而之后的每个参数被当作组件拼接到基础路径之后。就是说传/flag,那么之前的upload/就会删除,就直接读取了根目录下的flag文件。抓包将文件名改为/flag。如果拼接的某个路径以 / 开头,那么包括基础路径在内的所有前缀路径都将被删除,该路径将视为绝对路径。然而,这个函数有一个少有人知的特性,,使得输出的文件只能是在目录。,且文件名前会拼接一个前缀。上传的文件不能有后缀。

2024-04-26 17:15:12 518

原创 [SWPUCTF 2022 新生赛]ez_ez_unserialize

要绕过wakeup函数,只要序列化的中的成员数大于实际成员数。

2024-04-23 23:25:13 312

原创 [SWPUCTF 2022 新生赛]1z_unserialize

所以我们可以通过构造一个恶意的序列化对象,将自定义的函数传递给 $lt 属性,然后将要执行的代码(或者指向一个恶意代码文件的路径)传递给 $lly 属性。当对象被序列化后再被反序列化时,__destruct 方法会被自动调用,从而执行指定的恶意操作。由题目可知,实现nss反序列化的同时,会触发__destruct()的魔术方法将lt的值赋给a,然后调用a中存储的函数,并将lly属性的值作为参数传递给该函数。只要传参把a变成system();,this->lly变成ls或者cat就是一个简单的命令注入了。

2024-04-23 23:18:48 638

转载 [CISCN 2019华北Day2]Web1

1.知道一个表flag,表中有字段flag---》可以直接跳到查数据那一步啊2.输入--+、#、'、"等都不行---》用fuzz测试查看过滤了那些。

2024-04-22 18:51:54 80

原创 ctf.show_web14

information_schema.tables 或 .columns 用反引号 information_schema.过滤了information_schema.tables、information_schema.column、空格。在switch中,case 里如果没有 break,则会继续向下执行 case。从数据库中查看文件内容,mysql提供了。的函数 load_file()

2024-04-21 11:17:02 385 2

原创 [强网杯 2019]随便注

handler 不是通用的SQL语句,是Mysql特有的。查看数据: HANDLER 表名 READ next;关闭表: HANDLER 表名 READ CLOSE;打开表:HANDLER 表名 OPEN;

2024-04-20 19:54:53 327 2

原创 [LitCTF 2023]这是什么?SQL !注一下 !

2.查询数据时,from后面要填 数据库名.表名。只填flag表名查询不到。如果在当前数据库中没有查到flag,有可能在别的数据库。1.flag不一定要在当前库中,可能在别的数据库。

2024-04-19 12:26:02 147

原创 [SWPUCTF 2021 新生赛]sql

和--+ %23。1.要注意 标签页上的东西。3.substr与mid使用。2.sql关键字过滤。

2024-04-18 20:53:08 179

原创 [SWPUCTF 2021 新生赛]error

如果 flag 只出现一半,用substr(A,B,C)# 31-60位 右边边31位。# 0-30位 左边30位。不能用limit 0,1。

2024-04-17 23:01:43 323

原创 sqlmap使用教程

D 数据库名 -T 表名 --tables。-D 数据库名 -T 表名 --dump。-D 数据库名 --tables。查看目前使用的数据库。

2024-04-17 22:56:08 325

原创 [鹤城杯 2021]Middle magic

这里要猜测 $result 是一个字符串,这样 0=="abc",为true。如果代码替换了abc,但后面又要求有abc,可以用。哈希函数无法处理数组,会返回结果 null。: 解码 JSON 字符串。只能匹配一行的数据。

2024-04-17 21:59:09 424

原创 ctf.show_web13

在.usr.ini中如果设置了文件名,那么任意一个页面都会将该文件中的内容包含进去。在 .usr.ini 中输入 auto_prepend_file =a.txt,这样在该目录下的所有文件都会包含 a.txt 的内容。auto_prepend_file=a.txt // 意思是所有a.txt文件都以php文件方式打开。上传成功之后,但蚁剑这里连接不上,可能是.txt文件蚁剑无法通过php进行解析吧。要求文件大小少于24字节,文件名少于九个字节,后缀小于三个字节,并且。,文件名不能为php。

2024-04-16 22:02:54 386

原创 【攻防世界】warmup

发现有一个通过python启动app.py的命令。有时候由于网站功能需求,会让前端用户选择要包含的文件,而开发人员又没有对要包含的文件进行安全考虑,就导致攻击者可以通过修改文件的位置来让后台执行任意文件,从而导致文件包含漏洞。以PHP为例,我们常常把可重复使用的函数写入到单个文件中,在使用该函数时,直接调用此文件,而无需再次编写函数,这一过程叫做包含。知道当时的命令是什么,就能获取xxx.py的名字,进而读取源码。随便点进一个,发现文件,可能存在任意文件读取漏洞(路径穿越漏洞),可以实现任意文件的读取。

2024-04-16 11:02:24 417

原创 【攻防世界】mfw

如果里面是一个字符串,则会当作php代码来执行。比如 assert( "file_exists('$file')" )。想办法绕过 assert("strpos('$file', '..') === false")(1)这里要注意不能直接写在url上,浏览器会对它进行编码,把它写在HackBar;assert函数在php中用来判断一个表达式是否成立,返回ture、false。页面发现git ,可能存在git注入。GitHack:下载泄露的.git文件夹下的文件到本地。(2)写 #、// 都可以。

2024-04-15 11:22:50 968

原创 【攻防世界】lottery

随便输入7个数字,抓包,把numbers改为数组:[true,true,true,true,true,true,true](5) 空数组 [ ] (注意,一旦包含元素,就算包含的元素只是一个空数组,也是true)本题已提供源码,如果没提供,输入/robots.txt,发现/.git。(9)所有其它值包括-1都被认为是 TRUE (包括任何资源)(6)不包括任何成员变量的对象(仅 PHP 4.0 适用)(1)尽管代码在多,也要认真看(一般靠直觉 )。(7)特殊类型 NULL(包括尚未赋值的变量)

2024-04-15 11:22:43 560

原创 【攻防世界】ics-07

session 的工作机制是:为每个访客创建一个唯一的 id (UID),并基于这个 UID 来存储变量。我们递归的在1.php文件夹中再创建2.php,访问1.php/2.php/..进入的是1.php文件夹。匹配 ".php"、".php3"、".php4"、".php5"、".php7"、".phpt" 或 ".phtml" 结尾的文件名。(1)if ($_SESSION['admin']):判断 session 中的 admin 是否有值。一个点调用最后面的文件,两个点调用第一个文件。

2024-04-15 10:47:16 669 3

原创 【攻防世界】bug

抓包修改后缀为 “php5”,Content-Type 为 “image/jpeg”,并在 post 数据中将 PHP 一句话木马改为用 JavaScript 表示。4. 利用JavaScript执行php代码(正常的php代码会被检测到,所以就用JavaScript来执行)在muma.php里写一句话木马,发现系统能认出这是php文件,说明开启了内容的检测(存在。3. 等价替换(php5,php3)Content-Type 判断。文件内容过滤 PHP 的语法。

2024-04-14 14:57:39 654

原创 【攻防世界】ezbypass-cat

突然想到有可能是权限绕过的问题,因为以login开头的登录界面一般是白名单,原理简单来说就是访问白名单目录login.html,然后通过…/回到正常目录下,再访问flag.html。

2024-04-11 18:01:39 441

原创 【攻防世界】Cat

2.在url中输入%79,变成y 了。说明服务器对我们输入的内容会进行 url解码 并显示到url上。url 编码使用的是 16 进制,80 也就是 128,ASCII 码是从 0-127,所以传递。当且仅当文件中存在中文字符的时候,Django 才会报错导致获取文件内容。django编码方式为gbk,超过了ascii码范围就会报错。3.从报错信息中,要知道 Django 框架。1.知道是命令行,可以ping操作,可以。没反应,说明过滤了。4.通过报错,可以获取信息。当作绝对路径请求,来读取文件。

2024-04-11 17:06:25 936

原创 【攻防世界】wife_wife

原型链污染不太准确的理解就是“父类影响子类”,一个子类继承于父类后,父类有什么属性子类就有什么属性。比如这里我们的注册信息data按照json的形式传入,JSON.parse后得到一个对象。比较容易搞混的地方来了,这个__proto__是键名,单纯是个键名,值为{“isAdmin”:true},而不是类的原型对象prototype。baseUser猜测是user类似父类的东西,user应该就是上面的。尝试读取isAdmin属性时会顺着上去找父类的,得到true,进入if语句赋值就没用了。

2024-04-09 21:45:10 818

空空如也

空空如也

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

TA关注的人

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