Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【教你搭建服务器系列】(6)如何判断服务器被入侵

【教你搭建服务器系列】(6)如何判断服务器被入侵

作者头像
HaC
发布于 2021-12-07 05:25:42
发布于 2021-12-07 05:25:42
1.4K00
代码可运行
举报
文章被收录于专栏:HaC的技术专栏HaC的技术专栏
运行总次数:0
代码可运行

虽然你的网站是可以运行了,但想要网站 7*24 小时高可用不掉线,还远远不够,因为互联网还有一个看不见的手——入侵者

如果你买的是云服务器,比如说腾讯云、阿里云这种,一旦你登录了你的服务器,随后没有设置安全组、密钥、用户、IP,或者没有修改密码、默认端口,那么你的服务器就很容易被入侵,一般是被挖矿,或者被操控当做DDOS的攻击者。

可以说,只要你不设置安全组、防火墙,那么你的服务器基本上就没了,别问我为什么知道,因为我的三台服务器就是这么被黑掉的。

我经历过的三种被黑的情况:

  • 挖矿(目前也是最多的)
  • DDOS(操控你的服务器攻击其他网站)
  • 勒索(删库)

本篇文章来介绍一些常见的服务器入侵排查方法。

1、宕机

这个是最常见的,一般你的服务器被入侵了,服务器的进程就被杀死了,万一某一天你的网站打不开了,MySQLRedis都挂了,基本上就是被黑了。

2、日志

2.1、日志记录

入侵者可能会删除机器的日志信息,可以查看日志信息是否还存在或者是否被清空。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM-8-8-centos ~]# du -sh /var/log/*
40K     /var/log/anaconda
36M     /var/log/audit
0       /var/log/boot.log
4.0K    /var/log/boot.log-20191106
4.0K    /var/log/boot.log-20200807
4.0K    /var/log/boot.log-20200902
16K     /var/log/boot.log-20201228
16K     /var/log/boot.log-20210325
3.8M    /var/log/btmp
5.9M    /var/log/btmp-20210501

/var/log 这个目录存在很多操作的日志。

Linux系统常见的日志文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
路径1/var/log/messages:记录 Linux 内核消息及各种应用程序的公共日志信息

路径2/var/log/cron:记录 crond 计划任务产生的事件信息

路径3/var/log/dmesg:记录 Linux 操作系统在引导过程中的各种事件信息

路径4/var/log/maillog:记录进入或发出系统的电子邮件活动

路径5/var/log/lastlog:记录每个用户最近的登录事件

路径6/var/log/secure:记录用户认证相关的安全事件信息

路径7/var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件

路径8/var/log/btmp:记录失败的、错误的登录尝试及验证事件

所以只要非法者登录,就一定会记录在这里,如果这些日志都被删除了,那么只有一个可能,就是毁尸灭迹。

下面来展开看看一些关键的日志:

2.2、登录失败日志

lastlog 命令对于的日志是/var/log/lastlog,记录了最近一次的登录用户。

如果一个用户从未登录过,lastlog显示**Never logged**。注意需要以root身份运行该命令。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM-8-8-centos etc]# lastlog
Username         Port     From             Latest
root             pts/1    119.91.91.73     Tue May 11 12:51:22 +0800 2021
bin                                        **Never logged in**
daemon                                     **Never logged in**
adm                                        **Never logged in**
lp                                         **Never logged in**
sync                                       **Never logged in**
shutdown                                   **Never logged in**
halt                                       **Never logged in**

2.3、查看机器当前登录的全部用户

who命令对应日志文件 /var/run/utmp

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM-8-8-centos etc]# who
root     pts/0        2021-05-11 10:36 (119.91.91.73)
root     pts/1        2021-05-11 12:51 (119.91.91.73)

2.4、查看机器创建以来登陆过的用户

last 命令对应日志文件/var/log/wtmp

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM-8-8-centos etc]# last
reboot   system boot  3.10.0-1127.19.1 Wed Mar 24 14:45 - 14:05 (47+23:19)
root     pts/3        120.91.21.11   Tue Mar 23 20:50 - 00:02  (03:11)
root     pts/2        119.91.91.73     Mon Mar 22 12:34 - crash (2+02:11)
root     pts/1        119.91.91.73     Mon Mar 22 11:40 - crash (2+03:05)
root     pts/2        119.91.91.73     Thu Mar 18 15:35 - 09:01 (3+17:26)

