目录
堆叠注入(大概率没卵用)
原理:
数据库的多条语句执行
条件:
1、实际应用场景中,堆叠注入遇到的会很少,大部分会在CTF比赛中遇到。主要原因是,堆叠注入的利用看起来很厉害但是其可能会受到 API、数据库引擎或者权限的控制。只有当调用函数库函数支持执行多条语句执行的时候才可以利用。
2、如利用mysql_multi_query()函数就支持多条SQL语句同时执行,实际情况中如PHP的防SQL注入机制,其使用的数据库函数为 "mysqli_query()"函数。 所以说堆叠注入的使用条件比较有局限性。但是一旦可以被使用,造成的伤害则是非常巨大的。
如:叠注入是原本的SQL语句 select * from user where username='bliss'
然后我们可以通过传入payload username = 1' ; show database()#来进行让他执行两条sql语句
植入payload的sql语句 :select * from user where username='1' ; show database()# 一次执行两条语句
二次注入
原理
1、当用户输入恶意数据时,网站对我们输入的重要的关键字进行了转义,然后存储到数据库。
2、已经存储到数据库的数据,默认下时安全的。该恶意数据在一定场景条件下,比如当Web程序调用存储在数据库中的恶意数据并执行
SQL查询时,没有被转义使用也没有进行进一步的检验的处理。就造成了二次注入。[二次注入具有一次攻击注入漏洞的相同攻击威力
数据一定是插入进去的,数据库攻击代码取出来调用 ,当人有执行查询操作时 会被触发
DNSlog外带
1,应用场景:
解决不回显,反向连接,SQL注入,命令执行,SSRF等
2,条件:
高权限,有文件读取权限
3,使用工具: