• 首页
  • 资料下载
  • IT书店
  • 论坛交流
  • 最新文章
  • 更多
    • 壁纸大全
    • 天气预报
    • QQ群联盟
    • 网址导航
    • 团队博客
    • 联系我们
设软件水平考试网为首页 | 注册 | 登陆

  • 财会类
    • 财会类
    • 会计从业
    • 中级会计
    • 经济师
    • 注册税务师
    • 银行从业
    • 内审师
    • 资产评估
    • 统计师
    • 审计师
    • 更多>>
  • 建筑类
    • 建筑类
    • 一级建造师
    • 二级建造师
    • 造价工程师
    • 咨询工程师
    • 监理工程师
    • 房地产估价
    • 结构工程师
    • 注册建筑师
    • 土地估价师
    • 更多>>
  • 职业资格
    • 职业资格
    • 证券从业
    • 期货从业
    • 司法考试
    • 教师资格
    • 秘书资格
    • 保险从业
    • 导游资格
    • 人力资源
    • 电子商务
    • 更多>>
  • 公务员
    • 公务员
    • 行测
    • 申论
    • 面试
    • 真题大全
    • 公考心得
    • 公考辅导
    • 招警
    • 更多>>
  • 外贸类
    • 外贸类
    • 报关员
    • 报检员
    • 国际商务师
    • 单证员
    • 货运代理
    • 外销员
    • 更多>>
  • 医药类
    • 医药类
    • 执业护士
    • 中药师
    • 西药师
    • 临床医师
    • 临床助理
    • 中医医师
    • 口腔医师
    • 公共卫生
    • 更多>>
  • 外语类
    • 外语类
    • CET4
    • CET6
    • 职称英语
    • 托福
    • 雅思
    • BEC
    • 金融英语
    • 小语种
    • 更多>>
  • 学历考试
    • 学历考试
    • 高考
    • 成考
    • 考研
    • 自考
    • 中考
    • 考博
    • 在职硕士
    • 更多>>
  • 计算机类
    • 计算机类
    • 计算机二级
    • 计算机等级
    • 软件水平
    • 微软认证
    • 思科认证
    • 更多>>
  • 全部分类
    • 全部分类
    • 所有考试
    • 更多>>

 下载|书店 | 论坛|(QQ群:32090693)
  • 优易学品牌推荐:
  • 软件资料下载
  • 软件图书购买
软考首页
考试书店 | 资讯 | 报考指南 | 初级 | 中级 | 高级 | 备考辅导 | 历年真题 | 模拟题 | IT技术 | 专业英语 | 心得 | 资料中心 | 论坛交流
您现在的位置: 优易学 >> 计算机 >> 软件水平考试 >> 中级资格 >> 数据库系统工程 >> 正文
 
站内搜索:
软考数据库资料:浅谈数据库的攻击
来源:优易学  2010-1-12 16:46:58   【优易学:中国教育考试门户网】   资料下载   IT书店

 

