【网络安全】SQL注入专题讲解

一、SQL注入概念、分类、形成原因

1、SQL注入概念

       所谓SQL注入,就是利用现用的应有程序的特性,攻击者通过在Web表单,URL等可输入数据的地方插入(恶意)SQL语句一并原有的SQL语句被代库执行。SQL命令就是前端应用程序和后端数据库之间的接口。

2、SQL注入的危害

     > 数据库库敏感信息泄露

     > 网页被篡改,挂马

     > 数据库被恶意操作

     >  服务器被远程控制,被安装后门

      …….

  3、SQL注入常见分类 

     (1)按数据类型

     > 数字形

     >  字符型

     (2)按返回结果

     > 显错注入

     >  盲注(Boolean/Time-Based Blind)

     

4、SQL注入形成

     > 数据与代码未严格分离

     >  用户提交的参数数据未做充分的检查过滤即被带入到SQL命令中,改变了原有SQL命令的语义,且成功被数据库执行。

 5、SQL注入过程       

          

  6、SQL注入在渗透测试过程中的作用

     > 绕过登录验证:使用万能密码登录网站后台等

     > 获取敏感数据:获取网站管理员账号密码等

     > 文件系统操作:列目录,读取,写入文件等

     > 注册表操作:读取,写入,删除注册表等

     > 执行系统命令:远程执行命令

二、SQL注入常见利用方式、寻找方式、判断依据

  1、SQL注入漏洞频繁出现位置  

 

  2、SQL注入漏洞如何寻找

      (1) 使用工具

        > 优点:自动化,范围广,效率高

        > 缺点:误报,漏报,测试方法有限。

      (2) 手工测试

        > 优点:测试方法灵活

        > 缺点:效率低,范围窄,因测试者水平而已

  3、SQL注入漏洞判断依据

      (1) 常用工具
         Safe3wvs ,BurpSuite,AppScan,AWVS,

      (2) 判断依据

 

  4、常见SQL测试语句和技巧

      (1) 常用语句

       (2) 注释字符

 

三、SQLSverver数据库注入实例演示 

1、SQLServer注入常见测试语句

 

 

2、SQLServer手工注入实例演示

  构造        SQL注入语句,

 发现返回结果符合预期,说明存在SQL注入漏洞

验证是否为sqlserver数据库

返回正常界面,说明是sqlserver数据库 

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注