Ca1s1'Blog

isg 3道web wp

字数统计: 320阅读时长: 1 min
2019/02/21 Share
第一题:calc

calc看样子是命令执行
通过n次尝试,成功执行代码
![W))I3(_DS0$}GKXVHKJJ3W.png
Q8F5HGA8WLF@W2{UER3E%MV.png
直接cat flag
R(IAP19Y7X~$IFQ9RRWP$YN.png

第二题:secret
首先打开页面看到的是这个页面输入密码后
R9U))_{K5$~%W@LE00W4SDF.png
国际惯例查看下源代码,很兴奋的发现有flag

![]O}YTYQ84FF{WQDF`PGN7.png]5

base64解码!!!
XDG9H2U$Z_)28NJKM3{BX%P.png
发现啥都没有
被骗了。。。
然后我们get下/
![LOG9$7@TZR$4J8`~LJ%6{24.png]7
发现有个差不多的东西继续base64解码
B0VF58}S6FWXQ@A7KNFJ$2W.png
成功获取flag

第三题:news
看样子是一道注入题,给了一个app.py
链接:https://pan.baidu.com/s/18Ro2aNB3wGrpVlbW5jLk8w 密码:6noe
看了下源码很明显存在sql注入
找到过滤的关键字,判断条件估计就是写在codesafe类里面了
55L(DADABDD2EL2(G_0Y\]E5.png
果然
![KSXVU)F]05@B_IMBA2I`}IJ.png]9

1
if re.search("select", n) or re.search(" ", n) or re.search("where", n) or re.search("=", n) or re.search("'", n):

但是search不会匹配大小写那么我们可以从大小写入手过滤waf,空格则用/**/来代替

1
order by n

判断列数量
2是正常,3则返回异常,有2列

H$4ACG~1W}312_JQH5K2JHQ.png
直接使用union select 联合查询
![C0119UFZ(~TV_9QV`70$G.png]11
成功返回说明数据库表是flag
UWLZ87$J)R7OIVAZC{1DB66.png
列尝试也使用flag
成功爆出flag

CATALOG