bugkuCTF Writeup (Web)1-9

签到题

第一题
加群就行了,没卖什么关子:)


Web2

第二题
花里胡哨的果断去看源码。。。
KEY
flag就在这了


文件上传测试

第三题
就按照上面说的,传一个php试试
上传
提交后说:非图片文件
那就是既要是图片又要是php了
暂时不知道它是怎么判断是图片是php文件的,先试试再说
用Fiddler抓包
先改一改文件扩展名试一试吧
抓包
后缀改成jpg之后,仍然提示是非图片文件,那反过来呢?
先上传一个图片,然后改成php后缀
后缀改成php
然后就有flag了
flag
大概判断是否是php文件的时候只看的是文件扩展名,判断是否是图片只看的是文件的二进制内容吧


计算题

第四题
第一感觉,这是?验证码?
第四题
然后下意识就去点有颜色的那块,还真会变,真是验证码
心里盘算着这玩意儿要是个图片。。。还得识别图片中的数字不成
然而。。。。假的
这根本就是用CSS和JS给文字加的底色,还真像。。。。以假乱真
然后我就很好奇了,想去看看这以假乱真的“验证码的源码”。。。结果
点开js/code.js这个文件看源码,结果就看到了Flag?
flag
感觉有些强。。。好歹用ajax去服务器获取flag吧。。。放到静态文件里也太草率了


web基础$_GET

第五题
php代码审计
代码审计
这好像都算不上审计,发送一个get请求带上参数就可以了

http://120.24.86.145:8002/get/?what=flag

Flag在此
Flag


web基础$_POST

第六题
还是代码审计
代码审计
这次是要发post请求,用postman发一个就好了,得到flag
flag


矛盾

第七题
这回是php代码审计了
代码审计
既不能是数字,又要和1相等
双等号===弱类型
就这个了,只要get的参数是数字1开头后面都是字母比如“1aaaa”这样,双等号判断的时候要类型转换,1aaa就转换成1了,而它也很明显不是数字(!is_numeric)
payload:http://120.24.86.145:8002/get/index1.php?num=1abc
flag


Web3

第八题
一打开啥也没有,就让我找flag,果断看源码
源代码
最后那一堆Unicode编码的注释很可疑啊,一转换就发现是flag了
flag


SQL注入

第九题
打开网页,满屏幕找注入点输入框。。。觉着不是我网卡没加载出来,就是藏在哪里了。半天也没找着。
尝试了一下才发现直接get请求带上id参数就是注入点了
试了一下最基本的1' or 1='1'%23
没有什么效果,去看源码,发现编码格式是GB2312,试了试宽字符注入,确实是。
然后就很标准了
1%df' union select 1,2%23发现查询是两列
1%df' union select 1,database()%23发现数据库名是sql5
1%df' union select id,string from sql5.key%23 达到了题目要求
然后就有点懵
注入
题目要求的那个字段不是KEY{…}这种格式啊
开始开脑洞:
数了数一共是偶数个,而且又都是十六进制字符,赶快去转ascii,结果这根本就超了ascii范围了,全是乱码
又想是不是别的什么编码。。。试了很多种发现都是乱码,这回懵了��
算了司马当活马医试试,强行加上KEY{}提交。。。
竟然过了。。。


第一次写WriteUp,也不知道格式是什么样,反正就瞎写了,想的啥就写啥,望大佬们不要嘲笑

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值