学位论文 > 优秀研究生学位论文题录展示

Oracle数据库传输协议分析与渗透技术研究

作 者: 蒋彦
导 师: 薛质
学 校: 上海交通大学
专 业: 通信与信息系统
关键词: Oracle数据库 数据库安全 数据库渗透 PL/SQL注入 TNS协议
分类号: TP311.13
类 型: 硕士论文
年 份: 2012年
下 载: 102次
引 用: 0次
阅 读: 论文下载
 

内容摘要


Oracle是一种关系型数据库管理系统,它功能强大、性能卓越,国内外很多重要的站点,尤其是大中型的网站服务器、邮件服务器、文件服务器存储端都采用Oracle数据库,因此,Oracle数据库的安全对众多用户的数据安全有着至关重要的影响。Oracle数据库的安全隐患来源有多种,包括设计时未考虑到的协议脆弱性,开发时的疏忽导致的模块缓冲区溢出漏洞,用户使用过程中部署不恰当和管理过程中的权限控制不严格。本文从Oracle数据库的安全体系入手,简要分析了其数据文件存储、日志管理、程序运行的系统结构,探讨了Oracle数据库客户端和服务器之间连接建立和身份认证协议的脆弱性,利用实验抓取通信协议包进行分析的方法,避开了协议的不开源造成的困难。TNS协议是Oracle网络连接最初使用的协议,它的漏洞可能造成客户端无阻碍的获取服务器的管理信息。而作为安全认证的一环,SID和用户密钥常被攻击者采用字典攻击。利用程序开发漏洞,攻击者甚至可绕过身份认证设施进行PL/SQL注入,直接获取数据。对于有一定权限的数据库访问者,仍然存在超越权限操作的可能。Oracle数据库的内置系统包未及时更新的漏洞模块,二次开发时引入的新漏洞都是难以避免的脆弱点。本文研究了这些数据库漏洞和权限提升方式,探讨了在实验基础上利用这些漏洞进行渗透。当用户具有充分读、写、执行权限时,操作系统rootkit植入机制可移植至Oracle数据库,在渗透提升权限的基础上rootkit可以长期驻留在数据库中,文中提出了一种使用Oracle协议发起的操作系统写入方法,可以方便得通过客户端连接对操作系统执行命令和写入文件。最后完成了完整的攻击渗透测试系统设计和开发,使得攻击能够在自动扫描和探测目标和漏洞的基础上稳定进行,涵盖了攻击过程中的协议部分的连接建立过程、利用多种漏洞进行探测和提升权限的工作,并且,在最后可以达到传输文件、执行系统命令的功能。测试表明其能检测主流Oracle版本,渗透工具有较好的兼容性和隐蔽性。也方便了数据库管理员定期的检测和维护。

全文目录


摘要  3-5
ABSTRACT  5-11
第一章 绪论  11-14
  1.1 Oracle 数据库安全研究背景  11-12
  1.2 研究内容  12
  1.3 论文组织结构  12-14
第二章 Oracle 系统及其安全性  14-20
  2.1 Oracle 系统结构  14-15
    2.1.1 存储器结构  14-15
    2.1.2 进程  15
  2.2 Oracle 安全问题来源  15-17
    2.2.1 Oracle 服务器本身存在的漏洞  16
    2.2.2 网络服务和操作系统的漏洞  16-17
    2.2.3 数据库系统  17
    2.2.4 数据库服务器的漏洞和配置不当  17
  2.3 Oracle 数据库与其他数据库安全对比  17-19
  2.4 本章小结  19-20
第三章 Oracle 传输协议分析和攻击  20-50
  3.1 TNS 协议  20-23
    3.1.1 TNS 连接流程  20-22
    3.1.2 TNS 数据包  22-23
  3.2 Oracle 客户端连接TNS  23-25
    3.2.1 客户端配置  23-24
    3.2.2 服务器端配置  24
    3.2.3 客户端连接Oracle 服务器  24-25
  3.3 攻击TNS 协议  25-37
    3.3.1 探测TNS Listener 监听端口  25-26
    3.3.2 挖掘Oracle 版本信息  26-29
    3.3.3 日志文件攻击  29-31
    3.3.4 缓冲区溢出攻击  31-32
    3.3.5 TNS Listener GIOP 远程拒绝服务泄露漏洞  32
    3.3.6 TNS 远程拒绝服务攻击漏洞  32-37
  3.4 SID 的获取  37-43
    3.4.1 SID 概述  37-38
    3.4.2 SID 破解方式  38-43
  3.5 身份验证的攻击  43-48
    3.5.1 Oracle 身份认证原理  43-45
    3.5.2 Oracle 密码设置和存储规范  45-46
    3.5.3 Oracle 默认用户名密码和解锁方法  46-47
    3.5.4 用户名密码对探测实现  47-48
  3.6 本章小结  48-50
