如何有效地进行B-S web系统黑客安全测试
2013-05-29 11:40
309 查看
时下,互联网产品层出不穷,“开发周期短”是大部分产品的特点,如何在短时间内保证测试的质量至关重要,尤其是网络安全方面的测试。本文概要阐述了一般B/S架构系统安全测试要点与防范方法。
安全性测试主要是测试系统在没有授权的内部或者外部用户对系统进行攻击或者恶意破坏时如何进行处理,是否仍能保证数据和页面的安全。一般情况下,测试要从以下方面考虑:
一.身份验证
系统安全的第一道关,破解系统的最直接方法就是破解登录。例如:口令暴力破解,如果登录未做任何限制,“黑客”可以遍历简单或复杂密码集,模拟发出登录请求,直至成功为止。
防范方法:使用验证码,并把验证码校验与登录过程放于同一请求中
二.文件操作
一般漏洞在于文件的上传,如果未做好这方面的控制,“黑客”可以随意的控制服务器,做一切想做的事情。例如:上传一个带有shell脚本功能的jsp页面到指定目录,通过URL访问,便可以做应用服务器的远程操控。
防范方法:路径不能穿越(即是上传文件路径不能在前台体现,类似包含../../等),并且文件后缀可以通过白名单控制
三.跨站脚本
网站攻击的常用手段之一,可以通过网页输入域中写入js脚本恶意攻击,例如获取该站点的关键的cookie信息,或者直接导航至其他站点。
防范方法:对于服务器返回的字符序列,必须加上HTML编码
四.SQL注入
就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令,一般原因是应用程序中使用字符串联结方式组合SQL指令,该类攻击危害极大,它可以任意的修改和删除数据表信息。
防范方法:转义敏感字符和使用占位符传参
安全性测试主要是测试系统在没有授权的内部或者外部用户对系统进行攻击或者恶意破坏时如何进行处理,是否仍能保证数据和页面的安全。一般情况下,测试要从以下方面考虑:
一.身份验证
系统安全的第一道关,破解系统的最直接方法就是破解登录。例如:口令暴力破解,如果登录未做任何限制,“黑客”可以遍历简单或复杂密码集,模拟发出登录请求,直至成功为止。
防范方法:使用验证码,并把验证码校验与登录过程放于同一请求中
二.文件操作
一般漏洞在于文件的上传,如果未做好这方面的控制,“黑客”可以随意的控制服务器,做一切想做的事情。例如:上传一个带有shell脚本功能的jsp页面到指定目录,通过URL访问,便可以做应用服务器的远程操控。
防范方法:路径不能穿越(即是上传文件路径不能在前台体现,类似包含../../等),并且文件后缀可以通过白名单控制
三.跨站脚本
网站攻击的常用手段之一,可以通过网页输入域中写入js脚本恶意攻击,例如获取该站点的关键的cookie信息,或者直接导航至其他站点。
防范方法:对于服务器返回的字符序列,必须加上HTML编码
四.SQL注入
就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令,一般原因是应用程序中使用字符串联结方式组合SQL指令,该类攻击危害极大,它可以任意的修改和删除数据表信息。
防范方法:转义敏感字符和使用占位符传参
相关文章推荐
- 如何进行有效地辩论
- 如何更加有效地使用PowerPoint进行演示或演讲:你真的会用PowerPoint吗?
- 人工智能:教品牌如何有效地利用Twitter和Facebook进行营销
- 如何有效地进行动态跟踪分析
- 如何有效地进行运算符重载 (选择自 vcmfc 的 Blog )
- 如何进行有效地表达
- 如何更加有效地使用PowerPoint进行演示或演讲:你真的会用PowerPoint吗?
- 如何有效地对时间进行管理
- 如何有效地进行动态跟踪分析
- 如何有效地对时间进行管理
- 设计之路:如何进行软件需求分析?
- Win8.1正式版系统下该如何进行蓝牙设备的连接的设置
- testDirector如何对软件测试过程进行管理
- 如何对S3C6410的产品进行量产?
- 如何在Eclipse开发环境进行android应用调试
- 如何使自己的网站与UC进行用户整合
- 如何使用struts2对集合参数进行验证
- 关于 XcodeGhost , 如何进行保护APP安全性
- 操作分布式文件之四:如何进行集群内文件复制和并行复制
- 如何进行机器学习