SQL注入漏洞
SQL注入漏洞是OWASP十大漏洞之一,常年霸榜前3.
它不是利用操作系统来实现攻击。而是针对开发编写时的疏漏,通过SQL语句,实现无账号登录,篡改数据,盗取账号密码,盗取企业数据,脱库等。
SQL注入的分类
联合注入 UNION query SQL injection
错误注入 Error-based SQL injection
布尔注入 Boolean-based blind SQL injection
世界延迟注入 Time-based blind SQL injection
多语句查询注入 Stacked queries SQL injection
SQL注入的危害
脱库导致用户数据泄露
危害web等应用安全
失去操作系统的控制权
用户信息被买卖
危害国家以及企业安全
SQL注入防御
1,通过WAF设备防护
2,云盾防护阿里云盾等。
3,对输入的进行严格转义和过滤
4,使用参数化(Parameterized):目前有很多ORM框架会自动使用参数化解决注入问题,但其也提供了"拼接"的方式,所以使用时需要慎重!
漏洞挖掘
web应用在获取用户数据的地方,只要带入数据库查询,都有可能存在SQL注入
get数据,如URL中存在?id=1的这种
port数据,对浏览器发送一个port数据,携带的数据中存在变量值,
http头部(http请求报文其他字段,如cookie,user-agent)
搜索引擎搜索SQL注入漏洞
通过Google搜索可能存在注入的页面
inurl:.php?id=
inurl:.jsp?id=
inurl:.asp?id=
inurl:/admin/login.php
inurl:.php?id= intitle:美女
通过百度搜索可能存在注入的页面
inurl:news.asp?id= site:edu.cn
inurl:news.php?id= site:edu.cn
inurl:news.aspx?id= site:edu.cn
SQL注入点判断
单引号判断
http://127.0.0.1/sqli-labs-master/Less-1/?id=1' 页面报错可能存在SQL注入
and判断
http://