靶场科普 | Sybase数据库注入

发表时间:2022-05-02 17:00

本文由“东塔网络安全学院”总结归纳


靶场介绍:

Sybase数据库注入


今天,给大家介绍一下“东塔攻防世界”其中的一个靶场:“Sybase数据库注入”。

一、实验介绍

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的访问