CTF练习平台——web(4)

1、成绩单

看见成绩查询就想到了sql注入输入1‘无成绩显示,存在注入点

检测字段数:



字段数为4

然后找到当前使用的数据库:


找表:

第一次直接将skctf_flag放上去,没有回显


将skctf_flag转换为16进制0x736b6374665f666c6167


找列:


最后查询到内容:


BUGKU{Sql_INJECT0N_4813drd8hz4}

2、web6

抓包


flag  base64解码后还是base64的字符,再解码得到一串数字:752690,所以要把这个数字post上去,所以写python脚本


KEY{111dd62fcd377076be18a}

3、cookies欺骗??

根据url可以看到网页是一个读取文件,filename经过base64编码,解码后发现是"flag.txt",猜测有文件包含漏洞,尝试更改file的值为“index.php”的base64编码,网页一片空白,更改line的值发现,line指的行,写个程序拿到index.php的源码


获得的index.php源代码


根据代码内容,就是在cookie中加上margin,把keys.php加入文件列表,然后申请读取keys.php的内容


KEY{key_keys}

4、xss


查看源代码:


在网上查一下document.getElementById('s').innerHTML = s的意思:设置或获取某一Id的节点里面所包含的HTML代码

需要的是可以从注入点id进入的方法,采用img标签法,构造:

  http://103.238.227.13:10089/?id=<img  src=1  onload=alter(key_)/>

但是存在回显,说明存在xss   filter,传参字符串中存在被屏蔽的词

一般可能的是alter,但是题目要求存在alter,顾考虑第二个可能点<>

尝试使用转义符号:


发现对<>不起作用

所以阻挡点就是<>

因为页面编码是utf-8,id传入代码会在s中运行,考虑将<>进行unicode编码,这样当代码被替换进去运行时,utf-8又会将其变回来

\u003c代表<

\u003e代表>

构造payload:

http://103.238.227.13:10089/?id=\u003cimg%20src=1%20onload=alert(_key_)/\u003e



Flag:17f094325e90085b30a5ddefce34acd8

另一种操作(跟大佬学的):

题目已经提示了插入一段XSS代码,首先查看源代码,发现只有给s和id变量赋值

先给id赋值:

id=<script>alter(123)</script>

发现:

<>被过滤掉了

所以将<>进行unicode编码

构造payload:

view-source:http://103.238.227.13:10089/?id=\u003cscript\u003ealert(_key_)\u003c/script\u003e


Flag:17f094325e90085b30a5ddefce34acd8
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 之前积累了XSS 有一段时间,因为目前开始了一件有趣的工程,需要整合非常多的知识,其中Web 安全这一块出现最多的...
    刀背藏身阅读 9,574评论 0 16
  • 攻击活动 SQL(结构化查询语言)注入 概述 一个SQL注入攻击包含了从应用客户端的输入数据中注入或嵌入的方式,一...
    夏夜星语阅读 1,147评论 0 0
  • 一套实用的渗透测试岗位面试题,你会吗? 1.拿到一个待检测的站,你觉得应该先做什么? 收集信息 whois、网站源...
    g0阅读 5,166评论 0 9
  • 捉迷藏 题目url:http://218.76.35.75:20111/index.php 进去之后查看源码: 发...
    Pr0ph3t阅读 1,764评论 0 2
  • 你可以用广告来吸引我,但却不能改变太多。
    Alexer6阅读 151评论 0 0

友情链接更多精彩内容