一、用户认证安全的测试要考虑问题:

  1.        明确区分系统中不同用户权限

  2.        系统中会不会出现用户冲突

  3.        系统会不会因用户的权限的改变造成混乱

  4.        用户登陆密码是否是可见、可复制

  5.        是否可以通过绝对途径登陆系统(拷贝用户登陆后的链接直接进入系统)

  6.        用户退出系统后是否删除了所有鉴权标记,是否可以使用后退键而不通过输入口令进入系统

7.        登陆失败次数的限制,防止暴力破解

8.        输入的账户密码不能有含特殊意义的符号或命令语句

9.        设置新密码之后,旧密码是否有效

10.      cookie中是否保存用户名密码,如果保存要加密

11.      防止SQL注入

12.      密码不能明文传输

13.      日志和数据库中是否记录明文密码

14.      网页出错时,不泄露敏感资料

15       页面超时机制的验证

二、系统网络安全的测试要考虑问题:

  1.        测试采取的防护措施是否正确装配好,有关系统的补丁是否打上

  2.        模拟非授权攻击,看防护系统是否坚固

  3.        采用成熟的网络漏洞检查工具检查系统相关漏洞(即用最专业的黑客攻击工具攻击试一下,现在最常用的是NBSI系列和IPhacker IP)

  4.        采用各种木马检查工具检查系统木马情况

  5.        采用各种防外挂工具检查系统各组程序的客外挂漏洞

三、数据库安全考虑问题:

  1.        系统数据是否机密(比如对银行系统,这一点就特别重要,一般的网站就没有太高要求)

  2.        系统数据的完整性(我刚刚结束的企业实名核查服务系统中就曾存在数据的不完整,对于这个系统的功能实现有了障碍)

  3.        系统数据可管理性

  4.        系统数据的独立性

  5.        系统数据可备份和恢复能力(数据备份是否完整,可否恢复,恢复是否可以完整)

B/S与C/S安全性比较

很多用户在提到B/S架构设计的系统后, 第一个疑惑就是,.这个软件安全吗?为什么用户会有这样的疑惑,因为B/S架构放在internet上后,只要有IE浏览器的电脑都可以访问这个系统.而C/S架构只有安装了特定Client软件的用户才可以使用本系统,所以一直以来我们的用户都在担心着B/S的安全问题.而业内一些C/S的支持者也一直把B/S的安全问题作为一个不休的话题一直在讨论着.只能说这样的讨论非常无聊,我并不反对C/S有很多优点.但是从安全角度分析,B/S远远高于C/S

1 前面我们讲到"C/S架构只有安装了特定Client软件的用户才可以使用本系统",正因为在用户的电脑上安装了Client所以这个系统就面临着程序被分析,数据被截取的安全隐患,因为所有的数据必须从SERVER读到CLIENT然后进行操作,而B/S所有的数据操作全部在SERVER上进行在CLIENT只是POST一个HTML代码

2 目前很多传统的C/S系统还是采用2层结构也就是说所有的CLIENT直接读取SERVER中的数据,在CLIENT端包括了数据的用户名\密码等致命的信息,难道这样的系统安全吗?如果这样的系统放在INTERNET上,那么这个SERVER面向任何连接上INTERNET的用户都是开放的,而B/S架构的系统,在CLIENT上没有任何信息.面向用户开放的也只是WEBSERBER,而真正保存我们数据的信息全部在DATASERVER上,这个DATASERVER完全可以不放在INTERNET上,也只能让我们指定的WEBSERVER来访问.

3 当然现在也流行一种3层架构的C/S系统,但是我想问的是,你做的中间件要比microsoft 写的iis 更安全吗?目前有很多截数据包分析的各种手段,bs 可以使用https 加密来解决。但是你的C/S 服务器有考虑过这问题吗?你说你加密了数据,你加密的比https 还好吗? 你没有加密,那就是明文的,随便找一个sniff 监听软件就可以把数据截下来。

还有一个观点:B/S不如C/S

  C/S:可以使用多种网络协议,甚至可以自定义协议,从这个角度来看,C/S的安全性是有保障的。又因为它是基于客服端的,不容易被病毒攻击,但C/S太不方便(主要是不便于数据共享)不便于随时与用户交流,这也是C/S的一个致命缺点。并且C/S结构软件在保护数据的安全性方面有着先天的弊端。由于C/S结构软件的数据分布特性,客户端所发生的火灾、盗抢、地震、病毒等都将成为可怕的数据杀手。

  B/S:B/S相对C/S而言更容易被病毒光顾,使用http协议,虽然最新的https协议在安全性方面有所提升,但还是弱于C/S。

对比之后,觉得这是无谓之争。。。先扫门前雪,把自己的产品安全性高最重要。

B/S与C/S安全测试重点比较

B/S结构

一般的B/S结构,都是多层架构的,有界面层、业务逻辑层、数据层。由于这种结构不需要客户端的安装,客户端主要通过浏览器来访问,因此客户端测试的重点是:客户端浏览器(不同类型和版本)以及客户端配置(cookie设置和分辨率设置)等测试。除客户端测试外,根据WEB系统常用技术还需要关注以下几个方面的测试:

(1)链接测试

(2)表单测试

(3)脚本测试

(4)ActiveX控件测试

C/S(Client/Server)结构

即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。这种结构与B/S最显著的区别是需要安装客户端,通过客户端程序来访问应用系统,因此C/S客户端测试是重点,并且与B/S结构有所不同。

C/S客户端测试的重点有:

(1)客户端安装测试

Ø 安装手册的评估

Ø 安装的自动化程度

