如何窃取开发人员的mysql创建本地数据库库

如果你正在阅读本文并且你是一个软件开发人员,你很有可能在本地运行一些服务。Redis, Memcached和Elasticsearch 都是许多开发者常用的软件产品。但你可能不知道的是,这些运行在本地的服务通过任何你访问过的网站就能访问到,也就是为那些想要窃取你的本地数
如果你正在阅读本文并且你是一个软件开发人员,你很有可能在本地运行一些服务。Redis, Memcached和Elasticsearch&都是许多开发者常用的软件产品。但你可能不知道的是,这些运行在本地的服务通过任何你访问过的网站就能访问到,也就是为那些想要窃取你的本地数据的坏人提供了途径。&如何操作虽然我没有用到任何新的方法,但是还从没有人像我即将展示的这样把攻击手段这样结合起来的。我结合了两种不同的攻击方式,分别是“跨脚本”和“DNS Rebinding(DNS重绑定)”。&关于Redis, Memcached和Elasticsearch&&第一个所用的技术比较古老,叫做“跨协议脚本”。2001年所发表的一片论文详细介绍了此攻击方法,主要是利用了Redis和Memcached都有的一个基于行的协议,该协议忽略任何无效指令。这意味着如果一个浏览器发送了如下的HTTP请求到localhost:6379&(Redis通常运行的地址),Redis会自然执行SET命令。&POST / HTTP/1.1Host: localhost:6379&SET abc 123QUIT&我们可以发送一个请求如下所示:&&form&enctype=&text/plain&&method=&POST&&action=&http://localhost:6379&&
&formfield&name=&abc&&
SET&abc&123
&/formfield&
&input&type=&submit&&value=&Submit&&/&
&/form&Elasticsearch的协议是完全基于HTTP的,所以不需要任何把戏就能和它通信。&虽然我们可以执行任何的命令,我们实际上不能取回结果。这是因为浏览器的同源策略(same-origin&policy),该策略确保无法从来自其他域的请求中读数据。这时就用到我们的第二个技术了!&DNS Rebinding
如何窃取开发人员的本地数据库 - 安全客 - 有思想的安全新媒体
本文由 IT学习网 整理,转载请注明“转自IT学习网”,并附上链接。
原文链接:
标签分类:
上一篇:上一篇:
下一篇: 下一篇:
大数据安全分析的前世今如何窃取开发人员的本地数据库 - 安全客 - 有思想的安全新媒体_风云榜
时间: 22:09
作者:&&|&&文章来源: 网络整理&&|&&浏览:
本月最热文章
二月红老婆得了什么病 老九门丫RDIFramework.NET,基于.NET的快速信息化系统开发、整合框架,给用户和开发者最佳的.Net框架部署方案。请关注官方博客:http://blog.rdiframework.net/
13:37 by yonghu86, ... 阅读,
数据库安全防范黑客入侵&注:本文转载于 《》& & & &随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。各种应用系统的数据库中大量数据的安全问题、敏感数据的防窃取和防篡改问题,越来越引起人们的高度重视。&  数据库系统的安全除依赖自身内部的安全机制外,还与外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次:&  ⑴ 网络系统层次;&  ⑵ 宿主操作系统层次;   ⑶ 数据库管理系统层次。&  这三个层次构筑成数据库系统的安全体系,与数据安全的关系是逐步紧密的,防范的重要性也逐层加强,从外到内、由表及里保证数据的安全。下面就安全框架的三个层次展开论述。& &  1. 网络系统层次安全技术&  从广义上讲,数据库的安全首先依赖于网络系统。随着Internet的发展和普及,越来越多的公司将其核心业务向互联网转移,各种基于网络的数据库应用系统如雨后春笋般涌现出来,面向网络用户提供各种信息服务。可以说网络系统是数据库应用的外部环境和基础,数据库系统要发挥其强大作用离不开网络系统的支持,数据库系统的用户(如异地用户、分布式用户)也要通过网络才能访问数据库的数据。网络系统的安全是数据库安全的第一道屏障,外部入侵首先就是从入侵网络系统开始的。网络入侵试图破坏信息系统的完整性、机密性或可信任的任何网络活动的集合,具有以下特点:&  a) 没有地域和时间的限制,跨越国界的攻击就如同在现场一样方便;&  b) 通过网络的攻击往往混杂在大量正常的网络活动之中,隐蔽性强;  c) 入侵手段更加隐蔽和复杂。&  计算机网络系统开放式环境面临的威胁主要有以下几种类型:& &  a) 欺骗(Masquerade);&  b) 重发(Replay);&  c) 报文修改(Modification of message);&  d) 拒绝服务(Deny of service); &&  e) 陷阱门(Trapdoor);& &  f) 特洛伊木马(Trojan horse);& &  g) 攻击,如透纳攻击(Tunneling Attack)、应用软件攻击等。这些安全威胁是无时、无处不在的,因此必须采取有效的措施来保障系统的安全。&  从技术角度讲,网络系统层次的安全防范技术有很多种,大致可以分为防火墙、入侵检测、协作式入侵检测技术等。&  ⑴ 防火墙  防火墙是应用最广的一种防范技术。作为系统的第一道防线,其主要作用是监控可信任网络和不可信任网络之间的访问通道,可在内部与外部网络之间形成一道防护屏障,拦截来自外部的非法访问并阻止内部信息的外泄,但它无法阻拦来自网络内部的非法操作。它根据事先设定的规则来确定是否拦截信息流的进出,但无法动态识别或自适应地调整规则,因而其智能化程度很有限。防火墙技术主要有三种:数据包过滤器(packet filter)、代理(proxy)和状态分析(stateful inspection)。现代防火墙产品通常混合使用这几种技术。&⑵ 入侵检测  入侵检测(IDS—Instrusion Detection System)是近年来发展起来的一种防范技术,综合采用了统计技术、规则方法、网络通信技术、人工智能、密码学、推理等技术和方法,其作用是监控网络和计算机系统是否出现被入侵或滥用的征兆。1987年,Derothy Denning首次提出了一种检测入侵的思想,经过不断发展和完善,作为监控和识别攻击的标准解决方案,IDS系统已经成为安全防御系统的重要组成部分。&&  入侵检测采用的分析技术可分为三大类:签名、统计和数据完整性分析法。&  ⑶ 协作式入侵监测技术&  独立的入侵监测系统不能够对广泛发生的各种入侵活动都做出有效的监测和反应,为了弥补独立运作的不足,人们提出了协作式入侵监测系统的想法。在协作式入侵监测系统中,IDS基于一种统一的规范,入侵监测组件之间自动地交换信息,并且通过信息的交换得到了对入侵的有效监测,可以应用于不同的网络环境。&&  2. 宿主操作系统层次安全技术&  操作系统是大型数据库系统的运行平台,为数据库系统提供一定程度的安全保护。目前操作系统平台大多数集中在Windows NT和Unix,安全级别通常为C1、C2级。主要安全技术有操作系统安全策略、安全管理策略、数据安全等方面。& &  操作系统安全策略用于配置本地计算机的安全设置,包括密码策略、账户锁定策略、审核策略、IP安全策略、用户权利指派、加密数据的恢复代理以及其它安全选项。具体可以体现在用户账户、口令、访问权限、审计等方面。&  用户账户:用户访问系统的“身份证”,只有合法用户才有账户。& &  口令:用户的口令为用户访问系统提供一道验证。&  访问权限:规定用户的权限。  审计:对用户的行为进行跟踪和记录,便于系统管理员分析系统的访问情况以及事后的追查使用。&&  安全管理策略是指网络管理员对系统实施安全管理所采取的方法及策略。针对不同的操作系统、网络环境需要采取的安全管理策略一般也不尽相同,其核心是保证服务器的安全和分配好各类用户的权限。&  数据安全主要体现在以下几个方面:数据加密技术、数据备份、数据存储的安全性、数据传输的安全性等。可以采用的技术很多,主要有Kerberos认证、IPSec、SSL、TLS、VPN(PPTP、L2TP)等技术。&&  3. 数据库管理系统层次安全技术& &  数据库系统的安全性很大程度上依赖于数据库管理系统。如果数据库管理系统安全机制非常强大,则数据库系统的安全性能就较好。目前市场上流行的是关系式数据库管理系统,其安全性功能很弱,这就导致数据库系统的安全性存在一定的威胁。  由于数据库系统在操作系统下都是以文件形式进行管理的,因此入侵者可以直接利用操作系统的漏洞窃取数据库文件,或者直接利用OS工具来非法伪造、篡改数据库文件内容。这种隐患一般数据库用户难以察觉,分析和堵塞这种漏洞被认为是B2级的安全技术措施。  数据库管理系统层次安全技术主要是用来解决这一问题,即当前面两个层次已经被突破的情况下仍能保障数据库数据的安全,这就要求数据库管理系统必须有一套强有力的安全机制。解决这一问题的有效方法之一是数据库管理系统对数据库文件进行加密处理,使得即使数据不幸泄露或者丢失,也难以被人破译和阅读。&  我们可以考虑在三个不同层次实现对数据库数据的加密,这三个层次分别是OS层、DBMS内核层和DBMS外层。& &  ⑴ 在OS层加密。在OS层无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥合理的管理和使用也很难。所以,对大型数据库来说,在OS层对数据库文件进行加密很难实现。&⑵ 在DBMS内核层实现加密。这种加密是指数据在物理存取之前完成加/解密工作。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功能,可以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之间的接口需要DBMS开发商的支持。&  ⑶ 在DBMS外层实现加密。比较实际的做法是将数据库加密系统做成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的加/解密处理。  采用这种加密方式进行加密,加/解密运算可在客户端进行,它的优点是不会加重数据库服务器的负载并且可以实现网上传输的加密,缺点是加密功能会受到一些限制,与数据库管理系统之间的耦合性稍差。&  下面我们进一步解释在DBMS外层实现加密功能的原理:  数据库加密系统分成两个功能独立的主要部件:一个是加密字典管理程序,另一个是数据库加/解密引擎。数据库加密系统将用户对数据库信息具体的加密要求以及基础信息保存在加密字典中,通过调用数据加/解密引擎实现对数据库表的加密、脱密及数据转换等功能。数据库信息的加/解密处理是在后台完成的,对数据库服务器是透明的。&  按以上方式实现的数据库加密系统具有很多优点:首先,系统对数据库的最终用户是完全透明的,管理员可以根据需要进行明文和密文的转换工作;其次,加密系统完全独立于数据库应用系统,无须改动数据库应用系统就能实现数据加密功能;第三,加解密处理在客户端进行,不会影响数据库服务器的效率。& &  数据库加/解密引擎是数据库加密系统的核心部件,它位于应用程序与数据库服务器之间,负责在后台完成数据库信息的加/解密处理,对应用开发人员和操作人员来说是透明的。数据加/解密引擎没有操作界面,在需要时由操作系统自动加载并驻留在内存中,通过内部接口与加密字典管理程序和用户应用程序通讯。数据库加/解密引擎由三大模块组成:加/解密处理模块、用户接口模块和数据库接口模块。其中,“数据库接口模块”的主要工作是接受用户的操作请求,并传递给“加/解密处理模块”,此外还要代替“加/解密处理模块”去访问数据库服务器,并完成外部接口参数与加/脱密引擎内部数据结构之间的转换。“加/解密处理模块”完成数据库加/解密引擎的初始化、内部专用命令的处理、加密字典信息的检索、加密字典缓冲区的管理、SQL命令的加密变换、查询结果的脱密处理以及加脱密算法实现等功能,另外还包括一些公用的辅助函数。&  数据加/解密处理的主要流程如下:&&  1) 对SQL命令进行语法分析,如果语法正确,转下一步;如不正确,则转6),直接将SQL命令交数据库服务器处理。&&  2) 是否为数据库加/脱密引擎的内部控制命令?如果是,则处理内部控制命令,然后转7);如果不是则转下一步。&  3) 检查数据库加/脱密引擎是否处于关闭状态或SQL命令是否只需要编译?如果是则转6),否则转下一步。  4) 检索加密字典,根据加密定义对SQL命令进行加脱密语义分析。&  5) SQL命令是否需要加密处理?如果是,则将SQL命令进行加密变换,替换原SQL命令,然后转下一步;否则直接转下一步。&  6) 将SQL命令转送数据库服务器处理。&&  7) SQL命令执行完毕,清除SQL命令缓冲区。  以上以一个例子说明了在DBMS外层实现加密功能的原理。& &  结束语&  本文对数据库系统安全防入侵技术进行综述,提出了数据库系统的安全体系三个层次框架,并对三个层次的技术手段展开描述。文中还以在DBMS外层实现加密功能的原理为例,详细说明了如何应用数据库管理系统层次的安全技术。&  数据库系统安全框架的三个层次是相辅相承的,各层次的防范重点和所采取的技术手段也不尽相同,一个好的安全系统必须综合考虑核运用这些技术,以保证数据的安全。&这是一个程序猿的独立博客,主要分享与编程技术有关的内容,包括.NET、数据库、WEB前端、网站开发与建设、各种开发工具和插件等。
这里也是博主记录工作经验和生活感悟的地方。
PS:博主是一名.NET程序员,也是一名草根站长,目前主要从事ASP.NET网站开发工作,更多信息请点击。
文章总数:239
评论总数:108
浏览总数:372679
本月文章:1
本站作品采用进行许可。当前位置:&&&&&&&&&&
Mozilla数据库出现漏洞 开发人员数万电邮或遭窃取
来源:深窗综合&|& 14:53&编辑:彭超武
Mozilla数据库出现漏洞 开发人员数万电邮或遭窃取
火狐浏览器开发商Mozilla近日宣布,由于数据库存在漏洞,Mozilla开发人员的数万个电子邮件地址和加密密码可能遭到黑客窃取。
Mozilla上周五通过博客发表声明称,从6月23日开始的约30天时间内,由于一台服务器漏洞导致数据公开,约有7.6万个电子邮件地址和4000个密码曝光。尽管没有证据表明这些数据被外界获取,但Mozilla表示,当前的调查结果并不能排除这种可能性。
Mozilla表示,即便黑客获得了这些电子邮件和密码,他们也无法进入Mozilla开发者网络(MDN)账户,但他们或许能进入由相同密码管理的其他用户账户。在数据的一个数据&清理&进程失败之后,这个漏洞被激活,导致电子邮件地址和密码被清理到一个可公开读取的服务器上。
Mozilla开发者关系主管斯托米&彼得斯(Stormy Peters)和运营安全经理乔伊&史蒂文森(Joe Stevensen)在声明中表示:&我们一直致力于保护隐私和安全,并对这起事件引起的任何不便和担忧感到抱歉。&
声明称:&加密密码都是一些有防护能力的杂乱信息,它们本身无法用于认证MDN网站,不过有可能一些MDN用户在非Mozilla网站或认证系统中使用了原始的MDN密码。我们已经向受影响用户发送了电子邮件。对于那些电子邮件和加密密码都泄露的用户,我们建议他们对任何类似的密码进行修改。除了通知用户和建议短期解决方法,我们还会查看现有的程序和原则,降低未来发生类似事件的可能性。&
的相关阅读:
窗花有话说
深窗公众平台

我要回帖

更多关于 android 本地数据库 的文章

 

随机推荐