反钓鱼攻防策略

钓鱼网站原理

钓鱼网站的主要原理是制作一个假的网站冒充目标网站,诱骗用户访问该假冒网站,获取用户输入的个人敏感信息(密码,银行卡号,身份证号等)。

下面就几种常见的钓鱼攻击的方式和防御方法进行分析:

------------------------------------------------------------------------------------------------

攻(DNS劫持)

攻击者进行DNS劫持,这种情况下域名是和目标网站完全一样的,但是用户访问的服务器的ip地址是假冒网站的ip

防(https)

网站支持https,向权威CA机构(操作系统认可的知名CA)申请x509 certificate。根据SSL/TLS协议,浏览器会在访问https网站的时候验证服务器证书中的CN项必须和所访问网站的域名一致,而验证通过的证书对应的私钥只有目标网站的服务器才拥有,假冒网站不可能拥有。这种方式可以防止DNS劫持方式的钓鱼网站。

------------------------------------------------------------------------------------------------

攻(相似域名):

攻击者申请一个和目标网站类似的url,例如申请taobaoo.com仿冒taobao.com。然后通过邮件,论坛发帖等方式传播这个假冒的url。用户点了这个url就访问了假冒网站。

防(没辙)

这个没辙,只能访问目标网站时看仔细点,确保url没错。

------------------------------------------------------------------------------------------------

攻(诱骗支付):

攻击者在目标电商网站下订单购买商品,在支付时把商户跳转到第三方支付平台的支付url保存下来。通过whatever手段,诱使用户使用该支付url访问第三方支付平台进行支付。

防(ip比较):

商户在生成支付url时,指定当前用户的ip。第三方支付平台在处理该url对应请求时,会比较url中的ip和当前访问用户的ip,如果不一致,则认为生成支付订单时的用户和当前访问的用户不是同一个用户,拒绝处理。

防(referer比较):

商户和第三方支付平台事先约定合法的referer。第三方支付平台在处理该url对应请求时,会验证当前http head中的referer是否属于对应商户的合法referer。如果验证失败,则认为当前请求不是在商户网站点击支付按钮时发起的,拒绝处理。

防(限制支付有效期):

商户在生成支付url时,指定当前订单有效期。第三方支付平台在处理该url对应请求时,会验证订单未超时。通过这种方式减少留给攻击者传播支付url的时间,增加攻击难度。

你可能感兴趣的:(钓鱼)