如何使Web更安全 - 3
建立一个加密连接,仅需要服务器获得权威机构(如VeriSign)颁发的证书。但是加密仅能阻止攻击者看到站点发送和接收的数据,它并不能阻止攻击者伪造身份和对站点进行的恶意攻击。
二、伪装成Web站点的合法访问者
现在我们已经知道如何鉴别一个Web站点,但是一个站点如何鉴别它的访问者呢?下面我们就接着讨论这个问题。
大部分Web服务器支持两个密码鉴别方案:基本密码鉴别和分类密码鉴别。两个方案都通过向浏览器发送鉴别信号来进
行。当浏览器第一次收到鉴别信号时,它显示一个对话框询问用户的名字和密码。在基本鉴别模式中,浏览器以简单的文
本形式来传递用户名和密码。在分类鉴别模式中,浏览器传送用户名和密码的消息类。如果服务器发送它的证实,浏览器
就把登录信息存储起来。
如果你用Web服务器上的简单设置来实现这些鉴定方案,Web应用程序中不需要添加任何代码。
攻击者的监听问题:如果访问者以简单的文本形式发送他的用户名和密码,攻击者很容易就可捕获到这些信息。传送
用户信息使用SSL可以很容易地解决这个问题。如下面的例子所示。
User ID: < input type="text" name="user" >
Password: < input type="password" name="password">
如果攻击者不能监听Web站点和访问者之间的通信,他将要采取更加卑劣的手段——伪装成你的合法访问者。造成这种
情况出现的原因一般是访问者自己造成的,因为大部分网络用户在密码选取上不是很留心,他们的密码一般都不是很安
全。他们在登录各个站点时,喜欢使用相同的用户名和密码。
解决这个问题的方法就是访问者在注册帐号时要使用安全的密码。Web站点最好具有能阻止访问者设置英文单词作为密
码的功能,它可以建议用户使用数字和字母混合而成的密码。
三、伪装成Web站点管理员
当访问者登录到你的站点时,你将会保持他们的身份一直有效,直到他们离开该站点。那么如何实现这个功能呢?因
为在浏览器和服务器之间不会建立一个永久的连接,所以服务器会在收到每个页面请求后只建立一个单独的连接。
用户登录成功后服务器是如何证实该用户的身份呢?
答案是浏览器保存了用户的姓名和密码。当浏览器和服务器再次连接时,浏览器将传递已经存储过的用户名和密码。
服务器利用用户数据库来证实这些信息,并会在此基础上作出允许和拒绝访问的决定。
补充:asp教程,安全加密