首页 > Web开发 > 详细

CUMT校赛WebWp

时间:2020-09-26 18:29:25      阅读:53      评论:0      收藏:0      [点我收藏+]

web签到

步骤

技术分享图片

打开发现需要GET传参但并未指明参数,多次尝试发现只需要传入?1即可;

技术分享图片

  1. 传入发现需要post一个2,多次尝试发现并没有反应,于是使用burpsuite

技术分享图片

在params里填好参数后发现2后面多了一个等号,然后就传参成功,并且发现php代码;

技术分享图片

明显是使用PHP伪协议查看源文件即可获得flag

技术分享图片

base64解码即可

技术分享图片

Babysqli

使用burpsuite进行注入后发现空格被过滤了,使用/**/ 替代空格;

技术分享图片

并且发现下方注释,猜测flag可能在password里面,使用SQL语句查询

技术分享图片

发现flag,成功

Secret

发现图片,并且下载图片,按文本格式打开,后发现php代码

技术分享图片

进行代码审计,题目要求需要使用GET方式提交param1和param2,然后使用POST方式提交param1与 param2;file_get_contents($str1)是指需要str1以文件的形式写入值,is_numeric($str2)是判断str2是否为数字并且可以识别十进制和十六进制,str2需要等于2592000,sleep()函数是要程序沉睡一段时间,if(((string)$str1!(string)$str2)&&(sha1($str1)=sha1($str2)))是指需要让str1与str2的字符串形式不同,并且经过sha1()后相同;绕过这些限制救可获得flag;

技术分享图片

使用十六进制绕过sleep()函数;

使用data://text/plain;base64,U3V2aW5fd2FudHNfYV9naXJsZnJpZW5k向str2中写入内容

关于sha1()函数的绕过,网上查找到文章https://www.addon.pub/2017/10/13/CTF-sha1%E5%92%8CMD5/

Babysqli2

按照传统试一试平常的注入语句,之后发现过滤了单引号,网上查询可使用斜杠转义前面的单引号;

技术分享图片

绕过成功,但是只显示了登录成功信息,猜测多半是盲注;发现substr() mid() 等函数被过滤了,但是left()仍可以使用;

由于flag的开头为C 所以就尝试猜测flag在password中的位置技术分享图片

结果发现flag在第九行;之后便使用笨办法对flag进行逐个字母爆破,下方即为最终爆破结果,按照ascii码表转换为字母即可格式为 CUMTCTF{},大括号内全为小写;

技术分享图片

简单文件包含

页面提示需要只支持本地请求,使用burpsuite,X-Forwarded-For:127.0.0.1 没有反应 然后尝试使用client-ip:127.0.0.1 成功;

技术分享图片

发现使用了include_once()函数,并且使用了两次,该函数只能包含同一文件一次,继续网上查找方法;发现一个重复require_once()的函数的文章,是使用伪协议配合多级符号链接的办法进行绕过的;

php://filter/convert.base64-encode/resource=/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/var/www/html/flag.php

技术分享图片

base64解码即可

技术分享图片

CUMT校赛WebWp

原文:https://www.cnblogs.com/lcdm123/p/13734627.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!