网站安全防护之SESSION
这一部分内容的重中之重是session和cookie,客户在安全使用app系统时,如何根据客户的身份提供不同的功能和相关数据,每个人都有这样的体验。例如,访问淘宝,不会把自己喜欢的商品加入别人的购物车,如何区分不同的客户?打开任何网站,抓住包看,cookie的字段都存在。cookie伴随着客户的操作自动提交给服务器方面,想区分认证前和认证后来到客户方面,用户认证成功后可以在cookie上写上标志,服务器在处理请求时判断该标志即可。
对于标志的设置,如果直接将客户称直接以明确或加密的方式放置在cookie中,如果加密方式被破解,则可能伪造客户的身份,因此在cookie中直接插入客户的身份信息是不可取的。对于客户身份的设置,还有session机制,在用户认证成功后,将客户的个人信息和身份信息写入session,在cookie中的表现只出现sessionID,服务器方面通过该sessionID在服务器上找到指定的数据,敏感的数据存在于服务器方面,sessionID的值是随机字符串,攻击者很难推测其他用户的sessionID,从而伪造客户的身份。当我们安全使用xss漏洞时,我们都喜欢获得客户的cookie。获得cookie后,最重要的字段是sessionID。有了他,我们可以伪造他人的身份并获得他人的数据。
根据会话内容,可以完成以下操作:
作业1:通过搜索引擎,寻找可以注册的几个网站,burp抓住包分析注册后的对话是如何实现的,是否用session保存用户信息,token是否可以伪造,是否在cookie保留用户信息等。作业2:基于以前的作业,开发的登录认证页面,认证成功后,对不同的账户设定不同的权限,分别用cookie和session来显示客户的身份,测试不同的显示方式可能存在的安全风险。记录测试过程和结果、相关代码和设计构想形成报告,共享,共同探讨。
目前对于网站和APP安全漏洞上对于获取SESSION和COOKIES的问题比较多,很多程序员对一些提交功能没有做更多的过滤,导致被插入了恶意XSS代码从而获取到了后台权限,如果大家想要更全面的检测安全漏洞问题的话可以像国内的网站安全公司寻求人工渗透测试服务的帮助。