返回顶部
首页 > 资讯 > 操作系统 >Linux手工入侵排查思路是怎样的
  • 891
分享到

Linux手工入侵排查思路是怎样的

2023-06-15 13:06:16 891人浏览 八月长安
摘要

linux手工入侵排查思路是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。当Linux主机发生安全事件需要进行入侵排查时,一般可以使用常见的shell命令

linux手工入侵排查思路是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

当Linux主机发生安全事件需要进行入侵排查时,一般可以使用常见的shell命令,通过分析主机的异常现象、进程端口、启动方式、可疑文件和日志记录等信息以确认主机是否被入侵。

01、检查系统账号

从攻击者的角度来说,入侵者在入侵成功后,往往会留下后门以便再次访问被入侵的系统,而创建系统账号是一种比较常见的后门方式。在做入侵排查的时候,用户配置文件/etc/passwd和密码配置文件/etc/shadow是需要去重点关注的地方。

(1)查询特权用户特权用户(uid 为0)

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

(2)查询可以远程登录的帐号信息

awk '/\$1|\$6/{print $1}' /etc/shadow

(3)除root帐号外,其他帐号是否存在sudo权限。如非管理需要,普通帐号应删除sudo权限

more /etc/sudoers | grep -v "^#\|^$" | grep "ALL=(ALL)"

(4)禁用或删除多余及可疑的帐号

usermod -L user    禁用帐号,帐号无法登录,/etc/shadow第二栏为!开头 userdel user       删除user用户 userdel -r user    将删除user用户,并且将/home目录下的user目录一并删除

(5)当前登录当前系统的用户信息

who     查看当前登录用户(tty本地登陆  pts远程登录) w       查看系统信息,想知道某一时刻用户的行为 uptime  查看登陆多久、多少用户,负载

02、检查异常端口

(1)使用netstat 网络连接命令,分析可疑端口、IP、PID等信息。

netstat -antlp|more

(2)如发现异常的网络连接需要持续观察,可抓包分析

tcpdump -c 10 -q //精简模式显示 10个包

03、检查可疑进程

(1)使用ps命令列出系统中当前运行的那些进程,分析异常的进程名、PID,可疑的命令行等。

ps aux / ps -ef

(2)通过top命令显示系统中各个进程的资源占用状况,如发现资源占用过高

top

(3)如发现异常,可使用一下命令进一步排查:

查看该进程启动的完整命令行: ps eho command -p $PID 查看该进程启动时候所在的目录: readlink /proc/$PID/cwd 查看下pid所对应的进程文件路径:ls -l /proc/$PID/exe 查看该进程启动时的完整环境变量: strings -f /proc/1461/environ | cut -f2 -d '' 列出该进程所打开的所有文件: lsof -p $PID

04、检查系统服务

Linux系统服务管理,Centos7使用systemd控制 CentOS6之前使用chkconfig控制。

(1)对于systemd服务管理器来说,可以通过下述方式查看开机自启的服务:

systemctl list-unit-files --type=service | grep "enabled"

(2)chkconfig就是CentOS6以前用来控制系统服务的工具,查看服务自启动状态:

chkconfig  --list   chkconfig --list | grep "3:on\|5:on"

05、检查开机启动项

(1)检查启动项脚本

more /etc/rc.local /etc/rc.d/rc[0~6].d ls -l /etc/rc.d/rc3.d/

(2)例子:当我们需要开机启动自己的脚本时,只需要将可执行脚本丢在/etc/init.d目录下,然后在/etc/rc.d/rc*.d中建立软链接即可

ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh

此处sshd是具体服务的脚本文件,S100ssh是其软链接,S开头代表加载时自启动;如果是K开头的脚本文件,代表运行级别加载时需要关闭的。

06、检查计划任务

利用计划任务进行权限维持,可作为一种持久性机制被入侵者利用。检查异常的计划任务,需要重点关注以下目录中是否存在恶意脚本。

