【攻防世界WEB】难度四星12分进阶题:Cat

举报
黑色地带(崛起) 发表于 2023/01/27 21:29:43 2023/01/27
【摘要】 【攻防世界WEB】难度四星12分进阶题:Cat

前言:

介绍: 

博主:网络安全领域狂热爱好者。

殊荣:华为云博主、CSDN网络安全领域优质创作者(CSDN:黑色地带(崛起)),2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edusrc高白帽,vulfocus、攻防世界等平台排名100+、高校漏洞证书、cnvd原创漏洞证书等。

擅长:对于技术、工具、漏洞原理、黑产打击的研究。


导读:

面向读者:对于网络安全方面的学者。


Cat


编辑


解题方法:

1、注入点、大量代码理解、bp跑过滤、带出文件


过程:

输入后url后面接了域名

考虑:

1、能不能访问主机本地

2、?url是否存在注入

(输入框和?url=是同一处)

编辑


输入127.0.0.1

发现ping了自己

考虑:

能否拼接命令在后面呢

编辑

 payload:

127.0.0.1 | ls

提示无效网址,应该是被过滤了

编辑


是用bp对特殊字符进行爆破

看哪些未被过滤

发现有 - . / @未被过滤

编辑



看是否能通过编码,然后被解码绕过

先测试一下能否使用URL编码

编辑

找了几个整数测试

%100没报错

%90报错了

 是html代码编辑

复制到txt中

没找到有用信息

编辑


再改为html后缀

然后再浏览器打开

 编辑

编辑

需要去了解Django

Django 是一个开放源代码的 Web 应用框架,由Python编写的

寻找settings,寻找文件的路径

编辑

/opt/api/database.sqlite3


我们前面爆破出了@未被过滤

php中可以通过@+完整路径来读取文件(现在CURLFile)

前提:

PHP<=5.5

有个键值,然后value必须是个数组

content-type:multipart/form-data


构造payload:

?url=@/opt/api/database.sqlite3

仔细看了一下,出现了新源码

编辑



再放到txt中进行查看一番

编辑


源码里找到flag字样,可能多半就能找到了

编辑

查找ctf找到了flag

编辑



 WHCTF{yoooo_Such_A_G00D_@}



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。