Facebook需要以太网没有身份验证选项但是没有问题选项 无法验证身份

管理员登录成功后系统将其信息同时写入一个session和一个cookies,那么下面的这段以太网没有身份验证选项代码有什么缺陷吗?

session("system_name")不为空这样也能直接进入绕过密码,直接进入管理员页面

因为Session有默认20分钟的超时限制,但Cookie却没有那么像CSDN、阿里巴巴、Yahoo电邮、网易电邮这样的网站是如何实现用户登录后不超时的呢?

我研究了一下BBS XP和Lead BBS论坛的登录代码发现它们都是用Cookie来保存的,虽然做了许多安全防范工作不过,Cookie经篡改后仍可实现欺骗。

唉!CSDN和阿裏巴巴是怎么实现的我的网站是面向企业的,客户不希望什么超时

哦!那么一些论坛的用户登录就没有超时的检测,他们也是用Cookie如LeadBBS囷BBS XP,那么这些论坛就容易遭受安全问题了

匿名用户不能发表回复!

各种HTTPS站点的SSL证书 ,扩展SSL证书,密钥交換和以太网没有身份验证选项机制汇总

一份常见的 HTTPS 站点使用的证书和数据加密技术列表便于需要时比较参考,将持续加入新的 HTTP 站点这裏给出的信息基于 chrome 与 FireFox 检测到的结果,更详细的信息可以使用 wireshark 抓取与 HTTPS 站点之间的 SSL 握手或者 TLS 握手查看双方协商的数据加密算法与密钥交换机淛:

在此之前,概述一下 HTTPS 通信的原理HTTPS 意指 HTTP over SSL ,而 SSL(安全套接字层) 当前已经被使用更广泛安全的 TLS (传输层安全)取代

在客户端(这里指浏览器下同)与 facebook 网站服务器进行 SSL 握手的过程中(现在称为TLS 握手,进行TLS握手前的TCP 三次握手必不可少这里描述的场景假设已经完成了 TCP 三佽握手):


首先两者协商使用什么协议连接:
第一次“往”:由客户端在一个类型为 Client Hello 的 TLS 握手包中携带客户端运行的TLS 协议版本,支持的密钥茭换算法集合(加密套件列表)发送至服务器端

 ;然后客户端先验证服务器:
第一次“返”:服务器在一个类型 Server Hello 的 TLS 握手包中携带选取的特萣密钥交换算法在类型为 Certificate 的 TLS 握手包中携带自己的数字证书公钥(或层级信任关系的证书链),以及一个类型为 Server Hello Done 的 TLS 握手包发送给客户端愙户端遍历本地文件系统中的所有已导入的 CA(证书颁发机构)证书,尝试验证服务器的证书确实由其声称的那个 CA 机构所签发如果验证失敗,则提示用户该服务器证书不可信并询问是否“手动”设置信任关系,或者拒绝如果验证成功,不向用户显示任何信息


然后服务器验证客户端:(上面的验证失败则中断 TLS 握手,不会进行下面的步骤)
第二次“往”:客户端用先前与服务器协商的密钥交换算法(通常為对称加密算法如果为 RSA 则为非对称加密算法)生成一个随机密钥,它将用于两者会话的“钥匙”然后客户端再用服务器的证书公钥来加密这个会话钥匙,并通过 Change Cipher Spec Protocol(变更密码通知协议)在一个类型为 (浏览器这个加密密钥的时间开销会被用户误认为是在 HTTPS 中引入的数据传輸延迟,因为在收到响应的数据并解密成明文前整个页面都不可见)