Ø 安装选项和设置得测试

Ø 安装过程的中断测试

Ø 安装顺序测试

Ø 多环境安装测试

Ø 安装的正确性测试

Ø 修复安装测试

Ø 卸载安装测试

(2)客户端升级测试

Ø 与变更相关的测试

Ø 变更内容的测试

(3)客户端与服务器链接测试

(4)服务器端数据验证

(5)客户端可维护性测试

安全测试及B/S C/S安全性比较的更多相关文章

  1. Web系统测试Web安全性测试

    WEB安全性测试介绍WEB安全性测试--拒绝服务攻击WEB安全性测试--文件上传漏洞WEB安全性测试--跨站攻击WEB安全性测试--SQL注入一WEB安全性测试--SQL注入二WEB安全性测试--SQ ...

  2. 安全性测试:OWASP ZAP 2.8 使用指南(四):ZAP扫描移动应用安全

    在做移动应用(APP,小程序等)测试时,需要关注应用安全性. ZAP是可以用来进行手机移动应用渗透性测试扫描的. 正因为ZAP是采用“中间代理”的形式,截取并扫描所有客户端与服务器的交互请求,作为客户 ...

  3. Acunetix在SDLC中的安全性测试

    DevOps只是害怕尝试新事物.它们用于Selenium测试,这些测试占用了管道并提供了难以解释的结果,但是与此同时,它们经常避开了DAST测试,这远没有那么麻烦. 由于他们的应用程序是完全用Java ...

  4. 大数据时代下的SQL Server第三方负载均衡方案----Moebius测试

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 架构原理(Architecture) 测试环境(Environment) 安装Moebius( ...

  5. 模糊测试(fuzz testing)介绍(一)

    模糊测试(fuzz testing)是一类安全性测试的方法.说起安全性测试,大部分人头脑中浮现出的可能是一个标准的“黑客”场景:某个不修边幅.脸色苍白的年轻人,坐在黑暗的房间中,正在熟练地使用各种工具 ...

  6. 模糊测试——强制发掘安全漏洞的利器(Jolt 大奖精选丛书)

    模糊测试——强制发掘安全漏洞的利器(Jolt 大奖精选丛书) [美]Sutton, M.Greene, A.Amini, P. 著 段念赵勇译 ISBN 978-7-121-21083-9 2013年 ...

  7. (转)大数据时代下的SQL Server第三方负载均衡方案----Moebius测试

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 架构原理(Architecture) 测试环境(Environment) 安装Moebius( ...

  8. 为什么测试人员必须掌握Linux?

    相信点进来的小伙伴不是对Linux感兴趣就是对测试感兴趣了,也希望本文可以帮助之前接触过Linux的小伙伴找到继续坚持学习下去的动力,之前没接触过Linux的小伙伴也能找到开始学习Linux的兴趣. ...

  9. 《java并发编程实战》读书笔记9--并发程序的测试

    第12章 并发程序的测试 大致分为两类:安全性测试和活跃性测试 12.1 正确性测试 找出需要检查的不变性条件和后验条件.接下来将构建一组测试用例来测试一个有界缓存.程序清单12-1给出了Bounde ...

随机推荐

  1. Linux基础命令操作

    显示日期与时间:date date +%Y/%m/%d date +%H:%M 显示日历:cal 显示一整年(cal 2009) 显示一年中的某一个月 (cal [[month]] year) 例如 ...

  2. Apple Watch的课表应用iOS源码项目

    源码Class-Timetable,小清新风格的课表应用,可以按周或按天显示课表.按天显示时,左右滑动屏幕可以查看前一天或后一天的课表.功能:可以双模式切换(按天显示,按周显示,可以和 Apple W ...

  3. HDU 1729 Stone Game【SG函数】

    以下转载至:长春理工大学赵小舟博弈论ppt 题目大意: 1.有n个盒子,每个盒子都有它的容量s 2.在游戏开始时,每个盒子里都有一些石子 3.双方轮流进行游戏,向一个盒子投入n个石子,其中n不能大于当 ...

  4. Struts2 使用jQuery实现Ajax

    在jQuery中将Ajax相关的操作进行封装,使用时只需在合适的地方调用Ajax相关的方法即可,相比而言,使用jQuery实现Ajax更加简洁,方便 1.$.Ajax()可以通过发送Http请求加载远 ...

  5. NSBundle

    属性: .使用类方法创建一个NSBundler对象 + (NSBundle *)mainBundle; eg:[NSBundle mailBundle]; .使用路径获取一个NSBundle 对象,这 ...

  6. HTML页面和JSP页面禁止缓存

    一.JSP页面禁止缓存: 防止浏览器缓存当前访问的JSP动态页面,可以采用如下的方式进行设置,此效果如下的“HTML禁止缓存”: % 将过期日期设置为一个过去时间response.setHeader( ...

  7. [CareerCup] 17.2 Tic Tac Toe 井字棋游戏

    17.2 Design an algorithm to figure out if someone has won a game oftic-tac-toe. 这道题让我们判断玩家是否能赢井字棋游戏, ...

  8. css一些小的效果

    1.http://www.shejidaren.com/creative-dashboard-designs.html 网址:  

  9. java-工具类-读取配置文件

    java读取配置文件,当发现文件被修改后则重新加载 package com.zg.config; import java.io.File; import java.io.FileInputStream ...

  10. spring-poi-excle往单元格写入图片

    HSSF是POI工程对Excel 97(-2007)文件操作的纯Java实现 XSSF是POI工程对Excel 2007 OOXML (.xlsx)文件操作的纯Java实现 在POI中有HSSFPat ...