如何在Oracle数据库中防御SQL注入攻击

 
   | |

导读:专家在本文中回答了如何在Oracle数据库中防御SQL注入攻击的问题。他主要介绍了减轻SQL注入攻击可能性或严重程度的三个步骤。

关键词:Oracle Oracle SQL 如何防御SQL注入攻击,Oracle安全

正在加载数据... 【TechTarget中国原创】怎样在Oracle数据库中防御SQL注入攻击?答:回答这个问题很简单,但是实施起来会花费应用设计师和DBA的大部分工作。在过滤输入时整个应用程序都严格把关。除非有特殊情况,否则一些特殊字符就要坚决排除……

【TechTarget中国原创】问:怎样在Oracle数据库中防御SQL注入攻击

  答:回答这个问题很简单,但是实施起来会花费应用设计师和DBA的大部分工作。

  在过滤输入时整个应用程序都严格把关。除非有特殊情况,否则一些特殊字符就要坚决排除。有些如“—”、“/”和“;”通常被用来修正应用程序可能创建的SQL语句。一些输入文本里的数字也要过滤掉,防止十六进制值和MD5哈希值输入。最后,输入文本中的SQL集算子(SQL set operators),如UNION或INTERSECT。

  另外,你可以通过使用绑定变量(bind variables)减小遭遇SQL注入攻击的可能性。如果我们对绑定变量赋值,而不是将输入用户与其他类进行连接,那么那些恶意SQL就不会被执行。除了要防御SQL注入以外,绑定变量在大多数情况下还是性能和可扩展性的关键。

  最后,限定函数、程序和应用用户有权限制性的包。实施过程中本着最小权限原则的这一观念。还要限制访问包、不必要地访问应用用户的程序(UTL_FILE, UTL_SMPT, UTL_TCP等)能更进一步减小攻击的可能性或严重程度。

 
查看全文
 
 
 
 
 

Oracle SQL

 
Oracle Application Express(Oracle APEX)设计的一个主要目标是:快速构建基于Oracle数据库的Web应用程序。
 
SELECT子句通常是一个SELECT语句的第一个子句。它标识出你所想要包含到结果集中的列。这些列是从在FROM子句中指定的基表中返回的。
 
没有ORDER BY子句,Oracle不会保证行显示的顺序。它们可能是按照你想要的顺序排列,但也可能不是。
 
Toad For Oracle的产品策略就是为Oracle开发一款工具,它可以满足不同人的不同需求,比如DBA、开发人员、分析师以及管理者等等。
 
据Toad For Oracle产品经理John Pocknell所说,这次发布的Toad 10致力于生产力的概念,其中包括了:灵活性、易用性、自动化和协作等内容。
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录