[HCTF 2018]WarmUp
[强网杯 2019]随便注
先对其进行输入,发先只有输入1,2时才显示代码,其他数字不出现东西
之后判断注入点,发现输入1’时会出现报错,
之后使用万能密码尝试
尝试0‘ or ‘1’='1;0" or “1”="1等,发现可行
之后尝试order by,发现当输入1'order by 3#时出现错误
则判断表中只有两列数据
之后使用 1’ union select 1,2 联合查询,发现select被过滤了
之后尝试使用堆叠注入
爆破出表名,使用0';show tables;#
发现有两个表,之后获取表名,使用1'; show columns from words;#
发现没有什么有用信息,之后看另外一个数据库
使用0';show columns from `1919810931114514`;#
这里学到一个新知识点,表名为数字时,要用反引号包起来查询。
发现有flag,
由于过滤了select,所以不能直接使用select语句,
可以使用字符串拼接,
输入
写入存储过程
1';
set @a = concat('se','lect * from `表名`;');
绕过select
prepare flag from @a;
execute flag;#
进行注入。
发现出现
搜索发现是因为没有大写。
之后将set和prepare大写即可
BUU XSS COURSE 1
看题目知道是xss注入,打开网站发现
直接输入<script>alert("xss")</script>,提交
发现 提交成功,您的吐槽已经被保存在 /#/view/dfd4f817-d96e-4a9c-a2f3-bee47606d544 ,进行访问这个网址,
发现没有任何内容,输入1查看是否会被保存。
发现是会被保存的,那就是<script>有些问题。换一种方式进行注入。
输入 <scr<script>ipt>alert('XSS')</scr<script>ipt>
发现
看来是script部分被消除了。
经过多次尝试,发现可以是用代码<img src=x οnerrοr=alert('XSS');>进行注入
之后使用xss在线平台,创建一个项目
然后选择插件
查看代码
,使用
进行访问
之后再回到xss平台,发现有
找到cookies,
用cookie登录
在xss平台观察,发现admin。php
可以进行构造包
访问http://12dd4a97-4092-4f95-bec4-aa31e14250de.node4.buuoj.cn:81/backend/admin.php
发现
打开burp进行抓包。
对
进行修改cookie为admin的cookie
之后得到flag
AWD-Test1
打开之后,发现有两个地址,查看题目,是AWD方面的题目,之后点开第一个地址,发现有个上传文件的地方,先随便找个图片进行上传,发现
上传成功的哪个跳转的是ssh,之后直接使用ssh进行连接,
点击win+r,输入cmd,打开终端,之后输入ping,ping一下给的第二个网站的ip
之后输入win+r,输入ssh -p 端口号 username@ip地址
进行连接,连接之后输入密码,之后输入linux命令,先输入cd / ,进入文件系统,之后再输入ls,查看该目录下的文件,发现有个flag文件,之后用vim编辑器打开它,使用命令vim flag,发现flag
复制输入即可
AWD-Test2
打开ssh连接界面工具moba,对端口进行连接(同上),打开工具
双击
之后
点击ssh
进行配置
第一个为ip地址,第二个是用户名,前面有个可选框,后面的英文是指定用户名,不选的话就是默认root,选择的话就是自己指定,后面是端口,配置好之后点击ok即可连接。
之后需要输入密码,
输入之后显示
勾选左下角follow,设置其跟随我们输入的命令进行改变左侧目录。之后同上题,输入cd / 然后就能看到左侧目录改变,之后寻找flag,双击打开即可,获得flag。输入
PikaChu
打开之后发现是pikachu靶场,之后需要获得flag,就需要获取它的文件目录,这里想到用文件上传漏洞进行解答,之后打开文件上传,
选择client check进行上传,选择一个php文件,发现会弹出
猜测他是用js来检测文件后缀的,之后在浏览器上关闭js,
讲一句话木马上传,上传后,进行访问网址,发现是个空白页,没有报错,那么就直接用蚁剑进行连接
在根目录下找到flag,点开得到flag
Webug 4.0
BUU XXE COURSE 1
抓包发现
存在<?xml version="1.0" encoding="UTF-8"?>则判断有xml漏洞,进行xml构造<!ENTITY flag SYSTEM"file:///flag"><!--构造实体-->]>构造读取文件,发现并没有显示flag,之后查看js代码
由于页面输出的是username的值,所以这里构造username实体来获取flag
实体是用于定义引用普通文本或特殊字符的快捷方式的变量,实体引用是对实体的引用。实体可在内部或外部进行声明。
因此,在这里我们利用 这一特性 我们在向服务器上传的文档中 使用外部实体 (通过引用定义在外部的 DTD 中的实体,我们称之为外部实体) 来访问我们 的 flag
有人可能会问 flag 也不会是 dtd 文件啊
我们在使用外部实体访问的时候,会对我们访问的文件进行检查是否为 dtd 文件,此时如果没有检测的话,就可以引用非dtd文件
造成漏洞,这就是xxe
这里构造&admin;来获取值,最后得到flag
[极客大挑战 2019]Havefu
打开网页,点击F12,查看网页源码,发现有
猜测是get注入,直接注入/?cat=dog,得出flag,
注意,url里面不能有空格。
[ACTF2020 新生赛]Include
打开网页,点击tips,发现是
查看url,发现
是flag.php文件
既然该文件名为flag.php,那么flag应该就存在于此文件中,但是我们f12并没有查看到flag,猜测flag应该是在flag.php的源代码当中
我们可以利用php://filter伪协议来查看flag.php的源代码,构造payload:?file=php://filter/convert.base64-encode/resource=flag.php
之后得到一串代码 PD9waHAKZWNobyAiQ2FuIHlvdSBmaW5kIG91dCB0aGUgZmxhZz8iOwovL2ZsYWd7YjM4ZDk2YTUtZWQ5Mi00MDc5LWJjZDgtODcwYjY2NDgwYTk3fQo= 进行base64解码,得到
之后提交flag