基本介绍
堆栈注入,顾名思义,涉及一起运行一系列SQL 语句。在实际应用中也是如此。可以看到MySQL主要执行所有的SQL语句。在命令行中添加; 表示句子的结束,因此请考虑是否可以在多个语句中一起使用。这称为堆栈注入
注入原理
在SQL 中,分号(;) 用于标记SQL 语句的结束。这意味着当一条SQL语句完成后,如果你继续写下一条语句,它也会被执行。联合注入也合并了两个语句。两者之间有区别吗?区别在于union 或union all 执行有限数量的可用于执行查询语句的语句,而堆栈注入则执行任何可以执行的语句。
从用户id=8中选择*;从用户id=7中选择*;
PS:Oracle不能使用堆栈注入~
注入条件
mysqli_multi_query执行查询语句,SQL语句可控
注入流程
这里以Less-38为例进行演示。
程序代码分析
?php
错误报告(0);
包括(\’./sql-connections/db-creds.inc
#【漏洞挖掘】——118以及上面关于堆栈注入类型介绍的相关内容均摘自网络,仅供参考。相关信息请参见官方公告。
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92559.html