软件水平测试:网站安全测试的两个部分

来源:网络发布时间:2009-01-12
 个人认为网站安全测试应分为两部分:安全体制测试和应用与传输安全测试。以下为简单说明:
  一.安全体制测试
  1.部署与基础结构
  网络是否提供了安全的通信。
  部署拓扑结构是否包括内部防火墙。
  部署拓扑结构中是否包括远程应用程序服务器。
  基础结构安全性要求的限制是什么。
  目标环境支持怎样的信任级别。
  2.输入验证
  是否清楚入口点
  是否清楚信任边界
  是否验证web页输入
  是否对传递到组件或web服务的参数进行验证
  是否验证从数据库中检索的数据
  是否依赖客户端的验证
  应用程序是否易受规范化问题的影响
  应用程序是否易受SQL注入攻击
  应用程序是否易受XSS攻击
  3.身份验证
  是否区分公共访问和受限访问
  是否明确服务帐户要求
  是否在网络中传递明文凭据
  是否实现自己的用户存储
  是否使用表单身份验证
  是否使用SQL身份验证
  是否使用进程帐户
  是否使用服务帐户
  是否考虑使用匿名Internet用户身份
  是否使用原始用户身份
  如何保存数据库连接字符串
  是否强制使用强帐户管理措施
  4.授权
  是否使用深层防御策略
  使用了哪些网关守卫
  是否使用基于角色的方法
  角色是否提供足够的特权隔离
  设计是否使用代码访问安全性
  应用程序使用哪些身份
  5.配置管理
  是否支持远程管理
  是否保存配置存储的安全
  是否隔离管理员特权
  6.敏感数据
  是否存储机密信息
  是否在网络中传递敏感数据
  是否记录敏感数据
  7.会话管理
  如何交换会话标识符
  是否限制会话生存期
  如何确保会话状态存储的安全
  8.加密
  是否开发自己的加密技术
  是否使用合适的密钥大小来应用正确的算法
  如何确保加密密钥的安全性
  9.异常处理
  是否使用结构化的异常处理
  是否向客户端公开太多的信息
  10.审核和日志记录
  是否明确了要审核的关键活动
  是否考虑过如何流动原始调用者身份
  二.应用及传输安全
  1.注册与登录
  2.在线超时
  3.操作留痕
  4.备份与恢复
  5.HTTPS和SSL测试
  6.服务器端的脚本漏洞检验
  7.防火墙测试