秋说
祝你开心
展开
-
【网络安全 | CTF】BUUCTF Brute 1解题详析(BurpSuite爆破实战)
4、Cluster bomb:每个变量对应一个字典,并且交集破解尝试每一个组合,每个用户和每个密码进行匹配,两个字典。找到返回长度异于其它payload的请求(在此实例中即为admin),响应页面回显。2、Battering ran:对变量进行同时破解,用户名和密码相同,仅一个字典。由上可知,发送到第6491个请求时才爆破出密码为6491,而这个过程是十分慢的。3、pitch fork:每个变量对应一个字典,用户名和密码一一对应,两个字典。单独抓包时回显仅用户名错误,考虑先爆破用户名。原创 2023-04-28 16:32:04 · 5660 阅读 · 2 评论 -
【网络安全 | CTF】攻防世界 Training-WWW-Robots 解题详析
在这个小训练挑战中,你将学习 Robots_exclusion_standard(机器人排除标准)。robots.txt 文件是由网络爬虫用来检查是否允许他们爬行和索引你的网站或仅部分内容。原创 2023-05-20 20:09:54 · 3404 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 PHP2 解题详析
index.php是一个常见的文件名,通常用于Web服务器中的网站根目录下。它是默认的主页文件名,在访问一个网站时,如果没有特别指定页面文件名,则服务器会自动加载index.php文件。在Web应用程序中,index.php文件通常是网站的入口文件。它包含了处理用户请求的代码,与数据库进行交互并生成页面的相关内容等,同时,它是连接后端逻辑与前端界面的桥梁之一。这种特殊模式通常用于演示和共享PHP代码,而不是作为生产环境中的主要文件扩展名。将admin进行两次URL编码,再GET传参即可。原创 2023-05-20 20:38:24 · 5310 阅读 · 1 评论 -
【网络安全 | CTF】攻防世界 ics-06 解题详析
题目描述:云平台报表中心收集了设备管理基础服务的数据,但是数据被删除了,留下了入侵者的痕迹。仅栏能打开新窗口:注意到URL栏的id参数,对id进行爆破。原创 2023-05-20 21:07:03 · 3735 阅读 · 1 评论 -
【网络安全 | CTF】攻防世界 view_source 解题详析
使用开发者工具:大多数浏览器都提供了内置的开发者工具,这些工具通常包括一个源代码查看器。,这种方法只适用于一些特定的浏览器(如Chrome和Firefox),而其他浏览器可能不支持这种方式。例如,如果想查看https://www.example.com网站的源代码,可以在浏览器地址栏中输入。使用浏览器菜单:不同的浏览器可能会在不同的位置提供查看页面源代码的选项。例如,在Windows系统中,可以使用组合键。,然后按下Enter键来查看页面源代码。,使用此方式查看页面源代码时,元素,即可查看页面源代码。原创 2023-05-20 21:33:50 · 5545 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 cookie 解题详析
使用Burp Suite抓包可以更全面地查看HTTP响应及其它与网络通信相关的信息,具体操作本文不再赘述。题目描述:X老师告诉小宁他在cookie里放了些东西,小宁疑惑地想:这是夹心饼干的意思吗?HTTP响应通常可以在浏览器的开发者工具中找到。根据提示,获取页面Cookie中的数据即可。如图,flag存在于。原创 2023-05-20 21:48:36 · 4870 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 robots 解题详析
通常,网站管理员会在网站的根目录下放置一个名为robots.txt的文件,并使用该文件指定他们希望搜索引擎索引和不索引的页面。题目描述:X老师上课讲了Robots协议,小宁同学却上课打了瞌睡,赶紧来教教小宁Robots协议是什么吧。robots.txt是一种文本文件,则指示搜索引擎不要抓取网站中包含在。被设置为禁止爬取,访问即可。指定所有搜索引擎爬虫,而。进入靶机,页面空白。文件夹中的任何内容。原创 2023-05-20 21:59:51 · 4031 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 get_post 解题详析
题目描述:X老师告诉小宁同学HTTP通常使用两种请求方法,你知道是哪两种吗?使用Hack Bar提交GET参数Payload:?a=1原创 2023-05-20 22:51:01 · 3396 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 simple_php 解题详析
恒等比较运算符是一个严格比较,它不仅比较变量的值,还比较变量的数据类型和内存地址。当使用恒等比较运算符比较两个变量时,如果它们的值和数据类型都相等,则返回 true。比较运算符是一个松散比较,它只比较变量的值,而不考虑变量的数据类型。当比较两个变量时,如果它们的值相等,则返回 true。5.对于两个操作数都是字符串的情况,PHP会将两个字符串中的非数字字符删除,然后将剩余的数字字符串转换为相应的数字进行比较。如果变量b的值大于1234,则输出变量flag2的值。如果变量b是一个数字,则终止程序的执行。原创 2023-05-21 08:34:32 · 5213 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 backup 解题详析
例如,可以将备份文件的文件名设置为 index_backup.php、index.bak 或 index_php_backup.php 等。例如,如果要备份名为 index.php 的文件,则可以将其备份文件命名为 index_20230521_004017.php。:tar (tape archive) 打包格式和 gzip 压缩算法结合使用的备份文件格式,可以使用 tar 和 gunzip 工具进行解压缩。:纯文本格式,通常不用于表示备份文件,但可以将备份文件的内容存储为文本文件进行备份。原创 2023-05-21 08:58:12 · 5363 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 disabled_button 解题详析
题目描述:X老师今天上课讲了前端知识,然后给了大家一个不能按的按钮,小宁惊奇地发现这个按钮按不下去,到底怎么才能按下去呢?5.表单验证失败:如果表单包含了 JavaScript 验证代码,验证结果为 “false”,则该。属性未设置,或者设置了错误的名称,那么提交表单时,服务器无法识别该字段。标签是必填字段,但用户未填写数据,则此标签不会提交表单。属性,则该标签不可用,不会提交表单。,由HTML相关知识可知,该按钮。标签必须包含在表单元素。属性,例如将其设定为。,则该标签不会提交表单。标签也不会提交表单。原创 2023-05-21 09:16:59 · 4887 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 weak_auth 解题详析
题目描述:小宁写了一个登陆验证页面,随手就设了一个密码。正常来说,登录失败时会重定向至Login页面,而。该题密码较简单,故使用常规字典爆破可得flag。1.将请求包发送至Intruder并。用户名admin,密码1进行登录。2.设置Payload,添加字典。姿势较简单,本文不再赘述。3.启动爆破,查看结果。原创 2023-05-21 09:44:05 · 5515 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 baby_web 解题详析
当用户请求访问一个使用 PHP 构建的网站时,Web 服务器将会搜索该网站根目录下是否存在名为 index.php 的文件,如果找到了该文件,则会将其视为默认的初始页面文件并返回给用户。具体来说,当访问一个 URL 时,服务器返回 302 状态码和一个 Location 头部字段,该字段指示了资源被临时移动到的新 URL 地址。这两个文件名都是 Web 服务器默认的首选文件名,当用户访问一个网站时,服务器会优先寻找这些文件并返回给用户。文件是最常用的初始页面文件名,它在网站根目录下。原创 2023-05-21 10:25:55 · 4548 阅读 · 0 评论 -
【网络安全 | CTF】unserialize3解题详析(php序列化反序列化实例讲解)
在 PHP 中,可以使用 serialize() 函数将对象序列化为字符串,然后保存到文件或传输到其他应用程序中。在 PHP 中,可以使用 unserialize() 函数将序列化后的字符串还原为原始的对象或数据,然后进行处理。对象被序列化并存储为字符串后,如果再次反序列化该字符串并尝试重建相应的对象时,PHP 就会自动调用该对象的。则是将序列化后的数据重新转换为对象、数据结构或变量的过程,以便在程序中进行操作或处理。在反序列化对象时自动调用,用于初始化对象的属性等操作。的对象,该对象有一个属性。原创 2023-05-21 14:15:20 · 4725 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 command_execution 解题详析
ping 命令是一个常用的网络命令,用于测试两台计算机之间网络连接的连通性。通过向目标计算机发送 ICMP 协议的数据包,并等待目标计算机返回响应数据包来测试网络的可达性,同时也可以测试网络的延迟和丢包率等信息。本地回环地址是网络通信中的特殊地址,指向本机的网络接口,因此通过发送 icmp 数据包到该地址来测试网络连通性和延迟。如果 ping 命令不正确地处理其输入参数,就可能存在被攻击者利用来运行危险的命令的风险。2.ping+IP地址或主机域名+命令参数。3.ping+命令参数+IP地址或主机域名。原创 2023-05-21 16:21:06 · 6149 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 xff_referer 解题详析
(简称 XFF)是一个 HTTP 请求头部字段,它用于表示 HTTP 请求的客户端 IP 地址,尤其是当请求通过一个中介代理或负载均衡器时。该字段的值通常是一个逗号分隔的 IP 地址列表,其中第一个 IP 地址是最初连接到中介代理或负载均衡器的客户端 IP 地址。因为在这种情况下,服务器只能看到请求的中介代理或负载均衡器的 IP 地址,而无法直接获取客户端的真实 IP 地址。是另一个 HTTP 请求头部字段,它包含了当前请求的来源页面 URL 地址,即前一个页面的 URL 地址。原创 2023-05-21 17:36:41 · 4918 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 simple_js 解题详析
因此,JavaScript 将自动为我们创建一个全局 p 变量,并将所有未声明的变量都放在全局作用域中。这意味着,用户输入密码(密文)并调用解密函数时,原创 2023-05-21 22:59:00 · 4625 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 php_rce 解题详析
PHP RCE 指的是通过远程代码执行漏洞(Remote Code Execution)来攻击 PHP 程序的一种方式。简单来说,由于PHP应用程序没有正确处理外部输入数据(如用户提交的表单、请求参数等),此时通过某些手段向 PHP 应用程序中注入恶意代码,然后通过这些恶意代码实现对受攻击服务器的控制。由上图可知,flag字段储存在flag文件夹下的flag文件中。使用thinkphp 5.1.payload进行尝试,根据提示,使用5.0.20版本的Payload。说明命令执行成功,接着抓取flag即可。原创 2023-05-22 09:44:52 · 5606 阅读 · 1 评论 -
【网络安全 | CTF】攻防世界 Web_php_include【php伪协议|data伪协议|file伪协议】
是 PHP 语言中一个重要的文件包含机制,可以将一个 PHP 文件包含到另一个 PHP 脚本文件中。该机制通常用于代码复用和模块化开发,在不同的 PHP 文件之间实现函数和类等代码的共享。file 伪协议用于访问本地文件系统中的文件,可以在 web 页面中链接到本地文件,或者读取本地文件中的数据。PHP 伪协议是一种特殊的 URI 协议,可以绕过通常的协议限制,直接访问本地文件和执行 PHP 代码。函数,该函数返回当前工作目录的绝对路径。函数,该函数返回当前执行的 PHP 脚本所在位置的绝对路径。原创 2023-05-22 21:38:28 · 9832 阅读 · 2 评论 -
【网络安全 | CTF】攻防世界 upload1 解题详析
该代码通过扩展 Array 原型对象添加了一个名为 contains 的函数,用于判断一个对象是否在数组中,主要应用于判断上传文件的扩展名是否属于指定的图片格式,这里是 [‘jpg’,‘png’]这段代码的作用是检查上传文件的扩展名是否符合要求,如果是图片格式(jpg或png),则启用提交按钮,否则禁用提交按钮并弹出提示消息。若文件上传成功,则在上传路径对应的页面会输出。考察文件上传,具体原理及姿势不再赘述。抓包,修改filename文件后缀为。无Error回显,说明木马上传成功。原创 2023-05-24 23:21:09 · 4549 阅读 · 2 评论 -
【网络安全 | CTF】攻防世界 warmup 解题详析
该函数接受一个参数 $page,并对其进行三次预处理,分别进行 URL 解码、去掉查询字符串和转换成统一编码,然后依次与白名单中的文件名进行比较,如果匹配成功则返回 true;其次,在主程序中通过判断用户的请求参数 $_REQUEST[‘file’] 是否存在、是否是字符串类型,以及调用 emmm::checkFile 函数的返回结果来决定是否包含相应文件并输出。这段 PHP 代码主要用于检测用户请求的文件是否在白名单之内,如果在则可以包含该文件并输出,否则直接输出一张图片。要想包含特定的文件,则必须。原创 2023-05-25 09:32:33 · 3709 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 web2 解题详析
可通过逆向加密算法的步骤,对 $miwen 进行相反的操作,即先使用 str_rot13 还原,然后使用 strrev 翻转,再使用 base64 解码,最后对每个字符的 ASCII 值减 1 ,再进行翻转即可得到 flag。其中,str_rot13 是一个简单的字符替换算法,将每个字符替换为它在字母表中向后移动 13 位后对应的字符。这个算法是一种经典的简单加密方法,可以用来隐藏字符串的真实含义。这段代码定义了一个函数 encode,接受一个字符串参数 $str,并返回对其进行加密后的结果。原创 2023-05-25 12:08:16 · 3496 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 supersqli 解题详析
堆叠注入(stacked injection)是一种SQL注入攻击的技术手段,它会在同一行代码中多次使用已知的SQL注入漏洞,从而达到绕过安全措施、执行恶意代码和窃取数据库信息等目的。堆叠注入攻击利用了SQL语句的连贯性,通过在查询语句中嵌入多个SELECT语句或在UPDATE语句中嵌入多个SET赋值的情况来强行插入额外的恶意代码段。表示注释掉其后面的内容,因此程序会执行两次SQL语句,并忽略掉密码的条件,最终返回敏感数据的行数,从而达到了窃取数据库敏感信息的目的。断开原有语句,再插入新的SQL语句。原创 2023-05-27 10:54:34 · 3349 阅读 · 1 评论 -
【网络安全 | CTF】攻防世界 Web_php_unserialize 解题详析
这段代码接收参数 var,使用 base64_decode 函数对 var 进行解码,然后通过 preg_match 函数判断是否包含类似 o:2的字符串,如果存在则中断程序执行,否则调用 @unserialize 函数进行反序列化操作。这段代码首先定义了一个名为 Demo 的类,包含了一个私有变量 $file 和三个魔术方法 __construct()、__destruct() 和 __wakeup()。3、private在变量名前添加标记\00(classname)\00,长度+2+类名长度,如。原创 2023-05-28 20:39:53 · 3728 阅读 · 0 评论 -
【网络安全 | CTF】一文带你了解SSTI漏洞 + Web_python_template_injection解题详析
2.命令执行注入:攻击者在应用程序中的命令执行语句中注入模板代码,从而执行任意系统命令,获取系统权限,对系统进行攻击等。3.变量渲染注入:攻击者在应用程序中的变量渲染语句中注入模板代码,从而影响页面的输出,导致代码执行或信息泄漏等问题。在 Python 3 中,当对一个未导入的模块(如 os 模块)执行 eval() 函数时,linecache 模块会发出一个警告,可利用这个警告来读取敏感信息。1.条件语句注入:攻击者在应用程序中的条件语句中注入模板代码,从而控制条件判断的分支,导致程序的逻辑错误。原创 2023-05-28 22:56:54 · 5439 阅读 · 0 评论 -
【网络安全 | CSAW】攻防世界mfw解题详析(Git泄露+命令执行)
Git是一个非常流行的开源分布式版本控制系统,它被广泛用于协同开发和代码管理。许多网站和应用程序都使用Git作为其代码管理系统,并将其部署到生产环境中以维护其代码库。通过枚举工具或搜索引擎来查找带有.git文件夹的存储库,以获取包含未加密密码、凭据和敏感信息的站点代码库。由于该代码仅对目录遍历进行防范,因此可构造POC,执行系统命令。文件夹被直接部署到线上环境中,这可能会导致Git泄露问题。下载站点存储库的整个代码历史记录和配置信息。然而,在配置不当的情况下,可能会导致。由于下载得到的文件中,原创 2023-05-29 22:30:34 · 4376 阅读 · 0 评论 -
【网络安全 | XCTF】Python之Django模块+curl 攻防世界 Cat 解题详析
无回显,可能是因为/opt/api/是整个API项目的根目录,而/opt/api/api/是API应用程序的特定子目录,用于存放与API功能相关的文件。使用@+文件路径时,CURL将自动读取该文件内容并将其作为请求参数。这是python的Django模块,其数据库database文件存在于opt/api下的setting.py文件中。当使用文件路径作为参数时,若文件路径指定有误或不存在,则无法正确读取文件内容。flag为:WHCTF{yoooo_Such_A_G00D_@}题目描述:抓住那只猫。原创 2023-05-30 15:43:34 · 3648 阅读 · 0 评论 -
【网络安全 | XCTF】攻防世界 ics-05 解题详析
题目描述:其他破坏者会利用工控云管理系统设备维护中心的后门入侵系统。在当前目录及其子目录中查找文件名中包含 xx 的文件,如。构造Payload如下,实现将sub中的。根据提示,进入维护中心页面。查看源代码 发现注入点。原创 2023-05-31 19:44:57 · 3753 阅读 · 1 评论 -
【网络安全 | CTF】攻防世界wife_wife解题详析
若isAdmin的属性是true,则它为管理员,否则为普通用户;于是我们可构造污染。该题涉及Java Script原型链污染。可以看到,后端编程语言为Node.js,原创 2023-07-23 09:44:12 · 5137 阅读 · 5 评论 -
【网络安全 | CTF】攻防世界 inget 解题详析
由于该语句为真,却无回显,故可排除数字型注入。语句,再根据回显做下一步判断。思路:尝试利用or构造。使用sqlmap爆数据。原创 2023-07-23 09:44:34 · 4291 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 lottery 解题详析
在循环体中,使用if语句判断当前索引位置上的数字是否等于中奖数字数组$win_numbers中对应索引位置上的数字。如果相等,则将same_count变量加1。在弱比较(==)中,PHP首先会尝试将两个操作数转换为相同类型,然后再比较它们的值。在这种情况下,字符串’5’被转换为整数5,因此。而在严格比较(===)中,不仅要比较两个值是否相等,还要比较它们的类型是否相同。使用for循环遍历数字数组numbers,循环变量i从0到6,共7次循环。是字符串类型,因此它们的类型不同,严格比较的结果是不相等。原创 2023-07-23 09:44:58 · 4463 阅读 · 1 评论 -
【网络安全 | CTF】攻防世界护网杯 2018 easy_tornado
tornado render是python中的一个渲染函数,也就是一种模板,通过调用的参数不同,生成不同的网页,如果用户对render内容可控,不仅可以注入XSS代码,而且还可以通过{{}}进行传递变量和执行简单的表达式。或一个目录是“/Users/python/tornado-file-read/static_private/”,传入某文件的路径为“/Users/python/tornado-file-read/static/”将得到的cookie_secret同加密的内容一同进行加密。原创 2023-07-23 09:46:27 · 3714 阅读 · 0 评论 -
【网络安全 | CTF】fakebook(网鼎杯2018)解题详析
登录后发现传参,构造字符型参数,回显error判断为数字型注入,查看注入点数目:由上下两张图可知注入点数目为4经测试可知对空格进行过滤,可通过/**/或+绕过,但程序也过滤了+,因此使用前者no改为0的原因是使程序报错,从而回显库名fakebookno=0/**/union/**/select/**/1,(select/**/group_concat(column_name)/**/from information_schema.columns/**/where/**/table_name='users')原创 2023-07-24 09:59:36 · 12001 阅读 · 2 评论 -
【网络安全 | CTF】攻防世界 shrine 解题详析
进入环境:格式化代码:这段代码创建了一个 Flask 应用对象,并设置了一个名为 FLAG 的配置项,其值来自环境变量。然后定义了两个路由,一个用于返回当前文件的内容,另一个用于渲染 Jinja2 模板。推测flag在名为FLAG的config中,但黑名单过滤了config,通过Jinja2联想SSTI注入在这个程序中,/shrine/ 是定义的路由路径,会匹配到处理该路径的函数。于是构造路径:回显如下:说明SSTI可行在 Flask 中,url_for 函数是定义在 Flask 的全局命名空间中的原创 2023-07-24 10:00:05 · 3913 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 fileclude 解题详析(php伪协议)
代码功能:检查通过GET请求传递的两个参数"file1"和"file2"。如果这两个参数都存在且非空,它将读取"file2"文件的内容,如果内容等于"hello ctf",则会执行"file1"文件。对于file1,我们可以使用 convert.base64-encode 过滤器来读取位于 flag.php 文件中的内容,并将其转换为 base64 编码的形式。php://input 是一个 PHP 的内置流(stream)封装器,用于从请求的正文(body)中获取原始的输入数据。原创 2023-07-31 14:08:25 · 4564 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 fileinclude 解题详析(php伪协议)
由于index.php在/var/www/html目录下,而flag.php与index.php同为php文件,故猜想flag.php也在该目录下。因此解题思路为:利用php伪协议,构造language参数,来读取该目录下的flag.php文件。,即此处存在文件包含。原创 2023-07-31 14:36:03 · 4127 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 file_include 解题详析(php伪协议+convert转换过滤器)
也就是说我们修改POC之后得到的check.php中的内容其实是逻辑判断代码,与flag无关。由代码审计可知,可通过filename参数构造POC,来读取check.php。回显的代码使用了正则表达式来匹配指定的字符串,如果输入中包含了。故猜想flag在flag.php中,修改POC即可得到flag。该题涉及到 convert转换过滤器。中的任何一个字符串,就会关闭脚本。猜测关键字被过滤,怎么办呢?题目描述:怎么读取文件呢?对于本题,将初始POC。原创 2023-07-31 16:09:56 · 4843 阅读 · 0 评论 -
【网络安全 | CTF】攻防世界 easyupload 解题详析
抓包改后缀,.php1~.php9、.htaccess均被过滤(.htaccess 文件是一个用于配置 Apache Web 服务器的配置文件。它通常位于网站根目录或特定目录中,用来为该目录及其子目录提供特定的配置指令):提示:只要是运用了fastcgi的服务器都能够利用该方式getshell,不论是apache或者ngnix或是其他服务器。原创 2023-07-31 17:42:06 · 7684 阅读 · 2 评论 -
【网络安全 | CTF】攻防世界 文件包含(泰山杯)解题详析
而check.php的名称与代码相匹配,故猜测flag字段在flag.php中。显然关键字被过滤,因此转换过滤器,详情参考上面的链接。说明我们使用了正确的过滤器,但用法错误。分别为Payload集1和2添加字典。回显内容为逻辑过滤代码。原创 2023-07-31 22:54:46 · 5110 阅读 · 5 评论 -
【网络安全 | CTF】攻防世界 very_easy_sql 解题详析(gopher协议+ssrf漏洞sql注入+盲注脚本)
登录处直接注入会提示you are not an inner user, so we can not let you have identify~查看源代码发现use.php,访问后猜测该题为基于ssrf漏洞的sql注入:因此我们可构造含有gopher协议的盲注脚本,通过对use.php界面发送请求来获取flag。具体实现的方法是通过构造不同的poc来进行注入攻击,并利用时间延迟判断是否成功注入。原创 2023-08-01 23:05:21 · 8332 阅读 · 0 评论