命令输出字段介绍:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  第一列:用户名
  第二列:终端位置。pts/0 (伪终端) 意味着从诸如SSH或telnet的远程连接的用户.tty (teletypewriter) 意味着直接连接到计算机或者本地连接的用户
  第三列:登录ip或者内核 。如果你看见:0.0 或者什么都没有,这意味着用户通过本地终端连接。除了重启活动,内核版本会显示在状态中。
  第四列:开始时间
  第五列:结束时间(still login in 还未退出 down 直到正常关机 crash 直到强制关机)
  第六列:持续时间

2.5、异常流量

如果是挖矿和DDOS,必然会出现大流量,此时可以抓包试试。

可以使用命令 tcpdump抓取网络包查看流量情况,或者使用工具iperf查看流量情况。

tcpdump抓包可以知道目标源IP、端口、数据包是什么。

2.6、抓取入侵者的信息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM-8-8-centos etc]#  cat /var/log/secure | grep -i "accepted password"
Dec 28 17:32:18 VM-8-8-centos sshd[1698]: Accepted password for root from 119.91.91.72 port 38620 ssh2
Dec 28 17:35:04 VM-8-8-centos sshd[2166]: Accepted password for root from 119.91.91.72 port 7571 ssh2
Dec 28 17:40:59 VM-8-8-centos sshd[2963]: Accepted password for root from 119.91.91.72 port 63710 ssh2
Dec 28 18:04:12 VM-8-8-centos sshd[6523]: Accepted password for root from 119.91.91.72 port 32717 ssh2

查看这个IP是否可疑,如果不是自己的IP那很可能就是入侵者的IP(一般都是代理的IP)

2.7、top命令

top命令可以很容易知道服务器的CPU压力,还有进程消耗的CPU资源,如果是挖矿,很容易就被发现了。

但还有一种情况是:入侵者会隐藏挖矿进程,你使用top命令是无法显示这个挖矿进程的,这个就很脑壳痛了。


