基于渗透测试的信息安全风险评估过程

2015-01-10 02:55黄伟军
中国管理信息化 2015年15期
关键词:口令本例漏洞

黄伟军

(中国石油新疆职业技能鉴定中心,新疆 克拉玛依 834000)

0 引言

渗透测试作为信息安全等级保护和风险评估的基础性工作,通过对用户单位安全性措施的定期严格评估,帮助用户发现新的威胁,理解当前的信息安全状况,重新分配其内部信息安全资源。信息安全风险评估分析是通过主动渗透测试等多种方式,对信息系统的安全性展开的一种综合评估分析方法。这个过程包括对系统的弱点、技术缺陷或漏洞进行主动分析,发现和挖掘系统中存在的脆弱性漏洞,并利用这些风险漏洞对信息系统中最具价值的核心部分进行攻击,以窃取核心数据及对数据库提权,从而将系统安全风险最大化的暴露出来,然后据此撰写技术脆弱性风险报告,评估当前信息系统的安全现状,并提出风险防范的解决办法。

1 渗透测试

下面通过对某个具有后台数据库的信息管理系统进行SQL注入攻击 (一种利用网页编程人员对用户输入信息的合法性不进行必要验证的漏洞发起的攻击行为),通过程序返回的结果,实现对目标系统核心数据库提取权限的操作。SQL注入攻击方式具有一定代表性,近年来一直困扰着众多企业,成为令企业数据泄密的最大风险。本例中通过模拟实际的攻击路径演示,描述网站对外提供Web服务的安全风险及风险评估的基本过程。

1.1 扫描目标主机

利用端口或漏洞扫描工具对目标主机所在的网段进行探测。本例中使用SuperScan3.0(一款功能强大的免费端口扫描软件)对目标主机进行端口扫描,查看开放的服务及端口信息。

图1 目标主机扫描结果截图

从图1中可看出,目标主机开放了 WWW、FTP和SQL Server服务。可通过密码字典工具对开放的服务,如FTP、SQL Server进行破解,进一步刺探上述服务的弱口令信息,或用漏洞扫描工具对目标主机进行渗透攻击。

1.2 获取数据库登录信息

访问目标Web服务器网址,通过手工验证注入点的方式,发现该管理系统的个人信息显示页面。本例中内部网址http://192.168.10.45/See.asp? ID=46&titleID=36 可能有 SQL 注入漏洞。如图2~3所示,利用旁注Web综合检测程序(数据库爆破工具)对注入点进行攻击,尝试破解网站管理员的账户和密码。

图2 数据库爆破工具使用截图1

图3 数据库爆破工具使用截图2

破解出数据库后台管理帐号,进入目标主机的后台管理页面,找到并登录网站的管理后台。通常的网站后台都允许上传文件,上传ASP木马,通过木马文件远程打开网站服务器的目录,找到Web目录中的conn_*.asp文件。这个文件中通常都存有SQLServer的登录用户名和口令,可以得到SQLServer口令。

1.3 登录目标主机

启动本地的SQLserver客户端,运行SQL命令,在目标主机中添加账户,并利用得到的口令登陆目标数据库。具体步骤如下:

首先,在SQLserver客户端界面上点“新建查询”,输入如下命令激活组件xp_cmdshell。

接着,继续输入命令,添加一个管理员账号。

然后,开启目标服务器的远程桌面连接。

最后,利用新加入的账户和密码通过远程桌面的方式登录到目标服务器,完成渗透测试攻击过程。

2 信息安全风险评估分析

通过对上述渗透测试过程的简单分析,可以看出Web服务器网站一般存在以下几个风险点:

(1)用户可以进行登陆或查询功能的页面;

(2)对外提供服务的端口有弱口令存在;

(3)数据库内容没有加密,登陆口令过于简单;

(4)服务器没有进行最小化安装,存在多余的存储过程或组件;

(5)重要文件系统没有进行加密保存。

根据发现的风险源,可有针对性地制定信息系统安全风险防范的一般过程。首先,加固用户网站代码。本例的网站代码中有显性的注入点,如各种输入表单;也有隐性的注入点,可通过专业工具来进行挖掘。在客户端和服务端,都需对SQL注入点的关键字和特殊字符通过函数进行过滤,并对用户输入从多方面检验其合法性。当SQL语句执行出错时,采用自己定制错误页面的方式防止直接将数据库返回的错误信息显示给用户,以规范代码安全性,完成代码的安全加固。比如本案例中,页面返回的错误信息没有规范处理,也没有对用户输入界面进行数据过滤,使渗透测试攻击者找到了SQL注入点。

其次,准确设置数据库管理系统安全配置项。数据库管理系统常常提供一些安全方面的配置项,比如在SQLServer数据库中,新建一个(而且只建一个)与SA一样权限的超级用户来管理数据库,并使用复杂的密码,同时养成定期修改密码的好习惯。使用Windows身份验证模式,可以使数据库免受大部分Internet工具的侵害。系统自带的一些存储过程很容易被黑客用来攻击或破坏系统,如果不需要,就可以将其删除或禁用,如本例中xp_cmdshell存储过程就需要禁用。

最后,要配置好操作系统的安全功能。Windows操作系统在硬盘分区时就应该选择NTFS作为文件系统的格式,因为NTFS文件系统在性能、安全、可靠性方面提供了很多高级功能,通过它可以实现任意文件或文件夹的加密和权限设置,以及磁盘配额和压缩等高级功能。数据库文件和应用系统文件是攻击的重要目标,需要重点保护。我们可以利用操作系统提供的文件权限设置和加密功能来保护数据库文件。本例中目标服务器中的数据库等重要文件没有加密处理,攻击者通过木马程序得到上述文件后可轻易实现数据库的破解。

3 结语

基于漏洞的渗透测试是当前信息安全评估的主要技术手段。漏洞的攻击途径除操作系统的漏洞外,其他各种中间件软件,如tomcat、websphere的弱口令,以及各种长期没有进行更新的应用系统软件,也是攻击的主要目标源。信息系统的安全性取决于信息系统最薄弱的环节,所以构建立体的、纵深防御的信息安全体系,是信息安全风险评估的最终目标,也是我们信息化安全管理人员不懈努力的方向。

猜你喜欢
口令本例漏洞
漏洞
《思考心电图之176》答案
高矮胖瘦
“1”的加减乘除
口 令
好玩的“反口令”游戏
SNMP服务弱口令安全漏洞防范
三明:“两票制”堵住加价漏洞
视功能分析图例详解
高铁急救应补齐三漏洞