一、实验介绍
1. Sybase数据库
美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统。Sybase提供了一套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。
2. Sybase注入
(1)攻击者可以提交其选择的SQL查询,包括DML (Data Manipulation Language,数据操纵语言)和 DDL(Data Definition Language,数据定义语言)语句。
(2)攻击者使用由应用程序提供的预验证通道;因此攻击者可以做应用程序可以做的任何事情。因此攻击者可以轻易控制运行Sybase的服务器。但是一般的帐户都是低特权的用户帐户。如果搜索参数为数字型,攻击者就可以只在数字之后直接注入SQL,无需单引号。
二、实验目的
1. 熟悉Sybase数据库的基本语法
2. 了解Sybase数据库的注入方式和防御方法
三、实验步骤
1. 打开实验环境
2. 按照sql注入的思路进行探测注入点以及注入漏洞的利用
3. 进行总结分析
四、防御方法
1. 确保服务器安装了最新补丁
2. 用防火墙保护 Sybase服务器
3. 以严格的防火墙规则集筛选输出通信量和输入通信量。也许没必要为Sybase 服务器初始化输出TCP连接或者发送任何UDP通信量,这取决于具体配置
4. 应用Sybase 服务器上自身的防火墙规则集。例如,如果正在使用Linux,则使用IPTables。Windows服务器平台的IPSec机制也提供一些保护措施
5. 绝对不要允许Web应用程序以管理账户(sa或sso_role)连接Sybase服务器
6. 如果可能,使用可选的身份验证方法。“标准的”身份验证方式是不够的
7. 如果不使用.Java,不要启用它。事实上,故意删除一些Java组件可能是个不错的想法
8. 类似的,如果不使用外部文件系统访问,不要启用它
9. 如果可能,以低特权用户运行Sybase
10. 应用恰当的文件系统权限,以确保即使用户可以侵入Sybase数据库,也不能获得对服务器的管理控制
11. 确保恰当地限制对xp_cmdshell的访问
原文始发于微信公众号(东塔网络安全学院):靶场科普 | Sybase数据库注入
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论