5。数据库的利用。  
  如果程序中的连接用户权限极小,甚至多数表只能读,你就很难有所作为了。这时所能做的是能猜出表名和字段名来进行删除数据或表的操作。  
  INSERT语句利用起来讨厌一些,主要是里面有好多列,而且还要处理掉最后的“)”。  
  我就以我最熟悉的MS SQL Server来说一些吧。它的默认端口号是1433,你用telnet连一下服务器的这个端口,如果能连上去一般是装了MS SQL Server,当然这是可以改掉的。  
  好了,说一说数据库的利用。 
  
  如果对方的数据直接在Web服务器上而且你知道端口号,有帐号就干脆用SQL Analyzer来直接连接数据库。在它里面可以执行SQL语句。常用的是存储过程master.dbo.xp_cmdshell,这是一个扩展存储过程,它只有一个参数,把参数做为系统命令来装给系统执行。  
  如果是管理用户就有权执行这个存储过程,而且这时可以执行很多操作,如用ipconfig来看ip设置,用net user来看系统用户。不过用net user /add 用户名 密码并不一定成功,有时会返回一个“指定的登录会话不存在”而不能执行,原因我还不清楚。  
  如果没有权限也不要紧,MS SQL Server有个漏洞,你可以创建一个临时存储过程来执行,就可以绕过去,如:  
  CREATE PROC #cmdshell(@cmdstr varchar(200))  
  AS  
  EXEC master.dbo.xp_cmdshell @cmdshell  
  当然这时是没有权限执行net user /add等的,不过可以查看,可以创建文件。  
  反复用echo创建一个FTP脚本,把木马传到一个FTP站点上,然后用存储过程调用ftp来利用脚本来下载并安装,然后......呵呵:)  
  如果数据库没有装在Web服务器上所以没有找到或改了端口号而一时找不到还是有办法的。  
  如果数据库服务器直接从Internet上无法访问,你可以利用程序里的漏洞来删除、修改数据或加入javascript语句到数据库,通常他们显示本来应该自己人录入的数据时不去过滤<>,所以可以用javascript把它转到其他站点上或做些什么。  
  如果只是改了端口号就要看程序里数据库用户的权限了,如果是管理用户,可以用’ exec master.dbo.xp_cmshell ’net user /add aaa bbb来创建一个操作系统用户,然后再用’ exec master.dbo.xp_cmdshell ’net localgroup /add administrators aaa来把它升级为超级用户。  
  如果这台服务器的NetBIOS绑定了TCP/IP,而且C$、D$等管理共享存在,呵呵,恭喜了,你在DOS命令下用net use Z: \ip address$ "bbb" /user:"aaa"就可以把对方的整个C盘映射为你本地的一个网络驱对器Z:了。  
  6。数据库里如何留后门。  
  创建用户的sp_addlogin、权限分配的sp_addsrvrolemember是用一条语句来判断用户是否有权限执行,也就是说用户都可以执行它,它再来判断用户是否有权执行。  
  当你攻入一个数据库时可以用它的Enterprise Manager来连上去修改这些存储过程,因为这些存储过程都没有加密。  
  可以在判断的地方加个条件,当这个条件满足时就不直接执行下去而不管是什么权限的用户调用它。  
  不过改完要注意,这时它的Type成了User,要想改回可以到sysobjects表中把name为sp_addlogin的一条删除,然后再把没有改过的相同版本的MS SQL Server的同一条记录拷贝进去就可以了。  
  当然不要忘了这些默认是不能手工修改的,要修改得先把掉SQL Server的参数,改完不要忘了再改回来啊:) 这时只要网站的程序有问题,不管程序中的用户权限如何,你都可以随时创建SQL Server的管理用户。  
  7。数据库扫描工具。  
  ISS DATABASE Scanner  浅谈数据库的攻击(荐) 
  1。突破script的限制。  
  例如,某网页上有一文本框,允许你输入用户名称,但是它限制你只能输入4个字符。许多程序都是在客户端限制,然后用msgbox弹出错误提示。如果你攻击时需要突破此限制,只需要在本地做一个一样的主页,只是取消了限制,通常是去掉VBscript或IavaScript的限制程序,就可以成功突破。  
  如果是javascript做的,干脆临时把浏览器的脚本支持关掉。如果是  
有经验的程序员常常在程序后台再做一遍检验,如果有错误就用response.write或类似的语句输出错误。  
  2。对SQL的突破  
  例如某网页需要你输入用户名称和口令,这样就有两个文本框等待你的输入,现在我们假设有一用户adam,我们不知道他的口令,却想以他的身份登陆。  
  正常情况下,我们在第一个文本框输入adam,第二个文本框输入1234之类的密码,如果密码正确就可以进入,否则报错。  
  程序中的查询语句可能是:  
  sql="select * from user where username=’"&text1.value&"’ and passwd= ’"&text2.value&"’"  
  执行时候就是  
  select * from user where username=’adam’ and passwd=’1234’  
  好了,  
  如果我们在text2里输入的不是1234,而是1234’"&"’or 1=1  
  我们的sql语句就成了,  
  select * from user where username=’adam’ and passwd=’1234’ or 1=1  
  我们就可以进入了。。。  
  有经验的用户就在程序中增加对单引号等特殊字符的过滤。  
  但是,一般人习惯上有两种登录认证方式我就用ASP的VBScript做例子了:  
  一是用select * from ... where username = ’ & Request.Form("username") & "password = " & Request.Form("password"),然后判断结果是否为空来验证。其实还有一种方式:  
  用select * from ... where username = ’ & Request.Form("username"), 然后判断结果集中的密码是否和输入相同来验证,这种方式就安全一些了。

