EnterpriseDB的SQL注入攻击保护功能一

本文介绍了EnterpriseDB的Postgres Plus Advanced Server(PPAS)如何提供SQL注入攻击保护。PPAS通过学习用户访问模式来识别和阻止未经授权的关系访问、工具命令以及同意的SQL。详细阐述了SQL注入攻击的类型、受保护角色的设定、配置SQL/Protect的步骤以及不同保护模式(学习、被动和主动)的工作原理。此外,还展示了如何监控和统计受保护角色的潜在攻击行为。
摘要由CSDN通过智能技术生成

enterprisedb是基于postgresql的企业级数据库(即PPAS)。

 

PPAS(Postgres Plus Advanced Server) 提供了SQL注入攻击保护,按下面讲
 a 概述
 b 配置
 c 通常维护操作
 d 备份/恢复sql注入保护数据库
 

SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前市面的防火墙都不会对SQL注入发出警报,如果管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发觉。但是,SQL注入的手法相当灵活,在注入的时候会碰到很多意外的情况,需要构造巧妙的SQL语句,从而成功获取想要的数据。

PPAS提供SQL注入攻击保护。SQL注入攻击保护一般是应用开发人员的责任,数据库管理员则无能为力。PPAS通过检查传入的SQL提供SQL注入攻击保护。
SQL保护提供给数据库管理员反馈潜在的危险查询和阻塞这些查询。

1
概述
这届介绍各种不同种类的SQL注入攻击和SQL注入攻击保护是怎么防止攻击的。

1.1
SQL注入攻击类型
有多种不同技术的SQL注入攻击,每种技术都有某种signature。SQL注入攻击检查查询中是否有下列signature:
a Unauthorized Relations/未授权的关系
PPAS允许管理员对关系的访问进行控制,但很多管理员不做这些乏味的工作。
SQL注入攻击保护(SQL/Protect)提供了一个学习模型对用户访问的关系进修跟踪。
这也许管理员确认应用程序的负载,并且,SQL/Protect也学习哪些用户会访问哪些关系。
当SQL/Protect被切到被动或主动模式时,会对传入的查询检查要学习的关系。

b Utility Commands/工具命令
在SQL注入攻击中经常会用到一些常用命令,像典型的DDL语句。例如创建用户定义函数以访问系统其他资源。
SQL/Protect能够阻塞这些在应用程序中通常不使用的SQL命令的运行。

c SQL Tautology/ 同意的SQL
在SQL注入攻击中使用最频繁的技术是在WHERE子句中增加部分内容,例如WHERE password = 'x' OR 'x'='x',
攻击者通常以这种方式寻找安全薄弱环节,SQL/Protect能够阻塞这类查询。

具体的攻击方法可以参见我转载的《SQL注入攻击》
1.1.1
受保护的角色
监控SQL注入攻击涉及到分析受保护的角色的session里的SQL语句。
受保护的角色是PPAS数据库管理员选择的要监控的数据库角色。(PPAS里,用户和组统称为角色)
每个受保护的角色可定制要监控的SQL注入攻击类型(1.1节中讨论的),从而提供不同程度的保护,并显着地降低了DBA维护用户的工作量。

注意:
    超级用户不能作为受保护的角色。如果受保护的角色后来成了超级用户,该角色的某些行为
    将被显示:
    a 当这个受保护的superuser的每一个sql命令被SQL/Protect抛一个警告信息。
    b 受保护的superuser执行每一个命令,都会在统计信息视图edb_sql_protect_stats中
      的superusers列都会加1.
    c 当SQL/Protect是active模式时,所有受保护superuser用户执行的命令被禁止运行。

1.1.2
攻击统计:
受保护用户的每一个命令被SQL/Protect当作攻击而记录。这些条件能通过试图访问以
识别攻击的开始。
如果受保护用户连接了多个数据库,这个用户的攻击统计信息分别存放在连接的数据库里。
注意:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值