点击劫持示例
假设用户银行的网站是 https://my-bank.example.com。用户通常会保持登陆状态。为简单起见,我们假设该网站的一个网页带有可以将用户的所有资金转给攻击者的按钮——虽然这显然是不现实的,但该网站可能会有一些执行敏感操作的交互元素。
攻击者创建了一个网页,其中包含:
一个
一个
html
在页面的 CSS 中,攻击者:
隐藏了
将按钮放置在与“Transfer all your money?”按钮相同的位置
cssiframe {
opacity: 0;
}
#fake-button {
position: absolute;
top: 185px;
left: 90px;
}
结果看起来像这样(我们将
如果用户尝试点击“Click here for a free kitten!”,他们实际上会点击银行网站上不可见的“Transfer all your money?”按钮。如果用户已经登陆,此操作向银行服务器发出的请求会包含用户的真实凭据,并且请求将会成功。