/var/spool/cron/*  /etc/crontab /etc/cron.d/* /etc/cron.daily/*  /etc/cron.hourly/*  /etc/cron.monthly/* /etc/cron.weekly/ /etc/anacrontab /var/spool/anacron/*

07、检查异常文件

查看敏感目录,如/tmp目录下的文件,同时注意隐藏文件夹,以“..”为名的文件夹具有隐藏属性

得到发现WEBSHELL、远控木马的创建时间,如何找出同一时间范围内创建的文件?

可以使用find命令来查找,如 find /opt -iname "*" -atime 1 -type f 找出 /opt 下一天前访问过的文件

针对可疑文件可以使用stat进行创建修改时间。

08、检查历史命令

一般而言,入侵者获取shell之后,会执行一些系统命令从而在主机上留下痕迹,我们可以通过history命令查询shell命令的执行历史。

(1)查询某个用户在系统上执行了什么命令

使用root用户登录系统,检查/home目录下的用户主目录的.bash_history文件

(2)默认情况下,系统可以保存1000条的历史命令,并不记录命令执行的时间,根据需要进行安全加固。

a)保存1万条命令sed -i 's/^HISTSIZE=1000/HISTSIZE=10000/g'  /etc/profileb)在/etc/profile的文件尾部添加如下行数配置信息:######jiagu history  xianshi#########USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e  's/[()]//g'`if [ "$USER_IP" = "" ]thenUSER_IP=`hostname`fiexport  HISTTIMEFORMAT="%F %T $USER_IP `whoami` "shopt -s histappendexport  PROMPT_COMMAND="history -a"######### jiagu history xianshi ##########c)source  /etc/profile让配置生效

09、检查系统日志

在Linux上一般跟系统相关的日志默认都会放到/var/log下面,若是一旦出现问题,用户就可以通过查看日志来迅速定位,及时解决问题。常用日志文件如下:

/var/log/btmp:记录错误登录日志,这个文件是二进制文件,不能直接vi查看,而要使用lastb命令查看。/var/log/lastlog:记录系统中所有用户最后一次登录时间的日志,这个文件是二进制文件,不能直接vi,而要使用lastlog命令查看。/var/log/wtmp:永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi,而需要使用last命令来查看。/var/log/utmp:记录当前已经登录的用户信息,这个文件会随着用户的登录和注销不断变化,只记录当前登录用户的信息。同样这个文件不能直接vi,而要使用w,who,users等命令来查询。/var/log/secure:记录验证和授权方面的信息,只要涉及账号和密码的程序都会记录,比如SSH登录,su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中

一般,我们需要重点去关注secure安全日志,检查系统错误登陆日志,统计IP重试次数,成功登录的时间、用户名和ip,确认账号是否存在暴力破解或异常登录的情况。

定位有多少IP在爆破主机的root帐号:grep "Failed passWord for root" /var/log/secure | awk  '{print $11}' | sort | uniq -c | sort -nr | more定位有哪些IP在爆破:grep "Failed  password" /var/log/secure|grep -E -o  "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq  -c爆破用户名字典是什么? grep "Failed password" /var/log/secure|perl -e  'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort  -nr2、登录成功的IP有哪些:grep "Accepted " /var/log/secure | awk '{print $11}' | sort |  uniq -c | sort -nr | more登录成功的日期、用户名、IP:grep "Accepted " /var/log/secure | awk  '{print $1,$2,$3,$9,$11}'

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网操作系统频道,感谢您对编程网的支持。

--结束END--

本文标题: Linux手工入侵排查思路是怎样的

本文链接: https://lsjlt.com/news/280327.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Linux手工入侵排查思路是怎样的
    Linux手工入侵排查思路是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。当Linux主机发生安全事件需要进行入侵排查时,一般可以使用常见的shell命令...
    99+
    2023-06-15
  • 怎样排查Linux机器是否已经被入侵
    本篇文章为大家展示了怎样排查Linux机器是否已经被入侵,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。随着开源产品的越来越盛行,作为一个Linux运维工程师,能够清晰地鉴别异常机器是否已经被入侵了显...
    99+
    2023-06-28
  • Linux云服务器入侵怎么排查
    本篇内容介绍了“Linux云服务器入侵怎么排查”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!检查当前登录用...
    99+
    2023-02-10
    linux 云服务器
  • 如何排查Linux机器是否已经被入侵
    小编给大家分享一下如何排查Linux机器是否已经被入侵,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1. 入侵者可能会删除机器的日志信息可以查看日志信息是否还存在或者是否被清空,相关命令示例:[root@hlmcen69n...
    99+
    2023-06-16
  • Linux 运维故障排查思路是什么
    本篇文章为大家展示了Linux 运维故障排查思路是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1. 背景有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源。这时候就需要登录服务...
    99+
    2023-06-15
  • 检查Linux是否被入侵的方法有哪些
    本篇内容介绍了“检查Linux是否被入侵的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文给大家收集整理了一些审查Linux系统...
    99+
    2023-06-13
  • web前端工程师正确的学习思路是怎样的
    web前端工程师正确的学习思路是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。对于零基础的学员来说:初接触一门技术,想要...
    99+
    2024-04-02
  • 涉及到linux内核的bug排查过程是怎样的
    这期内容当中小编将会给大家带来有关涉及到linux内核的bug排查过程是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。编写代码只是程序员的工作之一,调试代码的时间甚至会超过编写代码,之前为大家讲解了...
    99+
    2023-06-15
  • 解决Nginx 400 Bad Request问题的思路是怎样的
    解决Nginx 400 Bad Request问题的思路是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。400 Bad Request是一种HTTP错误状态码。HTT...
    99+
    2023-06-04
  • Linux硬件故障排除指南是怎样的
    Linux硬件故障排除指南是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。了解是什么原因导致你的 Linux 硬件发生故障,以便你可以将其恢复并快速运行。Linux 服务...
    99+
    2023-06-16
  • mysql数据库优化思路与方向是怎样的
    mysql数据库优化思路与方向是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、基础优化mysql> show status l...
    99+
    2024-04-02
  • mysql数据库磁盘io高的排查是怎样的
    mysql数据库磁盘io高的排查是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。     最近,数据库会报...
    99+
    2024-04-02
  • 新手用的Python开发工具是怎么样的
    新手用的Python开发工具是怎么样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Python开发工具很多,比较大有的重型武器有Pycharm,Anaconda,VS Cod...
    99+
    2023-06-17
  • linux性能分析工具dstat是怎样的
    本篇文章给大家分享的是有关linux性能分析工具dstat是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。linux性能分析图表dsta...
    99+
    2024-04-02
  • nf_conntrack中table full, dropping packet问题的解决思路是怎样的
    本篇文章为大家展示了nf_conntrack中table full, dropping packet问题的解决思路是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。介绍:nf_conntrack...
    99+
    2023-06-13
  • Linux日志文件系统是怎样工作的
    本篇内容介绍了“Linux日志文件系统是怎样工作的”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!文件系统要解决的一个关键问题是怎样防止掉电或...
    99+
    2023-06-15
  • PHP新手必看:Laravel框架路径教程是怎样的?
    Laravel是一种流行的PHP开发框架。这个框架的最大优势之一是其清晰的目录结构。在Laravel的目录结构中,每个文件夹都有其特定的作用,因此学习Laravel的目录结构是很重要的。 在本篇文章中,我们将介绍Laravel框架的目录结...
    99+
    2023-07-02
    laravel path 教程
  • IE6、IE7、IE8的CSS兼容速查手册是怎样的
    这篇文章给大家介绍IE6、IE7、IE8的CSS兼容速查手册是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。你对IE兼容性问题是否有所研究,这里向大家描述一下IE6/IE7/IE...
    99+
    2024-04-02
  • Linux系统性能监控工具Glances是怎样的
    本篇文章为大家展示了Linux系统性能监控工具Glances是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、Glances介绍glances是一个基于python语言开发,可以为linux...
    99+
    2023-06-16
  • Linux内核开发工具介绍是怎么样的
    本篇文章给大家分享的是有关Linux内核开发工具介绍是怎么样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。众所周知,Linux内核是使用make命令来配置并编译的,那必然少不...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作