Pikachu实验重现2(Sql的注入)

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值