短信嗅探短信嗅探也是一种窃听技术,不过是通过攻击电信网络通信的方式 。
现在手机一般都使用4G、5G网络了,但是“短信嗅探”技术只针对2G网络,不法分子通过特殊设备压制基站信号,或者选择网络质量不佳的地方,或者使用4G伪基站欺骗手机,这会导致网络降频,使手机的3G、4G通信降低到2G 。
2G网络下,只有基站验证手机,手机不能验证基站,攻击者通过架设伪基站,让目标手机连接上来,然后就能获取一些连接鉴权信息,再冒充目标手机去连接真基站,连上以后拨打攻击者的另一个手机,通过来电显示得到目标手机号码 。
基站本身并不会用特定方向的信号与每部手机通信,而是向四周以广播的形式发送信号 。所以每部手机实际上也是可以接收到其他手机的信号,2G网络传输数据时没有加密,短信内容是明文传输的,就可以嗅探到目标手机的短信 。加之2G通讯协议是开源的,所以这件事的技术门槛并不高 。

文章插图
因为这种攻击要求手机不能移动,如果基站切换就没用了,所以攻击一般选择夜深人静的时候 。对于普通用户来说,睡觉的时候可以选择关机或者开启飞行模式;另外开通 VoLTE ,可以让电话和短信都是走 4G 通道,不过网络降级很难防范;或者买个能识别伪基站的手机,不过没办法保证百分百能够识别;或者就只能等着移动运营商关闭2G网络了 。
对于应用系统开发者,应该认识到通信通道的不安全性 。必要的时候开启双因子验证,除短信验证码外还可以使用短信上行验证、语音通话传输、专用密码验证、常用设备绑定、生物特征识别、动态选择身份验证方式等等多种二次验证方法 。
重放攻击假设某些交易服务需要通过短信验证码来验证用户的身份 。如果有攻击者截获了交易请求报文,然后多次发送到服务端,服务端仅检查了验证码是否正确,则可能实际发生多次交易 。此时攻击者都不需要解密传输内容 。

文章插图
此时应该限制验证码只能够使用一次,服务端收到交易请求时首先检查验证码,检查通过后将验证码置位或删除,然后再处理交易,不管交易是否成功,验证码都不能再次使用 。另外还应该在生成验证码时设置一个较短的有效期,如果用户没有实际提交,攻击者也必须在有效期内才能使用,增加攻击难度 。
当然你也可以使用更通用的防重放手段,比如每次请求验证码都先从后端获取一个随机数,随机数如果已经使用过则不能再次使用,随机数如果不存在也不能处理请求 。当然随机数也可以在前端生成,服务端如果收到了重复的随机数则拒绝请求,但是需要防止传输过程中随机数不被篡改,可以通过密钥签名的方式 。
【技术人员必须知道的手机验证码登录风险】
推荐阅读
- 综合布线系统工程:物理隔离的几种技术方案
- 齿条加工技术分析
- 取代cookie的网站追踪技术:”帆布指纹识别”
- 大佬Google工作10年,关于技术、管理和职场生涯的一些感悟
- 池塘养殖的技术细节
- 怎么样减臀部的赘肉?
- 技术分享 | Airsim初探-用游戏引擎做仿真
- 能发现又能阻止入侵的防护技术——入侵防御系统
- 2022必须拥有Chrome扩展程序 - 浏览器插件,让你上网效率翻倍
- 没有公主命,就必须有一颗女王的心 !