上一页  [1] [2] 

责任编辑:cyth

  • 上一个文章: 软考数据库资料:数据库系统安全技术框架综述
  • 下一个文章: 数据库系统工程师:数据流图的画法
文章搜索:
 相关文章
程控交换机防雷问题
让Trunk成为VLAN之间的"守护神"
Cisco交换机常见问题
第三层交换机处理器收发包问题讲解
核心交换机设计技术未来走向
网络故障难排除五招
山东威海2010年计算机软件水平考试报名通知
资讯推荐
热点资讯
考试资讯
初级辅导
  • 全国各省软考办的地址及联系方式
  • 江西2007年11月软件水平考试成绩公布查询开始
  • 山东2007年11月软件水平考试成绩公布查询开始
  • 新疆2007年11月软件水平考试成绩公布查询开始
  • 湖北省2008年软件水平考试报名预计2月下旬开始
  • 软考、职称、职称资格的解读与三者之间的联系
  • 2009年下半年软件水平考试各科目考试时间表
  • 2009年上半年软件水平考试各科目考试时间表
  • 上海市2010年计算机软件水平考试报名通知
  • 浙江省2009年下半年计算机软件水平考试成绩查询
  • 广域网加速,如何选择网络产品
  • 应对年底网络运维危机
  • ip地址和MAC地址在三层交换机上的绑定
  • VLAN间的单向通信established命令
  • 发现和调用Dll里的函数
  • 递推关系算法
  • 稳步实施IPv6七大原则
  • 中小企业应该如何选型IP电话交换系统
  • 教你揪出伪装木马并清除
  • AES算法的数学基础
辅导专区
中级辅导
模拟试题
历年真题
  • [网络工程]AAA的概念和思科IOS对其配置的简要分析
  • [电子商务]选购防火墙当心5大误区
  • [软件设计]通用权限实现的核心设计思想
  • [网络工程]VPN内无法访问某些WEB站点故障
  • [网络工程]路由技术IP路由选择协议
  • [电子商务]PS高手秘技:如何在设计中出类拔萃
  • [电子商务]CIO选信息化合作伙伴的三个关键条件
  • [电子商务]经济危机中最受CIO青睐的五种技术
  • [软件设计]SharePoint工作流开发的一些概念
  • [软件设计]SharePoint工作流开发:HelloWorldSeque
  • 2009年5月份软考网络管理员每日一练试题 (12月31日
  • 2009年5月份软考网络管理员每日一练试题 (12月30日
  • 2009年上半年软考网络管理员每日一练试题 (12月29
  • 2009年上半年软考网络管理员每日一练试题 (12月28
  • 2009年上半年软考网络管理员每日一练试题 (12月27
  • 2009年上半年软考网络管理员每日一练试题 (12月26
  • 2009年上半年软考网络管理员每日一练试题 (12月25
  • 2009年上半年软考网络管理员每日一练试题 (12月23
  • 2009年上半年软考网络管理员每日一练试题 (12月22
  • 2008年12月软考软件设计师每日一练(12月20日)答
  • 2008年下半年软考信息处理技术员考试上午试题答案
  • 2008年下半年软考网络管理员考试上午试题评析(专家
  • 2008年下半年软考网络工程师考试上午试题评析(专家
  • 2007年上半年软考网络工程师考试下午试题
  • 2007年上半年软考网络工程师考试上午试题
  • 2008年下半年软考软件设计师上午试题参考答案(完整
  • 2008年下半年软考软件设计师下午试题参考答案(完整
  • 2008年下半年软考信息处理技术员真题上午试题专家
  • 2008年下半年软考网络工程师上午试题专家解读
  • 2008年下半年软考网络管理员真题下午试题专家版答
热门课程培训
更多
论坛新帖

关于我们 ┊ 合作加盟 ┊ 广告联系 ┊ 联系我们 ┊ 网站地图 ┊ 网站声明 ┊ 友情链接 ┊ 优易学QQ群联盟 ┊ 最新更新 ┊ 团队博客
热线:010-52880094  传真:010-52880094
投诉意见,请点这里在线提交或24小时QQ热线:53882478
Copyright © 2005-2012 YouYiXue.com All Rights Reserved 京ICP备09036865号-3