服务端安全性测试

1、sql注入

通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
(1)利用sql中的and和or的逻辑关系,绕过漏洞。如:
输入书名{title},查询用户信息的sql。如果输入 天龙八部' or '1' = '1,那么sql如下:

select * from table_name where title = '{title}'
==>
select * from table_name where title = '天龙八部' or '1' = '1' 

如下图,会查出所有的信息。
服务端安全性测试_第1张图片

(2)猜数据库表名或列名
猜表名
and (select count(*) from 表名)<>0
猜列名
and (select count(列名) from 表名)<>0
或者也可以这样
and exists (select * from 表名)
and exists (select 列名 from 表名)

如果存在,and 后面的条件=True,会返回查询结果,就相当于存在该表名、或列名。

猜错列名的情况:
服务端安全性测试_第2张图片
猜对列名的情况:

服务端安全性测试_第3张图片

你可能感兴趣的:(测试,安全性,安全性测试,安全测试)