随着政企、金融、能源、互联网等多个行业在数字转型热潮中,企事业信息平台应用面临巨大挑战,一是海量的业务数据、市民身份信息等数据剧增如何去管控?二是对于如何落实国家数字化转型对数据价值的输出?在大数据场景下,数据挖掘、处理和使用,对社会民生带来红利和便利,数据资产越来越备受关注。但随之而来较多企业的数据存在滥用、盗窃、破坏和牟利等风险,特别是公民个人信息泄漏、非法利用、数据非法跨境流动安全事件频发。
近三年来,全球数据安全事件发生1000多亿起,如“全球7.73亿互联网数据泄露”“2亿中国公民信息在暗网售卖”“微盟删库事件”、“12306/某酒店/某快递等账号信息打包叫卖”等。造成数据安全事件有多种因素,对于非法牟利的组织、黑客团体而言,利用WEB应用及数据库应用漏洞入侵攻击的成本最低。黑客对数据应用攻击方式有多种,如利用高危漏洞“SQL 注入”进行拖库,对企业平台应用系统进行各种撞库、洗库等,面对这些难题该如何应对?今天昂楷科技重点给出解决数据库应用安全问题的有效手段——数据库防火墙技术。
术语解释
SQL注入
攻击方式根据应用程序处理数据库返回内容的不同,可以分为可显注入、报错注入和盲注。例如MySQL手工注入代码,企业在数据库应用无安全防护措施状态下,非常容易遭受到拖库、数据泄露等风险,以下是纯技术代码对数据库比较有效的攻击形态:
MySQL手工注入代码
?id=1' order by 4--+
?id=0' union select 1,2,3,database()--+
?id=0' union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database() --+
报错注入:
爆库:?id=1' and updatexml(1,(select concat(0x7e,(schema_name),0x7e) from
information_schema.schemata limit 2,1),1) -- +
爆表:?id=1' and updatexml(1,(select concat(0x7e,(table_name),0x7e) from information_schema.tables where table_schema='security' limit 3,1),1) -- +
爆字段:?id=1' and updatexml(1,(select concat(0x7e,(column_name),0x7e) from
information_schema.columns where table_name=0x7573657273 limit 2,1),1) -- +
爆数据:?id=1' and updatexml(1,(select concat(0x7e,password,0x7e) from users limit 1,1),1) -- +
什么是拖库、撞库、洗库?
拖库:也是一个黑客术语,它指的是黑客入侵有价值的网站,把注册用户的资料数据库全部盗走的行为,因为谐音,所以也常被称作“脱裤”。
撞库:黑客通过收集互联网已泄露的用户+密码信息,生成对应的字典表,尝试批量登录其他网站后,得到一系列密码组合后可以登录的用户,这种方式称作“撞库”。
洗库:在取得大量的用户数据之后,黑客会通过一系列的技术手段和黑色产业链将有价值的用户数据变现,这种方式称作“洗库”。
数据库的安全防护技术
数据库应用存在的风险说明
数据库安全风险包括拖库、撞库、洗库,数据库安全技术主要包括数据库漏扫、数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统、数据库水印等,接下来重点讲解数据库防火墙技术原理及功能实现效果。
数据库防火墙技术解决方案
昂楷科技自研的数据库防火墙系统,可灵活部署在数据库服务器前端,有效解决数据库应用侧存在的安全问题,基于数据库协议分析与控制技术的数据库安全防护系统。数据库防火墙核心功能模块是基于主动防御机制,实现数据库的访问行为控制、危险操作阻断、可疑行为审计。
串联模式部署:在应用系统与数据库之间,所有SQL语句必须经过数据库防火墙的审核后才能到达数据库,发起访问、操作。
代理模式部署:数据库防火墙代理来自请求数据库应用的会话,由代理IP转到对应的目标数据库,逻辑串联,实现对运维端的访问控制。
数据库防火墙工作原理
数据库防火墙的工作机制,当黑客利用Web应用漏洞,进行SQL注入,或以Web应用服务器为跳板,利用数据库自身漏洞攻击和侵入,数据库防火墙通过防护规则、数据库漏洞虚拟补丁,从而捕获该恶意并阻断攻击行为。
拦截SQL数据语句攻击类的会话:数据库防火墙提供默认的数据库攻击规则库,可以针对SQL注入和XSS攻击行为进行有效的安全防护。基于精准的SQL语法分析,系统可以准确定位SQL语句中的操作谓词及常量表达式,保证注入、攻击行为防护的准确性。
SQL高危操作行为防护:数据库防火墙通过限制系统表和敏感对象的访问权限,限定SQL更新和删除操作的影响行为、限定No Where语句更新和删除操作,限定Drop、Tuncate、备份、导出等高危操作,以避免大规模数据损失;
基于数据库操作行为进行深度检测:具备丰富的规则类型,可对黑客、开发人员可以通过应用批量下载敏感数据,内部维护人员远程或本地批量导出敏感数据进行预警阻断,不同时能结合对攻击类语句风险的判断,避免大规模数据泄露和篡改。
“拖库”行为识别并快速响应:黑客、系统维护人员、开发人员通过应用对敏感数据做轻量级、高频次操作,非法篡改或盗取敏感数据信息,通过统计规则,针对敏感数据的频次操作,进行趋势分析和风险行为管控。
数据库防火墙功能实现效果
通过在数据库防火墙系统中配置防护策略,基于对高危操作行为有效检测和拦截,如下图是配置是实现关键功能的设置:
通过在数据库防火墙系统中配置防护策略,如对SQL的“delete”动作进行阻断,触发该规则,防火墙系统自动识别和阻断:
通过在数据库防火墙系统中配置防护策略,如针对带有简单的SQL语句“ou ’ or 1=1-- ”进行解析,以上根据配置,如果命中了阻断的规则,该请求就会被阻断:
总结
数据库防火墙所采用的主动防御技术,能够主动实时监控、识别、告警、阻挡绕过企业网络边界(FireWall\IDS\IPS等)防护的外部数据攻击,防止来自于内部的高权限用户(DBA、开发人员、第三方外包服务提供商)对数据窃取、破坏、损坏的等行为,从数据库SQL语句精细化解析,深层次的检测,提供一种主动安全防御措施。昂楷科技数据库防火墙系统结合独立于数据库的安全访问控制技术,帮助用户应对来自内外的安全威胁,保障用户数据资产安全。