一.SQL注入漏洞的防范
a.对输入进行严格的转义和过滤
b.使用与处理和参数化
a.通过WAP设备启用防SQL注入策略·
b.云端防护(360防卫网站阿里雲盾)
预防数字注入:很简单,因为ColID字段的类型是int的那么我们只需要验证一下传递过来的id是不是整数就可以了。是整数就不存在注入;如果不是那么就有可能存在注入即使不存在注入,把一个不是整数的id拼接进去也会造成执行错误所以说不管是不是为了预防SQL注入,也都應该验证id是不是整数验证方法嘛,可以用TryParse可以用正则,也可以自己写函数验证但是不建议用try异常的方式,因为这个有效率问题这裏还有一个特殊情况,就是对于批量删除这类的会传递过来多个数字比如“1,23,10”这个也需要验证一下,万一有人利用这个漏洞呢至于验证方法也很简单,自己写个函数就ok了
Sqlmap是开源的自动化SQL注入工具,由Python写成具有如下特点:
2.完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。
3.在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接連接数据库
4.支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列。
5.支持自动识别密码哈希格式并通过字典破解密码哈希
6.支歭完全地下载某个数据库中的某个表,也可以只下载某个表中的某几列甚至只下载某一列中的部分数据,这完全取决于用户的选择
7.支歭在数据库管理系统中搜索指定的数据库名、表名或列名