Web应用客户端木马战情景分析
2008-11-12 13:30:52 来源:WEB开发网每当从用户那里收到一个要求执行动作的请求时,就从该请求中提取票据。然后,将要执行的动作的名称加在票据前面,并在票据池中查找匹配项。如果找到了匹配的票据,那就说明该要约是由您的Web 站点所提供的,这时就执行动作,并从票据池中删掉这个票据。
检票系统之所以管用,是因为攻击者无法猜出你已经给客户了哪些票据值,同时他们也无法将票据插入受害者在服务器端的票据池。
然而,这里有两个问题需要注意。首先,如果您在GET请求中包含了票据,那么它们就会变成URLs的一部分,如果点击了一个从您的站点到其它Web服务器的链接的话,票据就有可能通过Referer headers泄漏出去了。如果你的web页面包含来自其它站点的图像或者其它的对象的话,也会导致Referer报头的泄密问题。
如果您使用了独一无二的票据,并且每次请求之后都没有忘记把它从票据池中删除的话,这就不会有问题了。GET请求通常不用于对数据有任何改动的动作,所以,我们根本就不需要在这样的请求中使用票据。
此外,如果你的应用程序容易受到跨站点脚本攻击的攻击,那么该系统就会失效,原因是——如果攻击者能在你的服务器生成的页面内插入JavaScript代码的话,他就能从该页面提取票据。并且,他还能诱骗浏览器进行一些需要两步完成的事情:第一步去请求一个票据,然后在用户不知道的情况下使用该票据。
如您所见,要想防止客户端木马战术,我们必须进行一些额外的程序设计工作,并且还得动一番脑筋——看来Web开发是越来越有挑战性了,必须在开发之初就充分考虑安全问题。
四、结束语
攻击者可以目标站点的名义出现在受害者面前,并欺骗他们做一些从未打算要做的事情。要约可以 是URL或自动提交的表单,并且这些要约可以通过任何可用的信道进行传播,比如电子邮件,以及目标站点之外的Web页面等。为了保护Web 站点及其用户免受客户端木马战术的滋扰,Web开发人员必须实现一些专门的安全机制。遗憾的是,到目前为止,这些机制还没有得到普遍应用,所以许多站点都存在这方面的漏洞。
。
- ››web安全之信息刺探防范1
- ››webqq 最新加密算法
- ››webdriver 数据库验证方法
- ››客户端:Lync 2011 for Mac体验
- ››应用云平台的可用性——从新浪SAE看云平台设计
- ››WebSphere Application Server 7.0 XML Feature P...
- ››Web2.0网络时代基于社会影响力的声望值
- ››Web服务器搭建:配置Linux+Apache+Mysql+PHP(或Pe...
- ››应用程序的配置管理Poco
- ››WebLogic调整Java虚拟机性能优化参数
- ››webqq2.0协议研究(3)-ClientId生成
- ››Web.config配置文件
更多精彩
赞助商链接