论文部分内容阅读
摘 要:针对高校网站中存在的安全问题,本文设计了一套高校网站安全检查技术规范,方便高校网站建设和使用过程中及时发现和解决安全问题。
关键词:网站;安全;技术规范
中图分类号:TP309文献标识码:B文章编号:1673-8454(2010)15-0043-02
一、引言
随着Web应用的发展,高校网站建设在促进高校信息化发展过程中发挥着不可替代的作用,然而高校网站由于存在安全隐患而可能遭受到各种攻击,如图1所示。[1]研究高校网站安全检查技术规范的目的是为查找服务器和网站中的不安全设置、漏洞提供一个标准,方便及时消除安全隐患,确保网站不被攻击、篡改,使其安全稳定运行。[2]
二、安全检查技术规范
安全检查技术规范从网站运行的环境和网站自身两个大的方面来进行设计。网站运行的环境包括操作系统、系统安全漏洞、安全防护软件、Web服务环境四个方面,网站自身包括网站程序设计和网站内容两个方面。如图2所示。具体规范设计如下:
1.操作系统检查
(1)系统安装
是否只安装了必需的服务软件,对网站服务只安装Web服务软件、FTP管理软件、数据库软件和备份工具软件,已安装的管理软件和工具软件不能存在已知的漏洞,其他与服务功能无关的软件均不能安装,以提供最小化的功能,减少可能的漏洞。
(2)磁盘分区配置
Windows系统磁盘分区应全部使用NTFS格式,实现文件访问权限设置。网站和应用系统不应安装在系统分区,避免网站安全漏洞影响操作系统安全。Linux系统应使用ext3分区格式。
(3)系统更新
操作系统补丁是否升级到最新,避免操作系统存在已知的安全漏洞。
(4)系统帐号
1)系统帐号设置:是否使用了强密码,密码是否定期更换。Windows系统应禁用Guest帐号,防止Guest帐号被利用。Linux系统应限制用户通过su命令使用root权限。
2)系统帐号变动:是否有异常的帐号变动,如增加新帐号,已禁用帐号被激活或权限提升等。
(5)系统服务
1)系统服务设置:是否只开启必需的系统服务,不使用的默认服务均应停止。
2)系统服务状态变动:是否有不正常的服务变动,如已禁用服务被开启,增加未知的服务等。
(6)系统日志
1)系统日志设置:是否对系统日志进行了正确设置,应确保能够记录系统重要事件,并自动保存至少90天的系统日志以便事后分析排查。
2)系统日志内容:是否有异常事件报警,以便及时发现异常事件。
(7)注册表设置
是否修改了Windows系统注册表中9项不安全的默认设置。
(8)网络协议
是否禁用了不必要的网络协议,包括默认开启的NetBios协议。
(9)远程管理限制
远程管理端口是否限定了访问范围,应仅供维护人员计算机IP地址登录。
(10)运行状态
1)检查CPU使用率是否在正常范围内;检查是否存在异常的系统进程,以便及时发现木马或病毒等恶意程序;检查网络连接,是否存在异常的网络连接。
2)通过服务器指示灯或硬件监控软件检查服务器硬件运行是否正常,以便及时发现设备硬件故障。
2.安全防护软件
(1)安装设置
是否安装了防病毒软件和防火墙软件并开启了实时防护。
(2)更新升级
安全防护软件是否设置为自动升级,病毒库、特征库是否更新到最新。
(3)防护日志
安全防护软件的防护日志是否有安全事件报警,如删除恶意软件、阻止入侵等,检查安全软件处理是否成功。
3.系统安全漏洞
(1)信息泄露
通过网站浏览、搜索引擎等公开信息获取途径,是否能够获得包括操作系统类型、应用类型、用户帐号、系统配置等信息,并直接发现漏洞。
(2)端口扫描
通过网站浏览、搜索引擎等公开信息获取途径,是否能够获得包括操作系统类型、应用类型、用户帐号、系统配置等信息,并直接发现漏洞。
(3)溢出测试
是否能够通过系统溢出攻击直接获得系统控制权限。注意溢出测试可能导致系统死机,应谨慎进行。
(4)SQL注入
是否具备防止SQL注入的过滤、屏蔽措施,防止通过SQL注入获取、篡改、控制网站数据库中的信息。
(5)跨站脚本
通过Web扫描软件检查是否存在跨站脚本(XSS)漏洞,使攻击者可以借助网站来攻击访问网站的用户。
(6)Web访问控制漏洞
针对Web及数据库服务器进行检查,包括:1)应用系统架构是否能够防止用户绕过系统直接修改数据库;2)身份认证模块是否能够防止非法用户绕过身份认证;3)数据库接口模块是否能够防止用户获取系统权限;4)文件接口模块是否能够防止用户获取系统文件;5)是否存在其他访问控制安全漏洞。
(7)代码检查
是否存在会导致安全问题的不安全编码技术和漏洞,包括:跨站脚本漏洞、SQL注入漏洞、缓冲区溢出、其他编程错误和漏洞。
(8)辅助软件漏洞
除操作系统、服务软件和数据库以外,系统中安装使用的辅助软件,是否存在安全漏洞或错误设置。
(9)Cookie处理
是否存在不安全的Cookie使用处理,如使用Cookie保存密码等敏感信息,使入侵者可能通过篡改Cookie内容,获取用户帐号。
(10)后门程序检查
是否存在遗留的后门和调试选项,导致被入侵者利用,实施攻击。
(11)密码破解
通过字典方式或者通过穷举法破解用户密码,检查是否存在可以快速破解的弱密码。
(12)敏感信息保护
检查分析是否存在通过网络进行密码或敏感信息的明文传输。
4.Web服务环境检查
(1)网站运行环境配置
是否只提供网站运行所需的最小化程序运行环境,减少可能的漏洞,包括:删除未使用的模块、服务扩展设置、扩展映射,删除默认虚拟目录,包括网络管理和网络打印。
(2)网站安装
是否按规范对网站安装,保证系统基本安全性和易于维护,包括:
1)网站安装目录命名应采用:D:网站IP地址网站中文名称网站拼音简称;
2)网站日志目录命名应采用:D:IIslog网站编号;
3)在IIS中配置网站时,网站名称应与登记信息一致,主机头值与域名一致。
(3)网站权限设置
是否对网站权限进行合理设置,实现网站安全隔离,减小网站被攻击后对系统安全的影响,包括:
1)网站用户权限隔离;
2)Web上传目录权限设置;
3)数据库文件权限设置。
(4)错误页面设置
是否使用了自定义错误页面,屏蔽默认的错误信息,防止通过默认错误页面泄露网站设计、配置等重要信息。
(5)Web日志设置
应正确设置网站日志内容格式和保存方式,以便事后分析排查。
(6)Web服务软件更新升级
已安装的Web服务软件包括中间件等,是否存在已知的安全漏洞,一般应升级到最新的稳定版,但要保证网站系统能够正确运行。
(7)中间件和脚本解析环境设置
对于Tomcat应设置以普通用户的权限运行,防止客户端浏览Web目录,并关闭管理页面,防止非法用户通过Web方式取得管理权限。
对于PHP应仅作为Apache的模块运行,并启用安全模式,增强PHP环境安全。
5.网站内容
(1)前台信息
网站前台页面运行是否正常,是否存在需要更新的信息,是否存在异常内容,留言、讨论等动态栏目中是否存在违规言论和信息。
(2)网站数据库
数据库帐号是否发生异常变化,是否存在异常的帐号、数据表和内容,以便及时发现SQL注入攻击。
(3)网站日志
网站日志记录是否完整详细,是否存在异常内容,包括网站后台操作日志和Web日志。
(4)网站访问控制
1)网站前台是否设置了访问控制,一般应包括匿名访问、标志访问和认证访问(分别对应公开、对内和认证授权)三种控制方式;
2)网站后台是否设置了访问控制,网站后台只能使用限定IP地址登录认证后进行后台管理或内容维护;
3)网站访问控制策略是否发生了异常改变。
(5)数据备份
网站数据是否按计划备份,备份文件是否可用。
6.网站程序设计
(1)后台程序
网站后台运行是否正常,后台程序是否需要升级或更新、是否存在已知漏洞。
(2)网站文件
网站存储空间中是否存在异常文件以便及时发现病毒、木马或其他恶意程序。
三、应用成效
按照上述技术规范在对某高校的49个在学校网络中心运行的对外服务网站进行了检查,发现有17个网站存在安全隐患,占检查网站总数的34%。检查中发现的主要安全隐患包括跨站脚本、SQL注入、Cookie处理(Cookie manipulation)、绕过验证和弱口令等。学校网站存在的跨站脚本漏洞占漏洞总数的39%,SQL注入漏洞占漏洞总数的26%,绕过验证漏洞占漏洞总数的9%,弱口令漏洞占漏洞总数的4%,具体统计如表1所示。
四、结束语
网站安全检查技术规范为我们实施网站安全检查提供了一个规范和参考,对我们提高网站安全检查的效率和效果能够起到一些帮助。
参考文献:
[1]吴亚非,李新友,禄凯.信息安全风险评估[M].北京:清华大学出版社,2007.
[2]郑理华,刘真.基于恶意注入和行为监控的SQL注入安全测试和评估[M].湖南:国防科学技术大学研究生院硕士学位论文,2006.
(编辑:杨馥红)
关键词:网站;安全;技术规范
中图分类号:TP309文献标识码:B文章编号:1673-8454(2010)15-0043-02
一、引言
随着Web应用的发展,高校网站建设在促进高校信息化发展过程中发挥着不可替代的作用,然而高校网站由于存在安全隐患而可能遭受到各种攻击,如图1所示。[1]研究高校网站安全检查技术规范的目的是为查找服务器和网站中的不安全设置、漏洞提供一个标准,方便及时消除安全隐患,确保网站不被攻击、篡改,使其安全稳定运行。[2]
二、安全检查技术规范
安全检查技术规范从网站运行的环境和网站自身两个大的方面来进行设计。网站运行的环境包括操作系统、系统安全漏洞、安全防护软件、Web服务环境四个方面,网站自身包括网站程序设计和网站内容两个方面。如图2所示。具体规范设计如下:
1.操作系统检查
(1)系统安装
是否只安装了必需的服务软件,对网站服务只安装Web服务软件、FTP管理软件、数据库软件和备份工具软件,已安装的管理软件和工具软件不能存在已知的漏洞,其他与服务功能无关的软件均不能安装,以提供最小化的功能,减少可能的漏洞。
(2)磁盘分区配置
Windows系统磁盘分区应全部使用NTFS格式,实现文件访问权限设置。网站和应用系统不应安装在系统分区,避免网站安全漏洞影响操作系统安全。Linux系统应使用ext3分区格式。
(3)系统更新
操作系统补丁是否升级到最新,避免操作系统存在已知的安全漏洞。
(4)系统帐号
1)系统帐号设置:是否使用了强密码,密码是否定期更换。Windows系统应禁用Guest帐号,防止Guest帐号被利用。Linux系统应限制用户通过su命令使用root权限。
2)系统帐号变动:是否有异常的帐号变动,如增加新帐号,已禁用帐号被激活或权限提升等。
(5)系统服务
1)系统服务设置:是否只开启必需的系统服务,不使用的默认服务均应停止。
2)系统服务状态变动:是否有不正常的服务变动,如已禁用服务被开启,增加未知的服务等。
(6)系统日志
1)系统日志设置:是否对系统日志进行了正确设置,应确保能够记录系统重要事件,并自动保存至少90天的系统日志以便事后分析排查。
2)系统日志内容:是否有异常事件报警,以便及时发现异常事件。
(7)注册表设置
是否修改了Windows系统注册表中9项不安全的默认设置。
(8)网络协议
是否禁用了不必要的网络协议,包括默认开启的NetBios协议。
(9)远程管理限制
远程管理端口是否限定了访问范围,应仅供维护人员计算机IP地址登录。
(10)运行状态
1)检查CPU使用率是否在正常范围内;检查是否存在异常的系统进程,以便及时发现木马或病毒等恶意程序;检查网络连接,是否存在异常的网络连接。
2)通过服务器指示灯或硬件监控软件检查服务器硬件运行是否正常,以便及时发现设备硬件故障。
2.安全防护软件
(1)安装设置
是否安装了防病毒软件和防火墙软件并开启了实时防护。
(2)更新升级
安全防护软件是否设置为自动升级,病毒库、特征库是否更新到最新。
(3)防护日志
安全防护软件的防护日志是否有安全事件报警,如删除恶意软件、阻止入侵等,检查安全软件处理是否成功。
3.系统安全漏洞
(1)信息泄露
通过网站浏览、搜索引擎等公开信息获取途径,是否能够获得包括操作系统类型、应用类型、用户帐号、系统配置等信息,并直接发现漏洞。
(2)端口扫描
通过网站浏览、搜索引擎等公开信息获取途径,是否能够获得包括操作系统类型、应用类型、用户帐号、系统配置等信息,并直接发现漏洞。
(3)溢出测试
是否能够通过系统溢出攻击直接获得系统控制权限。注意溢出测试可能导致系统死机,应谨慎进行。
(4)SQL注入
是否具备防止SQL注入的过滤、屏蔽措施,防止通过SQL注入获取、篡改、控制网站数据库中的信息。
(5)跨站脚本
通过Web扫描软件检查是否存在跨站脚本(XSS)漏洞,使攻击者可以借助网站来攻击访问网站的用户。
(6)Web访问控制漏洞
针对Web及数据库服务器进行检查,包括:1)应用系统架构是否能够防止用户绕过系统直接修改数据库;2)身份认证模块是否能够防止非法用户绕过身份认证;3)数据库接口模块是否能够防止用户获取系统权限;4)文件接口模块是否能够防止用户获取系统文件;5)是否存在其他访问控制安全漏洞。
(7)代码检查
是否存在会导致安全问题的不安全编码技术和漏洞,包括:跨站脚本漏洞、SQL注入漏洞、缓冲区溢出、其他编程错误和漏洞。
(8)辅助软件漏洞
除操作系统、服务软件和数据库以外,系统中安装使用的辅助软件,是否存在安全漏洞或错误设置。
(9)Cookie处理
是否存在不安全的Cookie使用处理,如使用Cookie保存密码等敏感信息,使入侵者可能通过篡改Cookie内容,获取用户帐号。
(10)后门程序检查
是否存在遗留的后门和调试选项,导致被入侵者利用,实施攻击。
(11)密码破解
通过字典方式或者通过穷举法破解用户密码,检查是否存在可以快速破解的弱密码。
(12)敏感信息保护
检查分析是否存在通过网络进行密码或敏感信息的明文传输。
4.Web服务环境检查
(1)网站运行环境配置
是否只提供网站运行所需的最小化程序运行环境,减少可能的漏洞,包括:删除未使用的模块、服务扩展设置、扩展映射,删除默认虚拟目录,包括网络管理和网络打印。
(2)网站安装
是否按规范对网站安装,保证系统基本安全性和易于维护,包括:
1)网站安装目录命名应采用:D:网站IP地址网站中文名称网站拼音简称;
2)网站日志目录命名应采用:D:IIslog网站编号;
3)在IIS中配置网站时,网站名称应与登记信息一致,主机头值与域名一致。
(3)网站权限设置
是否对网站权限进行合理设置,实现网站安全隔离,减小网站被攻击后对系统安全的影响,包括:
1)网站用户权限隔离;
2)Web上传目录权限设置;
3)数据库文件权限设置。
(4)错误页面设置
是否使用了自定义错误页面,屏蔽默认的错误信息,防止通过默认错误页面泄露网站设计、配置等重要信息。
(5)Web日志设置
应正确设置网站日志内容格式和保存方式,以便事后分析排查。
(6)Web服务软件更新升级
已安装的Web服务软件包括中间件等,是否存在已知的安全漏洞,一般应升级到最新的稳定版,但要保证网站系统能够正确运行。
(7)中间件和脚本解析环境设置
对于Tomcat应设置以普通用户的权限运行,防止客户端浏览Web目录,并关闭管理页面,防止非法用户通过Web方式取得管理权限。
对于PHP应仅作为Apache的模块运行,并启用安全模式,增强PHP环境安全。
5.网站内容
(1)前台信息
网站前台页面运行是否正常,是否存在需要更新的信息,是否存在异常内容,留言、讨论等动态栏目中是否存在违规言论和信息。
(2)网站数据库
数据库帐号是否发生异常变化,是否存在异常的帐号、数据表和内容,以便及时发现SQL注入攻击。
(3)网站日志
网站日志记录是否完整详细,是否存在异常内容,包括网站后台操作日志和Web日志。
(4)网站访问控制
1)网站前台是否设置了访问控制,一般应包括匿名访问、标志访问和认证访问(分别对应公开、对内和认证授权)三种控制方式;
2)网站后台是否设置了访问控制,网站后台只能使用限定IP地址登录认证后进行后台管理或内容维护;
3)网站访问控制策略是否发生了异常改变。
(5)数据备份
网站数据是否按计划备份,备份文件是否可用。
6.网站程序设计
(1)后台程序
网站后台运行是否正常,后台程序是否需要升级或更新、是否存在已知漏洞。
(2)网站文件
网站存储空间中是否存在异常文件以便及时发现病毒、木马或其他恶意程序。
三、应用成效
按照上述技术规范在对某高校的49个在学校网络中心运行的对外服务网站进行了检查,发现有17个网站存在安全隐患,占检查网站总数的34%。检查中发现的主要安全隐患包括跨站脚本、SQL注入、Cookie处理(Cookie manipulation)、绕过验证和弱口令等。学校网站存在的跨站脚本漏洞占漏洞总数的39%,SQL注入漏洞占漏洞总数的26%,绕过验证漏洞占漏洞总数的9%,弱口令漏洞占漏洞总数的4%,具体统计如表1所示。
四、结束语
网站安全检查技术规范为我们实施网站安全检查提供了一个规范和参考,对我们提高网站安全检查的效率和效果能够起到一些帮助。
参考文献:
[1]吴亚非,李新友,禄凯.信息安全风险评估[M].北京:清华大学出版社,2007.
[2]郑理华,刘真.基于恶意注入和行为监控的SQL注入安全测试和评估[M].湖南:国防科学技术大学研究生院硕士学位论文,2006.
(编辑:杨馥红)