第四章 基于漏洞的渗透和rootkit 植入机制  50-63
  4.1 几种典型Oracle 漏洞  50-53
    4.1.1 Oracle 系统存储过程权限漏洞  50-51
    4.1.2 Oracle 系统权限提升漏洞  51-52
    4.1.3 PL/SQL 注入等开发或管理漏洞  52-53
  4.2 Oracle 数据库rootkit 植入机制  53-57
    4.2.1 Oracle 执行路径变更  53-54
    4.2.2 隐藏数据库用户表  54-55
    4.2.3 隐藏数据库流程  55
    4.2.4 隐藏数据库任务  55-56
    4.2.5 修改数据库内部函数  56-57
  4.3 渗透Oracle 数据库服务器  57-62
    4.3.1 运行操作系统命令  57-58
    4.3.2 访问文件系统  58-60
    4.3.3 利用JAVA 包实现的文件上传技术  60-62
  4.4 本章小结  62-63
第五章 Oracle 综合攻击工具实现  63-73
  5.1 总体结构  63-64
  5.2 功能模块  64-66
    5.2.1 Oracle 主机发现模块  64
    5.2.2 Oracle SID 探测模块  64-65
    5.2.3 Oracle 用户名密码探测模块  65
    5.2.4 SQL 命令运行模块  65-66
    5.2.5 Oracle 信息挖掘模块  66
    5.2.6 Oracle 漏洞利用模块  66
    5.2.7 服务器连接模块  66
  5.3 具体实现  66-67
    5.3.1 前端交互部分  66-67
    5.3.2 Oracle 版本信息、SID、用户名密码探测部分  67
    5.3.3 数据库服务器连接和命令执行部分  67
  5.4 测试结果  67-72
    5.4.1 确定扫描方案  67-69
    5.4.2 Oracle 数据库探测结果  69-70
    5.4.3 Oracle 数据库权限提升和信息挖掘  70-71
    5.4.4 操作系统渗透  71-72
  5.5 本章小结  72-73
第六章 结论和展望  73-75
  6.1 本文总结  73
  6.2 研究展望  73-75
附录Ⅰ Oracle 默认端口清单以及修改办法  75-79
附录Ⅱ 单字节漏洞攻击代码  79-80
参考文献  80-82
致谢  82-83
攻读学位期间发表的学术论文目录  83-84
附件  84-86

相似论文

  1. 基于达梦数据库增强型权限管理机制的研究,TP311.13
  2. 实时数据库安全访问的研究,TP311.13
  3. Oracle数据库解密技术及权限提升漏洞的挖掘研究,TP311.13
  4. 驾照考试系统设计与实现,TP311.52
  5. 基于B/S架构的高职学校考试管理系统的设计和实现,TP311.52
  6. 基于INDEX的ORACLE数据库性能优化研究,TP311.13
  7. 基于Oracle对象的数据库加密应用研究,TP311.13
  8. 电视广告商务平台中Oracle数据库的ADICI设计与优化研究,TP311.13
  9. 数据中心数据安全审计研究,TP311.13
  10. 基于用户行为挖掘的数据库入侵防护机制研究,TP311.13
  11. 公安局指挥中心接处警座席系统的设计与实现,TP311.52
  12. 聚丙烯安全信息管理系统的研究与开发,TQ320.5
  13. 发电量实时监控系统设计与开发,TM76
  14. 基于J2EE架构的山东检验检疫电子业务平台运维管理控制系统的研究与建设,TP311.52
  15. 随机数矩阵加密数据库的方法研究,TP309.7
  16. 税务系统分布式数据库安全策略的研究与实现,TP311.13
  17. 基于ASP技术的食尚网站的设计与实现,TP393.092
  18. 基于SQL语义的安全过滤系统研究与实现,TP391.1
  19. 嵌入式数据库SQLite的安全性研究,TP311.13
  20. 基于ITIL的校园网配置管理数据库研究,G434

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 程序设计 > 数据库理论与系统
© 2012 www.xueweilunwen.com