buuctf刷题记录
极客大挑战 2019]EasySQL-1
直接通过输入万能密码:’ or 1=1#实现注入:
思考:服务端sql语句应该为:select * from users where username=’xxx’ and password=’xxx’;,但在实际开发中应该更多的是select password from users where username=’xxx’;然后将获得的密码与输入的密码(可能存在加密)进行比对,因此在实际中此种漏洞应该极少存在。
极客大挑战 2019]Havefun
打开靶机之后发现并没有什么可以点击、输入的信息,所以查看源代码,得到关键信息,然后根据关键信息传输参数,其示例如下,左侧为获得的flag,右侧为查看源代码获取的信息:
[强网杯 2019]随便注-1
1、 输入注入参数,进行简单的注入尝试:1 ‘ or 1=1#,获得如下数据:
2、 在1的基础上未发下有用的信息,进行下一步尝试,来判断返回的数据量,1’ order by 2;#,1’ order by 3;#,结果如下:
3、尝试获取数据库的相关信息,通过:’; show tables;#获得表的信息,示例如下:
4、通过1'; show columns from words;#、1'; show columns from `1919810931114514`;#查看两个表内的内容,后面加“`“是因为数据库在以数字作为表的名字的时候需要加上这个符号,属于数据库特性问题,结果如下:
5、此时尝试进行联合查询获取表内的数据,语句为:’ union select flag from `1919810931114514`;#,发现关键词被过滤了,如下:
6、关键词被过滤就进行绕过,此时应该思考该如何绕过这些关键词来获取目标数据,通过sql的concat来进行sql语句的拼接,语句为:1';prepare st from concat('s','elect', ' * from `1919810931114514` ');EXECUTE st;#,结果如下:
补充:在网上看到了另外两种解题方式,第一种是通过修改数据库的名称和列名,使其在读取数据的时候从我们需要的数据库进行读取。第二种是通过';handler `1919810931114514` open;handler `1919810931114514` read first#进行读取,这种方式更为简便。
[ACTF2020 新生赛]Include-1
很明确的告诉了是文件包含漏洞,通过php伪协议来读取flag.php文件,语句为:php://filter/read=convert.base64-encode/resource=flag.php或php://filter/convert.base64-encode/resource=flag.php,base64加密主要是为了防止乱码,得到如下数据进行解密即可:
[HCTF 2018]WarmUp-1
1、查看源代码发现source.php文件并进行访问,结果如下:
2、通过发现的文件进行尝试访问,得到下面这些结果:
3、通过ffffllllaaaagggg暗示,和php特性,因此构造payload:http:/xxxxxx:81/?file=hint.php?/../../../../ffffllllaaaagggg,结果如下:
[极客大挑战 2019]Secret File-1
1、首先在源代码中发现Archive_room.php,并进行访问,结果如下:
2、之后进行点击访问未发现别的问题和线索,后来只能进行抓包进行分析,得到关键线索,如下:
3、访问该php文件,得到如下结果:
4、根据提示得知flag应该就是在flag.php文件中,因此此处应考虑到采用php伪协议来读取该文件,语句为:php://filter/read=convert.base64-encode/resource=flag.php或php://filter/convert.base64-encode/resource=flag.php,base64加密主要是为了防止乱码,得到如下数据进行解密即可:
[ACTF2020 新生赛]Exec-1
1、显示ping窗口,可以想到此处应该通过管道符来实现信息的读取,然后一直尝试知道获取到flag,示例如下:
[极客大挑战 2019]Knife-1
1、打开之后显示如下:
2、很明显的告诉你了通过菜刀进行连接,连接之后就扒东西吧,结果如下:
[极客大挑战 2019]Http-1
1、进入之后查看源代码发现存在a标签和php文件,如下:
2、修改false为ture,点击之后显示如下:
3、然后通过brup抓包,修改请求信息来源地址,然后重新访问,结果如下:
4、信息告诉我们要通过Syclover浏览器进行访问,那就再次抓包修改浏览器信息,结果如下:
5、信息又告诉我们只能通过本地进行访问,那在修改访问地址,结果如下:
最新文章
- oncopy=";document.selection.empty()";跟oncopy=";return false";什么区别?
- js原声快速实现选项卡
- ASP.NET Core 数据保护(Data Protection)【中】
- PHP 检测机器人,屏蔽内页
- 【BZOJ3669】[Noi2014]魔法森林 LCT
- 第一篇:Retrofit主要类UML图
- AngularJS快速入门指南07:Http对象
- 计算html标签textarea字符长度
- Mongoose中关联查询populate的使用
- webpack需要全局安装,才能使用webpack命令
- js常用方法收集
- (easy)LeetCode 219.Contains Duplicate II
- Codewars编辑题--今天升到了7段
- Thinkphp里import的几个使用方法介绍
- Revit 2015 公布!
- 开篇-我眼中的FPGA
- Xcode 7 你能不能再抗扎腾点儿呢 - 尤其自个儿强制升级后,没事儿就关闭
- Linux c获取任意路径的硬盘使用情况
- 5.28 js基础 简介
- golang的dlv调试工具print打印字符串显示more,无法显示更多