Linux主机安全排查

共 2462字,需浏览 5分钟

 ·

2021-02-07 03:48

文章源自【字节脉搏社区】-字节脉搏实验室

作者-kongfree

扫描下方二维码进入社区

一. 进程

执行ps -aux或者ps -ef查看是否存在异常进程。

技巧:

使用 grep对进程进行塞选

示例:ps –ef |grep syslog

8c316af00a6ee5828878bf78aecfc680.webp

76ff3f30b1a6b5c28621f0e44af20222.webp

 二. 网络连接

(1)可查看是否存在外部连接等  netstat -anptu

8c316af00a6ee5828878bf78aecfc680.webp

0fc4fcd70b0e6882ef61466e4e1eefc0.webp

(2)执行w命令可以确定当前哪些用户已登录系统。

8c316af00a6ee5828878bf78aecfc680.webp

bb7e6fd393904b7eb9bfa6ec36138306.webp

(3)使用lsof –i(仅限Linux)显示进程和端口对应关系          

8c316af00a6ee5828878bf78aecfc680.webp

三. CPU等使用检测

使用top命令查看,可按大写P让其按cpu大小排序 。ps -elf 可疑$PID 、ps -aux命令检查排名靠前的或者不断变化的程序。同时使用 $ kill -s 9 pid 结束进程。

8c316af00a6ee5828878bf78aecfc680.webp

四. 登录情况

 使用last命令

8c316af00a6ee5828878bf78aecfc680.webp

a03a3bdf05544675be13b1aaf6e0774b.webp

    第一列信息:用户名,或者显示reboot(启动或者重启操作在这里会记录成reboot)

    第二列信息:终端位置,pts/0 (伪终端或虚拟终端) 意味着从诸如SSH或telnet的远程连接的用户。

        tty (teletypewriter) 意味着直接连接到计算机或者本地连接的用户,如果是启动或者重启操作,这里会显示成system boot

    第三列信息:登录ip或者内核,如果你看见:0.0 或者什么都没有,这意味着用户通过本地终端连接。

       也有在状态中显示内核版本的信息,笔者猜测这些记录应该是属于系统的操作,如开机,关机,重启等操作

    第四列信息:开始时间,其中的日期格式为date +"%a %b %d"

    第五列信息:结束时间(still login in 还未退出 down 直到正常关机 crash 直到强制关机)

    第六列信息:持续时间

8c316af00a6ee5828878bf78aecfc680.webp

五.动态链接与端口开放

动态链接 $echo $LD_PRELOAD

使用netstat –anp 命令查看当前开放的端口。

8c316af00a6ee5828878bf78aecfc680.webp

 六. 用户及用户文件

1.查看是否有异常的系统用户。

8c316af00a6ee5828878bf78aecfc680.webp

53197904a40c57ca1da9acf595b5d9ed.webp

解释/etc/passwd中7段意义:(用户名:密码:UID:GID:注释:家目录:默认SHELL)

              1).account: 登录名

              2).password: 密码

              3).UID:

              4).GID:基本组ID

              5).comment: 注释

              6).HOME DIR:家目录

              7).SHELL:用户的默认shell


检查除root用户外是否存在其他用户的UID为0,也可执行命令:

awk -F : '$3==0{print}' /etc/passwd


2./etc/passwd默认权限为644,其最小权限为444,首先应对该文件权限进行检查,以确认配置是否正确


3. shadow文件

shadow默认权限为600,最小权限为400,检查权限配置是否正确:

ls – l /etc/shadow

8c316af00a6ee5828878bf78aecfc680.webp

七.计划任务(cron)

ls -latr /etc/cron.d/

ls -latr /etc/cron.daily/

ls -latr /etc/cron.hourly/

ls -latr /etc/cron.weekly/

ls -latr /etc/cron.monthly/

ls -latr /etc/crontab

8c316af00a6ee5828878bf78aecfc680.webp

ff551ceb78c4bff01418833417c48f0b.webp

八. 日志文件

 less /var/log/messages

作用:纪录几乎系统发生的错误讯息

关注信息:记录运行信息和认证信息,对于追查恶意用户的登录行为有很大帮助

less /var/log/secure


作用:记录登入系统存取数据,例如pop3, ssh, telnet, ftp 等都会记录在此日志中

关注信息:记录添加用户,更改密码等。ssh登录日志会存储于/var/log/secure中,若日志中出现连续大量的登录错误信息,则可能意味着远程主机在尝试破解ssh登录口令。

/var/log/wtmp 用last打开


作用:记录登录信息

信息:查看最近的用户登录情况。


less /var/log/cron

作用:记录 crontab (计划任务)服务的内容

信息:查看是否有攻击者设置的计划任务或恶意脚本的计划任务

8c316af00a6ee5828878bf78aecfc680.webp


通知!

公众号招募文章投稿小伙伴啦!只要你有技术有想法要分享给更多的朋友,就可以参与到我们的投稿计划当中哦~感兴趣的朋友公众号首页菜单栏点击【商务合作-我要投稿】即可。期待大家的参与~

记得扫码

关注我们

浏览 48
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报