2022年开工第一天,Exchange用户要警惕微软2022版“千年虫”

2022-01-04 15:13:43 管理员 463

2022的岁首零时,微软就以一个被称作微软2022版“千年虫”的Bug,给大家送上了一份猝不及防的新年“大礼包”。相信在元旦的三天假期中,很多Exchange管理员都已经在忙着应急处置微软“千年虫”问题带来的邮件队列拥堵的问题。网际思安的技术服务团队也已紧急通知联络了所有使用Exchange邮件服务器的用户。


今天是2022年正式开工第一天,还是要提醒Exchange管理员请务必尽早检查Exchange邮件服务器是否有大量邮件滞留,检查邮件队列是否已堵死,检查Exchange服务器是否出现"FIP-FS扫描引擎加载失败 - 无法将"2201010001"转换为长(2022/01/01 00:00 UTC)"的错误日志。如不能正常收发邮件,请先禁用Exchange反恶意软件扫描器服务。如需紧急技术支持请即刻拨打 400-099-6608 联系网际思安工程师!


所以到底是怎么回事?

微软2022版“千年虫”

据一位Exchange管理员Joseph Roosen表示,这是一个由于“2022年”的到来而导致的bug。这个bug的根源,是微软Exchange上面的邮件过滤管理系统(FIP-FS),采用了一种名叫“yymmddHHMM”的有符号变量(Int32,也就是long)存储日期微软推送的 Exchange 新日期补丁无法正常运行,“220101001”无法被正常解析,因为微软使用了 signed int32 作为日期格式,结果 2.201.010.001 超过了 long int 的最大值 2.147.483.647。

由于和“千年虫”一样都是日期给计算机带来的bug,这次bug也被一些Exchange管理员命名为Y2K22


其中,Y2K指的是著名的“千年虫”问题,由于部分计算机程序只采用两位十进制数表示年份,在跨世纪时就会出现错误的结果;22指的则是2022年。


这个bug在不少Exchange Server版本中都出现了相同的问题,包括2016和2019等。

目前,微软的Exchange团队正在紧急修复中。他们表示,几天后会发布一个Exchange Server更新,里面将用一个更大的变量类型来保存日期。微软团队表示,如果有非常紧急的邮件需要发送,需要先关掉Exchange中的FIP-FS功能。在微软提供官方补丁修复包前,目前通用的解决方法是通过使用Set-MalwareFilteringServer-BypassFiltering $True -identity 禁用Exchange服务器上的反恶意软件扫描器,并重新启动Microsoft Exchange Transport服务。但是禁用Exchange 的anti-malware scanning后,会增加接收到垃圾和病毒邮件的风险!(当然对正在使思安邮件安全网关的用户来说,不必担心垃圾和病毒邮件的入侵

非官方脚本:
https://blog.markdepalma.com/?p=810

微软官方答复:
https://techcommunity.microsoft.com/t5/exchange-team-blog/email-stuck-in-transport-queues/ba-p/3049447