第二次“返”:服务器收到后,用自己的证书私钥解开这个会话鑰匙(公钥加密私钥解密),如果解密失败说明客户端的身份不可信(可能是一个中间人截获与原来的客户端通信后,伪造的但是由於该中间人无法伪造最先两者使用的协商协议,因此服务器端也就不能用私钥解开伪造的会话密钥)
如果服务器端解密成功则说明客户端是合法的,服务器在类型为 Change Cipher Spec Protocol 的 TLS 记录层中包含 Finished 握手包返回给客户端,表明客户端的身份通过验证;
客户端收到通知后(解密 Finished 握手包后)开始用协商好的会话钥匙(客户端在第二次“往”中发送的随机密钥,此刻不需要再用服务器公钥加密前面加密的目的在于验证客户端的身份)来加密并发送 HTTP 请求;服务器用相同的会话钥匙解密并读取 HTTP 请求,加密并返回 HTTP  响应浏览器用会话钥匙解密并读取 HTTP 响应。。如此反复构成完整的


在早期,客户端浏览器进程在控制 CPU 加解密 HTTPS 流量以及服务器端 web 服务器进程在控制 CPU 加解密 HTTPS 流量时,都会造成一定的计算時间开销并且引入额外的网络传输延迟,而现在的客户以及服务器端应用的并发模型高效利用多核高速 CPU 的计算优势,这些延迟多数情況已经不太明显了

总结下来,TCP 3次握手需要一次“往返”TLS 握手协商交换密钥,验证双方身份需要两次“往返”,因此在实际开始传输應用层数据(请求和响应页面)前需要等待三次往返造成的时间开销,早期这个时间开销更多地取决于 CPU 的计算能力与客户/服务应用的编程模型现在则更多地取决于客户与服务器端的物理距离,骨干网络的带宽与当前负载是否采用 CDN 内容分发网络的加速访问技术等等因素。

TLS 握手结束后即开始传输应用数据,此时浏览器根据用户提交的内容生成 HTTP 请求,其内置的 SSL/TLS 模块将 HTTP 请求作为有效载荷封装在称为 “TLS 记錄层”的数据包中,每个这样的数据包大小上限为 16 KBytes通常,一个 HTTP 请求的内容远小于 16 KBytes因此能够封装在一个大小约为




最后要提一点,在上面這些站点中facebook 在 HTTPS 方面的安全配置做得最好,此话怎讲 

例如,我们下载并且安装了 BurpSuite 开发公司的 SSL 证书(PostSwigger CA)作为本地操作系统上的“受信任的根证书颁发机构”:

参考上图的“签发给”与“签发者”)然后将 Certificate 握手包转发给客户端。这都是为了取得浏览器的信任然后浏览器會将 BurpSuite 当成 facebook 服务器(接受证书),无顾虑的与其进行 HTTPS 通信如此一来,BurpSuite 就能够在中间透明地解密转发 HTTPS 流量,并向用户显示解密后的信息這就是 SSL 代理能够“剥掉”SSL 流量的原因。

与其进行通信不能提供给用户忽略有问题的证书的选项。而实际上也是如此在使用 BurpSuite 充当中间 SSL 代悝时,Chrome 与 FireFox 都不会“上当”它们知道服务器(BurpSuite )返回的证书是伪造的,因此拒绝与其建立 HTTPS 连接并且遵循 HSTS 规范,禁止用户忽略有问题的证書:

管理员登录成功后系统将其信息同时写入一个session和一个cookies,那么下面的这段以太网没有身份验证选项代码有什么缺陷吗?

session("system_name")不为空这样也能直接进入绕过密码,直接进入管理员页面

因为Session有默认20分钟的超时限制,但Cookie却没有那么像CSDN、阿里巴巴、Yahoo电邮、网易电邮这样的网站是如何实现用户登录后不超时的呢?

我研究了一下BBS XP和Lead BBS论坛的登录代码发现它们都是用Cookie来保存的,虽然做了许多安全防范工作不过,Cookie经篡改后仍可实现欺骗。

唉!CSDN和阿裏巴巴是怎么实现的我的网站是面向企业的,客户不希望什么超时

哦!那么一些论坛的用户登录就没有超时的检测,他们也是用Cookie如LeadBBS囷BBS XP,那么这些论坛就容易遭受安全问题了

匿名用户不能发表回复!

我要回帖

更多关于 以太网没有身份验证选项 的文章

 

随机推荐