文章目录
-
- 1. [极客大挑战 2019]EasySQL 1【SQL注入-万能密码】
- 2. [极客大挑战 2019]Havefun 1【前端代码审计-注释泄漏】
- 3. [HCTF 2018]WarmUp 1【PHP代码审计】
- 4. [ACTF2020 新生赛]Include 1【PHP伪协议】
- 5. [ACTF2020 新生赛]Exec 1【命令注入-基础】
- 6. [GXYCTF2019]Ping Ping Ping 1【命令注入-空格替换+变量拼接】
- 7. [SUCTF 2019]EasySQL 1 【SQL注入-堆叠注入】
- 8. [强网杯 2019]随便注 1 【堆叠注入-改表名】
- 9. [极客大挑战 2019]Secret File 1
- 10 [极客大挑战 2019]LoveSQL 1【SQL注入-常规】
1. [极客大挑战 2019]EasySQL 1【SQL注入-万能密码】
使用万能密码登录即可:admin' or 1#
2. [极客大挑战 2019]Havefun 1【前端代码审计-注释泄漏】
- 进入页面,发现只是一个撸猫页面,没有可以下手的地方。
- F12看看前端页面代码,发现有一段被注释了的代码:
- 尝试在地址栏传入 cat=dog,即返回了 flag:
3. [HCTF 2018]WarmUp 1【PHP代码审计】
- 同样 F12 查看代码,有一个 source.php:
- 访问 source.php,查看代码,发现有一个 hint.php:
- 访问 hint.php,出现:
- 继续走查 source.php 代码,构造下列 payload:
?file=hint.php?../../../../../ffffllllaaaagggg
,得到 flag. - 这里走查代码其实就是在对 url 做过滤,看是否在 whitelist 中,至于后面应该有几层目录那就试吧。
4. [ACTF2020 新生赛]Include 1【PHP伪协议】
- 查看页面只有一个 tips 链接,点击链接出现一句话:Can you find out the flag? 再没有其他内容;
- F12查看前端源码,也没有信息;
- 查阅资料,发现可以使用 PHP 伪协议:PHP伪协议是PHP自己支持的一种协议与封装协议,简单来说就是PHP定义的一种特殊访问资源的方法。
- 常用的 PHP 伪协议有:
5. php://input 是个可以访问请求的原始数据的只读流,获取POST请求数据的协议
6. php://filter 是一种元封装器, 设计用于数据流打开时的筛选过滤应用。这对于一体式(all-in-one)的文件函数非常有用,类似 readfile()、 file() 和 file_get_contents(),在数据流内容读取之前没有机会应用其他过滤器。
在利用上很多都是与包含函数结合使用,读入或者输出获取文件源码然后编码让其不执行从而输出
php://filter 的使用:如
php://filter/read=convert.base64-encode/resource=index.php
php://filter/resource=index.php
- 尝试输入 php://input,发现被拦截了:
- 尝试输入 php://filter,没有被拦截,输入:
php://filter/read=convert.base64-encode/resource=flag.php