晚上回家,收到群消息要求开会,打开企业微信听领导瞎 bb,闲着没事把系统时间调到了 2040 年(具体时间记不清了,总之是 2040~2049 年),然后什么事都没有发生。开完会,关机上床,又收到傻逼领导的指示要求发送最新的文档,开机,哦豁……
以下场景是我在虚拟机中复现的:
1.安装企业微信;
2.将系统时间修改到 2040 年以后,更准确的触发时间节点不明
企业微信版本是 3.1.2.2211,半小时前刚下载的最新版
Windows 10 32 位
进桌面后屏幕闪烁
我又试了Windows 7 32 位
我本机用的是 Windows7,但没有出现改完时间立刻崩溃的现象,可能是我的实体机安装软件版本低或者虚拟机系统版本低。
调完时间不用重启,Windows 资源管理器直接挂逼了,
修复方法:进安全模式或者 CTRL+ALT+DEL 打开任务管理器,运行 cmd,改时间。
首先说明一点,为什么骂微信。系统时间不对,软件自己可以拒绝运行,可以出错,可以崩溃,但把操作系统搞出问题影响其它软件使用这个锅,微信是甩不掉的。
在Windows 10 2019 ltsc 64位上测试,应该是2038年问题,微信的软件缺陷,和上面的Windows 10 32位一样,开机屏幕闪烁,修改时间后正常。
Windows 7 旗舰版 64位 Windows 7 64位就更好玩了,安装软件修改系统时间后,系统没有没有立刻挂逼,重启后时间跳到了2157年。
楼下有人说是证书问题,系统中根证书最长有效时间是2036/7/17,改时间到2036/7/18,各个软件使用正常,企业微信证书链全部过期,仍然可以正常打开,但估计无法登录或者登录会出问题,上班正好要用就不测试了。
![]() | 1 xujinkai 2021-03-10 01:41:45 +08:00 via Android ![]() 盲猜 2038 年 |
2 wateryessence 2021-03-10 02:05:04 +08:00 64 位系统能复现吗?看起来是 Y2038 问题 |
![]() | 3 CrazyBoyFeng 2021-03-10 05:29:21 +08:00 via Android 64 位系统应该也能复现 y2038,因为虽然系统是 64 位的,但是(相当多的)应用还是 32 的。还包括文件系统(例如 ext3 )。 |
![]() | 4 Duolingo 2021-03-10 07:24:56 +08:00 via Android ![]() 自从发现企业微信会劫持 chrome,就把它列入黑名单了。 |
![]() | 5 Variazioni 2021-03-10 07:38:07 +08:00 你们都关注是 y2038 的问题。。。我关注的是。。楼主为啥要把时间往后调? |
![]() | 6 GDC 2021-03-10 07:55:27 +08:00 via iPhone ![]() @Variazioni 可能是想和未来的人聊天 |
![]() | 7 a342191555 2021-03-10 08:01:22 +08:00 via iPhone @codingadog #4 请问具体来源,刚才搜了一下没找到 |
![]() | 8 ClarkAbe 2021-03-10 08:25:14 +08:00 via Android ![]() 你当真是开发?不知道在 bios 里面改嘛.......而且 32 位本来就不够纯到 2038 年的时间戳 |
9 riverdd 2021-03-10 08:29:06 +08:00 via Android 货色如此 |
11 PMR 2021-03-10 08:31:56 +08:00 via Android ![]() 系统问题 X 微信垃圾 |
12 kangzai50136 2021-03-10 08:33:04 +08:00 @ClarkAbe 只会写代码不会装系统的人多得是 |
![]() | 13 geelaw 2021-03-10 08:55:55 +08:00 via iPhone ![]() 为什么会觉得是 2038 问题? Windows 自带的时间数据类型可以支持至少 30000 年,从 VS 2003 开始 time_t 就默认是 64 位了,很难相信微信还在用 32 位的 Unix 时间。 另一个问题是为什么就能确定是企业微信的问题。楼主也没说控制变量的尝试结果是怎么样的。一个很容易想到的理论是:因为时间改变,几乎所有的证书都失效了,从而导致各种代码验证失败(包括本机 Windows 程序的数字签名以及 TLS 证书等)。 |
16 dnsaq 2021-03-10 09:15:18 +08:00 via iPhone 现在很多软件对时间都有要求 Chrome 系统时间不对也打不开 |
![]() | 17 whywhywhy 2021-03-10 09:21:03 +08:00 唉,这么说 win7 在 2038 年后就不能用了吗,这么经典的一个系统,可惜了可惜了 |
18 2kCS5c0b0ITXE5k2 2021-03-10 09:23:19 +08:00 @whywhywhy 17 年后 你还用 win7? 想想你 17 年前用啥系统. |
![]() | 所以 没事别手贱 我以前就手贱搞挂过不少东西 现在年纪大了 好奇心降低了也就不会再犯了 |
![]() | 20 Duolingo 2021-03-10 09:55:09 +08:00 via Android ![]() @a342191555 装一个就可以在 chrome 里看到被企业管理的提示了,个人经历,和阿里被爆出来的一个东西。 |
21 app13 2021-03-10 10:34:02 +08:00 via Android ![]() 怎么这么多人怀疑是不是微信的锅…… 最起码第二张 win7 的截图里明明白白写着 wedriveplugin 啊,这名字看上去就是微信的组件了吧…… |
![]() | 22 12101111 2021-03-10 10:39:13 +08:00 Windows NT 用的是 1600 年起的纪年法,不是 Unix 的 1970 年纪年法,因此不会有 2038 问题 |
23 GM 2021-03-10 10:39:18 +08:00 楼上有些人真是好笑,微信自己把自己 dll 注入系统进程,然后自己 dll 出问题导致系统进程出问题,这不是微信的锅,难道怪微软不禁止微信注入? |
![]() | 26 marcong95 2021-03-10 11:01:03 +08:00 Y2k 、令和、Flash 、Y2038,有种见惯不怪的感觉了。。1202 年了,就算是新写的系统还是看见有人用的 32bit timestamp,也不知道是不是就是这么缺那一点点内存硬盘流量等等的,反正 Y2038 是注定的了。 |
![]() | 27 lepig 2021-03-10 11:20:07 +08:00 歪楼:楼主的屏幕 是 4K 屏不 |
28 kangzai50136 2021-03-10 11:56:02 +08:00 via Android 楼主测试一下,在 sandboxie 里面试试会不会炸 |
29 xz410236056 2021-03-10 15:08:54 +08:00 最新系统是 20H2 吧,试试更新系统呢 |
30 dorothyREN 2021-03-10 18:15:40 +08:00 不说别的。改了本地时间以后所有的 ssl 都会验证失败 |
![]() | 31 qq316107934 2021-03-10 18:29:08 +08:00 歪个楼,一个聊天软件,为什么要往 explorer.exe 注入 dll |
32 orannge 2021-03-10 20:27:45 +08:00 上次把时间改为 2050 年,重启后桌面无限崩溃,还以为电脑坏了,然后发现企业微信有个驱动,进安全模式把驱动删掉并改回时间才恢复正常。一个普通软件把系统搞崩溃,我只能说微信都是垃圾。聊天软件还弄个驱动,不用添加开机任务就能加载,堪比 QQProtect,这不比上次 QQ 扫描用户隐私的事情更严重? |
33 daokedao 2021-03-10 22:14:32 +08:00 装企业微信的电脑岂不是危险了 |
![]() | 34 Greatshu OP |
![]() | 35 lopetver 2021-03-16 13:52:07 +08:00 |