基于Web服务的数据库注入攻击与防范

更新时间:2023-08-20 16:09:01 阅读量: 高等教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于Web服务的数据库注入攻击与防范

维普资讯

第 2 9卷第 1期 20 0 8年 2月

Vo. 9 No 1 12 . Fe b.20 08

J u a o o t i a I si t f a e o s ra c n d o l cr o r o r l fN rh Chn n t u e o tr C n ev n y a d Hy re e t c P we n t W i

文章编号:0 2— 6 4 2 0 ) 1— 0 9一 3 1 0 5 3 ( 08 0 0 8 O

基于 We b服务的数据库注入攻击与防范郜激扬(大连理工大学计算中心,辽宁大连 16 2 ) 10 4

摘要:绍了 S L注入攻击的发生原理和完全控制服务器的快捷方法及对 We介 Q b服务器带来极大的危害,给出了相应的 S L执行脚本和对应的防范攻击措施,供开发 We Q以 b程序和架设服务器时参考 . 关键词:Q S L注入; b洞;据库攻击;全防范 We漏数安中圈分类号:P 1 .3 T 3 1 1文献标识码: A

随着网络的普及和发展,网站及其数据库的安

c . l笔者以采用最广泛的 I e I s+A p+MSS L S r r s Q e e v组合为例进行说明. A p页面的数据一般由客户端通过 ps方法提 s ot交给服务器,过处理后再由服务器返回到客户端,经如图 1所示 .一种提交方法是在 U L后面附加参 另 R数, ht:/ t cI/ i. s? i如 t/ At kP Ls ap d=1中 1就是数 p a t

全已成为不容忽视的严峻问题 .过设置高安全级通的网关、安装严格稳定的防火墙,一定程度上保证能安全.对于提供动态 We但 b服务的主机,有这些仅措施是不能够防范攻击的.比如 S L注入攻击, Q因为它利用 S L语法,符串通过 We Q字 b访问正常提交,目前的网关和防火墙都不能有效地防范 .

据,为 gt法 . 2种方法都比较常用,称 e方这如果对提交的数据不作检查处理,可能出现漏洞 .e方则 gt法的模拟比较简单直接,ot法则需要手工构造 ps方

1 S L注入攻击简介 Q对 S L注入攻击目前还没有一种标准的定义, Q

页面 .面以 gt法为例进行说明.下 e方

r一~…

微软技术中心从 2方面进行了描述:脚本注入①式的攻击;恶意用户输入用来影响被执行的 S L② Q脚本. S L注入攻击针对的是开发者编程中的漏洞. Q从理论上说,有基于 S L语言标准的数据库, M 所 Q如 S

客户端~一~

~

~

服务器端一一…~

S LS r r O al, B, yae My Q Q ev, rc D 2 Sb s, S L等都可能成 e e为其攻击目标 .虽然各种数据库软件各有特点,体具代码不尽相同,但原理类似 . Q S L攻击都是利用某些可以提交或修改数据的页面里的漏洞,心构造 S L精 Q语句,让系统执行此类特殊的 S L指令,而获取用 Q从户密码等敏感信息,并获取主机控制权限 .

圈 1普通的数据处理过程

2 1漏洞测试 .

为了确定 We b服务器是否存在漏洞,要在只 ht:/ t cl/ i . s?i t/ A t kP Ls ap d=1后加一个单引号 p a t最“’可以了 .果服务器返回“ T P0”就如 H T 5 0一内部服

务器错误”的信息,说明存在 S L注入漏洞的可则 Q能;果返回“符串‘’如字 1之前有未闭合的引号”则,

2 S L注入攻击方法 Q目前,提供 We b服务的主机越来越多,态网动页的前台脚本一般采用 A p As. e,h, p后台 s, p n tP p J, s数据库则采用 MS S L S re, S L A c s, r. Q e r My Q, c es O a v收稿日期:0 7—1 20 2—1 0

该网站的错误信息过于详细,泄漏数据库的内容,会最容易受到攻击 . 2 2判断数据库类型 .不同的数据库,函数、入方法也不同.般其注一

作者简介:激扬 (9 9 )男,宁大连人,程师,士,郜 16一,辽工硕主要从事计算机网络方面的研究

基于Web服务的数据库注入攻击与防范

维普资讯

水电

学院

20 0 8年 2月

A p搭配的数据库是 A c s s ces或 S L S re,地址 Q evr在栏输入地址:ht:/ tc I/ it s? i= 1; n ( ee t t/ At kP Ls.ap d p a a d s lc

c dhl m s el“n tl c l

r u d n sr tr a/a d’ e o ag o p a mi itao sa a d’

把刚刚增加的账户 aa加到 a m ns a r组中 . a d ii rt s t oht/ Ata k P it s t p:/ tc I/L s.a p?i= 1: b c u d t . d a k p aa

cu t l f m ssbet)> on(,)r ojc c o y s 0

bs ae数据库名 t d k=’:iep b w w otsv . o i s C\ tu\ w ro\ae nd b’

如果显示结果与正常页面一样,么使用的应那该是 S LSre, Q evr因为 ssbet是它的一个系统表, yojc s 第 2个条件式为真;在 A c s而 ces中执行就会发生错误.其他类型数据库的特征表测试方法同样适用 .2 3非法登录系统 .

把得到的数据内容全部备份到 We b服务目录下,下载此文件 .再 至此, b服务器里的数据已全部被盗取 . We 上述攻击过程只是完全控制服务器比较快捷的一

找到用户登录页面 U ro . s,过查看源代 s g ap通 L码可知所需参数 .设用户变量名为 U r a e密码假 sN m,变量名为 U rw,正常提交数据的 U l: s d则 P r为h t// tc I Us g a p? UsNa e= I p t tp: Ata k P/ rLo . s r m n u— Na me& UsPwd= I p t wd、 r n uP

个方法,际上还可以做许多危害性操作,实比如删

除数据、植木马、染病毒等,种感网关和防火墙也就形同虚设 .

3注入攻击防范虽然 S L注入方法多种多样,于动态构造 Q对 S L语句的场合可以采取的预防措施有: Q 1过滤特殊字符,单引号、引号、 .如双斜杠、反斜杠、冒号、格等,别是单引号,空特因为这是构造 S L Q语句的连接符 . 2分配数据库账户权限. .不要轻易使用管理员级的账号,也不要让默认管理账号保留原密码.于对

在服务器端,需要对提交的数据进行处理,正常情况下得到的 S L语句为: QS l t, f m表名 w ee用户列名=‘n u. e c lr e c o hr Ip t N m’ad密码列名=’n uP d ae n Ip tw’

对这

个语句,如果在用户和密码栏都输入“’o r‘

a’=

’a”,

此时得到的语句变为:o r

S l t, r m表名 w ee用户列名= ec l o e c f hr‘

a=’’a d密码列名=’’o a’ a n r‘’=’’ a虽然没有输入正确的用户名和密码,是这条但

用户应该按实际需求分配权限,果对某表只读则如千万不要给予修改、除数据的权限 .删这样即使当前用户被人窃取也不能对系统产生太大危害 . 3正确使用存储过程 .用存储过程可以避免 .使动态构造 S L语句,样黑客也就无从注入了. Q这 而对于系统自带的存储过程, x— mdh l x— t如 p c se,p s l .a t i, p s nd i, p r ma l x e ma l s—

语句依然成立,而导致黑客非法侵入,据外泄 .从数 实际上写法还有很多,“’ r如 o 1=1”通过解读只#,要构造出恒成立的条件即可 .24控制 We . b服务器

能够进行 S L注入的服务器通常都疏于配置, Q 此时可以尝试使用 S L的命令执行请求 .认情 Q默况下 S LS re服务器是运行在 S S E用户级别 Q e r v YTM

mae e ts,时很少用 k w bak等平

到,却功能强大,以调用系统资源,可易被黑客利用, 建议删除. 4确保输入的合法性 .果用户名长度不超过 .如

下的,具有系统管理员的执行与访问权限.在 S LSre有一个名为 x— mdhl的存 Q e r中 v p c se l

1 0个字符,么就要严格限制以防插入有害代码 .那有经验的黑客可以自己构造表单来提交,因此需在客户端和服务器端都进行检查,图 2所示 .如一一一 .

储过程,以调用在本地执行任何命令,时依可此序执行下列语句就能完全控制该 We b服务器.h t/ Ata k P t p:/ tc I/Lit s s.a p?i= 1 n e d a d us r>0

童 .一. . . . .

一~一璺 璺一……

页面会执行异常但可以得到当前连接数据库的用户名 (显示 d o代表为 s)若 b则 a.ht/ tp:/Ata k P it s? i= 1 n d t c I/L s.

a p d a d b—

n am e

( )>0

页面执行异常但可以得到当前连接的数据库名 .h t/ Ata k P/ s. s 'i= 1: x c a tr . p t p:/ tc I Lit a p. d/ e e m se . x c s el“n tus ra a b b/a d’ md h l e e a b d’—

图 2合理的数据处理过程

5对敏感数据加密存储, .如设置用户密码 . 6严格进行错误处理 .果用户请求发生错误, .如

调用 x— mdhl存储过程来执行 n t令,加操 p c se l e命增作系统账户 aa密码为 b b a, b.ht/ tp:/At c P t kI/Lit a p?i= 1: x c a tr x a s. s d e e m se .. p

不必返回详细内容;则黑客就可能通过猜解信息否的方式获取表名、列名等隐藏信息 引.,

基于Web服务的数据库注入攻击与防范

维普资讯

第 2 9卷第 1期

郜激扬:基于 We b服务的数据库注入攻击与防范

4结

[ B O][ 0 7— 5—3 ht:/ w . i oo .o/ E/ L .20 0 0] t/ w w m c sf cr p r t nc n/cc hia t/Ne l t r 0 wset/ 4/cc ht . 0 4. e t2. m 2 0

数据库存储了许多敏感信息,因此在开发 We b

[]陈楠,质.Q 2薛 S L注入攻击的实现和防范[]信息安全 J.与通信保密,0 5 1:8— 0 20 ( )4 5 .

程序以及架设服务器时都应重视 S L注入攻击的 Q防范 .虽然没有绝对的安全,设置好服务器和数据但库的安全选项,做好程序代码的安全性检查工作,才能做到防患于未然,从而最大程度地保证 We b服务器的安全 .

[]胡怡之,源 .于 S L和 Oal数据库安全分析[] 3陈基 Q rce J.计算机与现代化,0 4 1 ) 10—12 20 ( 2:5 5. []程科峰 .惕 S L注入的危险[]计算机安全,04 4警 Q J. 20( ):7—3 . 1 2 1

[]F r s H ue e S L故障诊断与排错技术[ .博, 5 or t o lt. Q e t M]康 译 .京:华大学出版社,0 2北清 20 .

参考文献[] Mi oo hn eh o g et . Q e

vr全回顾 1 c shC i T cn l yC ne S LSre安 r a o r

[]张勇,力,倩 . b环境下的 S L注人攻击的监测 6李薛 We Q与防御[]现代电子技术,0 4 1 ) 13—18 J. 20 (5:0 0.

Daa aeIjcinA tc n ee s sdo e ev r tb s net t k a d D fneBae nW bS r e o aG i a g AO J— n y( mp trCe tr D l n Unv ri fT c n lg Dain 1 6 2 C ia Co ue ne, ai iest o e h ooy, l 0 4, hn ) a y a 1

v o c d,he q ik me h d o o t l g t i A s a t T eoc r n ep n i e f h t c b u S L p uigit e e e r nr du e t u c t o fc n oln he b t c: h cur c r c ls ea ak a o t Q o r o W b s r rae i t r e i p ot t n n

sre o ev rc mpltl s d s rb d,h s t ingn n r o r sfrteWe e e r a od sr e, o e p n i Q ar o t e ey i e c i e t u hebr i g e o m usham o h bsr r e l eci d cr s o dn S L t cr u v a s b g o yt e s rp s gv n,he c re po dig me s r s t uad a ans hs k n fa tc r lo gv n I i ee e c rd v lp n h h c i ti ie t o s n n a u e o g r g i tt i i d o t k a e as i e . t s a rfr n e f e eo i g t e a o W e r c d e a l a r ci g t e s r e . b p o e ur swel se e tn h e r v

Ke r s S L ij t n We a; a b s a ak sf y d f s ywo d: Q e i; bl k d t ae t c;a t ee e n co e a t e n

<>●<>‘0

●>●<>‘0<

●<>●<>‘0

●<>●<>‘0

●0

●0

‘0

●0

●0

‘0

‘0

●0

●0

‘0

●0

●0

‘0

●0

●0

●0

●0

●0

‘0

0

●0

●0

●0

●0

‘0

●0

●0

‘ 0

‘0

●0

‘0

(上接第 8 8页)

De eo v l pm e t a d n n App i a i n b utt lc to a o he PC—BA S— ED o t o lng S s e C n r li y t mi he Bo ksDit i t d a an po t d I dusr n t o srbu e nd Tr s r e n ty DU i g x a M n— i

( rhC iaIsi t fWae n e a c n d olcr o r Z e g h u4 0, hn ) Not hn n t ueo trCo sr n ya dHy ree tcP we, h n z o 5 01 C ia t v i 1Abs r c: t a t The c a a trsi ft e PC— BAS h r ce itcso h ED o t li y t m r nto uc d I r e o fnih t a k ft o k iti u e c n r lng s se a e i r d e . n o d rt i s he ts s0 he b o s dsrb t d o

a r ns o t d c n e fa Xi h o ho i i n s ovic a u o t y t m b u o k it b e nd ta s o e s e nd ta p re e t ro n ua Bo ks p n Ja g u pr n e, n a t mai s se a o t b o s d sr utd a r n p r d i d— c i tsg d b s d o ine a e n PC~BAS ED. e r s ti o d snc h ss tm s a le n t s b o s o Co Th e ul s g o i et i yse i pp id i hi o k h p. mpa ngt i y tm t t rs mi— i r h ss se wih ohe a l irs se s,th s ce ry s pe o i S h PC— BAS a y tm i a la l u r rt i y, O t e ED o toln y t m wilg t wi e a plc to n t a i a n usre b u c n r l g s se i l e d p i ain i he s m l ri d t s a o t i i bo ks’ dsrb to nd ta s rin. o it u in a r n po o i t K

e o ds: yw r PC—BAS ED; o k b o s’ dit bu in a rns rin; n ua Bo o s o sr to nd ta po o Xi h o k h p i t

本文来源:https://www.bwwdw.com/article/p63j.html

Top