以上就是一些简单的排查方法,下一篇文章带你走进真实的服务器被黑排查过程。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/05/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【教你搭建服务器系列】(7)一次服务器被黑的排查全过程
发现并没有异常的IP,这倒是不奇怪,假如真的被登录了,登录日志被删除的可能性也是很大的。
HaC
2021/12/07
1.1K0
【教你搭建服务器系列】(7)一次服务器被黑的排查全过程
CPU占用率爆满,服务器遭遇挖矿如何排查
「太用力的人跑不远, 真正坚持到最后的人靠的不是激情,而是恰到好处的喜欢和投入。」
山河已无恙
2023/03/02
6.1K0
CPU占用率爆满,服务器遭遇挖矿如何排查
【教你搭建服务器系列】(8)使用密钥对登录服务器
这两种方法各有优缺点,使用 IP、密码登录是最常见的方式,但是这种登录方式不安全,假如你没有设置出入站规则、没有在后台设置允许的IP登录,入侵者就很可能会通过不断撞库入侵你的服务器。
HaC
2021/12/07
1.8K0
【教你搭建服务器系列】(8)使用密钥对登录服务器
11 个步骤完美排查Linux机器是否已经被入侵
原文:https://cloud.tencent.com/developer/article/1882357
入门笔记
2022/06/03
8010
Linux手工入侵排查思路
当Linux主机发生安全事件需要进行入侵排查时,一般可以使用常见的shell命令,通过分析主机的异常现象、进程端口、启动方式、可疑文件和日志记录等信息以确认主机是否被入侵。
Bypass
2021/04/26
1.9K0
Linux 系统被黑客入侵!怎么排查?
近期有一个朋友的服务器(自己做了网站)好像遭遇了入侵,具体现象是:服务器 CPU 资源长期 100%,负载较高。服务器上面的服务不能正常提供服务。
IT运维技术圈
2023/12/26
1.1K0
Linux 系统被黑客入侵!怎么排查?
Linux安全服务器入侵检测基础
一般服务器被入侵的迹象,包括但不局限于:由内向外发送大量数据包(DDOS肉鸡)、服务器资源被耗尽(挖矿程序)、不正常的端口连接(反向shell等)、服务器日志被恶意删除等。那么既然是入侵检测,首先要判断的是服务器是否被入侵,必须排除是管理员操作不当导致的问题,因此入侵检测的第一项工作就是询问管理员服务器的异常现象,这对之后入侵类型的判断非常重要。
释然IT杂谈
2020/10/27
2.9K0
Linux安全服务器入侵检测基础
Linux用户登录日志查询  # 1 utmp、wtmp、btmp文件
1  /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记录系统启动时间;
sunsky
2020/08/20
23.9K0
【教你搭建服务器系列】(9)让你的服务器更安全
除了使用密钥对之外,只能确保我们的服务器是安全的,但是并不能确保我们的应用是安全的。
HaC
2021/12/07
1.4K0
【教你搭建服务器系列】(9)让你的服务器更安全
日志管理及日志轮询
日志对于安全来说,非常重要,他记录了系统每天发生的各种各样的事情,你可以通过他来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹。
互联网老辛
2020/05/14
2K0
Linux 系统日志-secure,btmp,wtmp文件详解
Linux系统提供了全方位的日志记录。我们登录Linux系统之后做的事情Linux都有相应的日志记录。整个日志系统比较多。这里只介绍和登录比较密切相关的三个日志。
zinyan.com
2022/12/08
11.9K0
Linux 系统日志-secure,btmp,wtmp文件详解
【教你搭建服务器系列】(2)搭建服务器环境,安装JDK、MySQL、Redis、Tomcat、Nginx
在配置服务器环境的时候,需要下载很多东西,比如你要安装jdk,你可以使用yum命令;也可以使用ftp工具把预先下载的.gz 压缩包上传到服务器,然后解压安装。
HaC
2020/11/05
1.9K0
【教你搭建服务器系列】(2)搭建服务器环境,安装JDK、MySQL、Redis、Tomcat、Nginx
Linux系统|Linux系统应急响应
当我们被告知一台Linux服务器被黑客入侵,黑客利用该服务器进行挖矿,并且在该服务器上放置了木马后门。现在我们需要对该服务器做排查,关闭和清除掉挖矿程序以及木马后门,探测出黑客是通过什么方式入侵该服务器的,并且最后要将该漏洞进行修补,以确保服务器的正常运行。
谢公子
2022/01/13
11K0
Linux系统|Linux系统应急响应
解析SSH登录日志的奥秘:深入了解日志的形成过程
SSH登录日志是维护系统安全、进行故障排除、进行安全审计和监控的重要依据。通过对日志的分析和解读,管理员可以及时发现潜在的安全威胁,防范潜在的入侵,同时也能优化系统性能,保障系统的正常运行。
Lion 莱恩呀
2025/07/03
1750
解析SSH登录日志的奥秘:深入了解日志的形成过程
Linux系统管理—linux计划任务和日志的管理
一种是突发性的,就是这次做完了这个事,就没有下一次了,临时决定,只执行一次的任务
全栈程序员站长
2022/09/14
2.4K0
Linux系统管理—linux计划任务和日志的管理
服务器入侵排查流程
1.查询可疑端口、进程、ip:netstat -antlp | more 或者 netstat -anltp | grep pid,若存在可疑进程可通过 ls -l /proc/PID 查看PID对应的进程文件路径。
iginkgo18
2020/09/27
4K0
Linux主机被入侵后的处理案例
IT行业发展到现在,安全问题已经变得至关重要,从“棱镜门”事件中,折射出了很多安全问题,信息安全问题已变得刻不容缓,而做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务,首先要站在攻击者的角度思考问题,修补任何潜在的威胁和漏洞。 一次Linux被入侵后的分析 下面通过一个案例介绍下当一个服务器被rootkit入侵后的处理思路和处理过程,rootkit攻击是Linux系统下最常见的攻击手段和攻击方式。 1、受攻击现象 这是一台客户的门户网站服务器,托管在电信机房,客户接到电信的通知:由于
小小科
2018/05/03
2.2K0
Linux 应急响应入门:入侵排查应该这样做
在排查服务器的时候,黑客没有在线,可以使用last命令排查黑客什么时间登录的有的黑客登录时,会将/var/log/wtmp文件删除或者清空,这样我们就无法使用last命令获得有用的信息了。
杰哥的IT之旅
2021/04/20
9640
Linux系统日志及分析
Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并可以从中检索出我们需要的信息。 大部分Linux发行版默认的日志守护进程为 syslog,位于 /etc/syslog 或 /etc/syslogd 或/etc/rsyslog.d,默认配置文件为 /etc/syslog.conf 或 rsyslog.conf,任何希望生成日志的程序都可以向 syslog 发送信息。
菲宇
2022/12/02
8.4K0
Linux系统日志及分析
Linux日志-secure日志
作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
运维小路
2024/11/01
1.2K0
Linux日志-secure日志
相关推荐
【教你搭建服务器系列】(7)一次服务器被黑的排查全过程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档