web欺骗
你点开一个链接,页面跟银行官网长得一模一样。输入账号密码,跳转,显示“系统维护中”。三秒后你关掉页面,没当回事。三天后卡里的钱没了。 这就是web欺骗。不攻服务器,不破加密,攻的是你眼睛和手指之间的那零点几秒。 我最早接触这个概念是2016年。一个做前端的朋友给我看了个demo,他用 很多人以为看域名就安全了。paypal.com和paypa1.com,后者用数字1替换了小写l。在手机窄屏上,这两个域名肉眼几乎无法分辨。更狠的是用Unicode字符,西里尔字母“а”和拉丁字母“a”在多数字体下长得一模一样,但浏览器视作完全不同的域名。 还有一种更隐蔽的手法:利用URL中的@符号。 光伪装URL还不够。钓鱼页面现在做得比真页面还精致。我见过一个仿冒某电商登录页的案例,连CSS动画的缓动曲线都跟原站一致。开发者工具打开一看,表单的action指向一个境外IP,但页面上没有任何异常提示。 跨站脚本(XSS)是另一种玩法。攻击者不需要伪造整个页面,只要在正常页面的评论区注入一段 2019年有个经典案例:某航空公司网站的反馈表单没做输入过滤,攻击者提交了一段脚本,导致所有查看反馈的管理员后台被劫持。整个攻击链没有碰服务器一次,全在浏览器里完成。 这个更阴。攻击者用一个透明的 Facebook早年就被这种手法搞过。用户在不知情的情况下发布了垃圾信息,点赞了陌生页面。平台后来加了 浏览器厂商一直在打补丁。Chrome现在会对混合内容警告,会标记非HTTPS站点为“不安全”。但道高一尺魔高一丈,攻击者转向了更精细的社工手段。 我的习惯是:不点邮件里的链接,手动输入域名;密码管理器只对精确匹配的域名自动填充;看到登录页先扫一眼证书信息。这些动作花不了十秒钟,但能挡掉九成以上的web欺骗。 技术层面,网站开发者该做的:启用HSTS、设置CSP头、对用户输入做严格转义、用 说到底,web欺骗利用的是认知偏差。你信任地址栏,它伪造地址栏;你信任页面外观,它复制页面外观;你信任点击行为,它劫持点击。对抗这种攻击,光靠技术不够,得养成“多看一眼”的习惯。那一眼,可能就是你的钱和骗子之间的唯一屏障。<iframe>把一个钓鱼页面嵌在正规网站里,地址栏显示的URL完全正确,但页面内容已经被替换了。当时我盯着屏幕看了半天,愣是没找出破绽。他说:“用户根本不会去看源码,他们只信任地址栏。”URL里的猫腻比你想象的多
https://www.paypal.com@evil.site.com,浏览器实际访问的是evil.site.com,但用户扫一眼只会看到前面的paypal.com。这个漏洞在主流浏览器里已经被修补,但类似的视觉欺骗从未消失。页面本身也能骗人
<script>,就能在你浏览时悄悄读取cookie、重定向页面、甚至弹出伪造的登录框。你信任的是那个网站,但网站上跑着别人的代码。点击劫持:你看到的按钮不是你以为的按钮
<iframe>覆盖在正常页面上,你看到的是“领取优惠券”按钮,实际点击的是下面隐藏的“确认转账”。你完全不知道发生了什么,因为视觉反馈被精心设计过——点击后页面确实跳转了,跳到了攻击者控制的页面。X-Frame-Options响应头才堵住。防御不是装个插件就完事
SameSite属性保护cookie。这些不是可选项,是底线。
- 最近发表
- 随机阅读
- 搜索
-
- 友情链接
-