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

举报
黑色地带(崛起) 发表于 2023/01/27 21:29:43 2023/01/27
2.3k+ 0 1
【摘要】 【攻防世界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

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

    全部回复

    上滑加载中

    设置昵称

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

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

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