![软件测试实验实训指南](https://wfqqreader-1252317822.image.myqcloud.com/cover/533/26793533/b_26793533.jpg)
上QQ阅读APP看书,第一时间看更新
1.3 实验#3:testaspnet网站有SQL注入风险
缺陷标题 testaspnet网站下存在SQL注入风险。
测试平台与浏览器 Windows XP+IE 8。
测试步骤
(1)打开testaspnet网站http://testaspnet.vulnweb.com。
(2)单击导航条上的login链接。
(3)在Username文本框中输入Try'or 1=1 or'test'='test,单击Login按钮登录,如图1-5所示。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P27_4926.jpg?sign=1739531948-x1F6upZm61nCKmvBOY2znvDMSk38qrl6-0-769c986f751b334d95ec322420d798dd)
图1-5 登录页面
期望结果 登录失败。
实际结果 以admin身份登录成功,如图1-6所示。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P27_4930.jpg?sign=1739531948-BZwX1hothsGoTRs47oPcT1fAmezfZO9S-0-2f5b09427bbdbdba52422e86278db656)
图1-6 登录成功
专家点评
SQL注入攻击利用的是数据库SQL语法,对SQL语法使用越深入,攻击得到的信息就越多。常见的攻击语法如下。
(1)获取数据库版本。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15749.jpg?sign=1739531948-oP3TiZa6iSg5HZfaTlxbnXFnRtFHxUKB-0-adcb44f439f640f1b9bc03eed278d499)
(2)获取当前数据库名。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15751.jpg?sign=1739531948-ZZBgjq5Vx7epNMoD5yVpRxw1XUVtUId2-0-c8424694503a546bd221e95b6b9bfb11)
(3)获取当前数据库用户名。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15752.jpg?sign=1739531948-FjMGooVbjiuTPd5IAxek7pJ95CwhAzaY-0-8821a3da0d7d5649b533aa8e29cb68dd)
(4)猜解所有数据库名称。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15753.jpg?sign=1739531948-hvwJAWcfF47JsrPBwi2itqFP6dRy9FOG-0-24c0851f80558ae08adaa12100332719)
(5)猜解表的字段名称。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15754.jpg?sign=1739531948-jtc3OiEADQ95uAFoOJ5ONk4rYFqvQMHX-0-36299829a56d0bb0bfcba82cfc098a5f)
如果知道了表名和字段名就可以得出准确的值。
union select 1,2,username,password,5,6,7,8,9,10,11,12 from usertable where id=6
(6)爆账号。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15756.jpg?sign=1739531948-2Ez15UoaYh3fIJve7TrCZaCWK4bk2ONb-0-e31d0be785045531985783bef6bbd698)
(7)修改管理员的密码为123。
.asp?id=××;update admin set password='123'where id=1 .asp?id=××;insert into admin(asd,..)values(123,..) //就能往admin中写入123了
(8)猜解数据库中用户名表的名称。
![](https://epubservercos.yuewen.com/3770CF/15253385004105606/epubprivate/OEBPS/Images/Figure-P28_15759.jpg?sign=1739531948-uUoDi74zUEIuFTHIe39IkkEIgpZaFjic-0-553fb03ed6fc69cbc31e93c4a7356290)