网络安全-pikachu之SQL注入漏洞(数字型注入)

哦,SQL注入漏洞,可怕的漏洞。

在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞。

一个严重的SQL注入漏洞,可能会直接导致一家公司破产!

SQL注入漏洞主要形成的原因是在数据交互中,前端的数据传入到后台处理时,没有做严格的判断,导致其传入的"数据"拼接到SQL语句中后,被当作SQL语句的一部分执行。 从而导致数据库受损(被脱裤、被删除、甚至整个服务器权限沦陷)。

在构建代码时,一般会从如下几个方面的策略来防止SQL注入漏洞:

1.对传进SQL语句里面的变量进行过滤,不允许危险字符传入;

2.使用参数化(Parameterized Query 或 Parameterized Statement);

3.还有就是,目前有很多ORM框架会自动使用参数化解决注入问题,但其也提供了"拼接"的方式,所以使用时需要慎重!

SQL注入在网络上非常热门,也有很多技术专家写过非常详细的关于SQL注入漏洞的文章,这里就不在多写了。

你可以通过"Sql Inject"对应的测试栏目,来进一步的了解该漏洞。

打开界面如下:发现数字是提交的,我先提交看看是get还是post请求,地址栏没显示,那就是post,需要我抓包。

抓包显示id可能为注入点:

那么我直接加一手单引号,看什么结果。显示语法错误,那么这里的单引号一定是闭合了。

实战中确定这里有注入点之后,可以直接使用sqlmap来跑,但是我这里是学习,所以就手动注入来得到结果。

id=2 and 1=1 回显正常,存在注入点,验证了数字型注入。

猜测返回字段的长度,id=1 order by 2

确定返回字段为2,所以查询数据库名:id=1 union select database(),2#

漏洞验证成功。

相关推荐
嘉里蓝海7 小时前
我在嘉顺达蓝海的安全日常
安全
2301_780789668 小时前
渗透测试真的能发现系统漏洞吗
服务器·网络·安全·web安全·网络安全
嘉里蓝海8 小时前
我在嘉顺达蓝海的安全坚守
安全
你的人类朋友10 小时前
认识一下Bcrypt哈希算法
后端·安全·程序员
naumy11 小时前
sqlalchemy
sql
chimchim6612 小时前
StarRocks导入数据-使用 Broker Load 进行异步导入
大数据·sql
Lris-KK12 小时前
【Leetcode】高频SQL基础题--1341.电影评分
sql·leetcode
Qlittleboy12 小时前
tp5的tbmember表闭包查询 openid=‘abc‘ 并且(wx_unionid=null或者wx_unionid=‘‘)
数据库·sql·php
markfeng813 小时前
一文搞懂MySQL字符集
sql·mysql
小白不想白a13 小时前
【MySQL】常用SQL语句
数据库·sql·mysql