Linux系统入侵排查(二)

前言

为什么要做系统入侵排查

入侵排查1

1.排查历史命令记录 

2.可疑端口排查

3.可疑进程排查

4.开机启动项

4.1系统运行级别示意图:

4.2查看运行级别命令

4.3系统默认允许级别

4.4.开机启动配置文件

入侵排查2:

1.启动项文件排查:

2.定时任务排查

1、利用crontab创建计划任务

2、利用anacron实现异步定时任务调度

3.入侵排查

小技巧:

3.服务排查

3.1第一种修改方法:

3.2第二种修改方法:

3.3第三种修改方法:

3.4入侵排查

1、查询已安装的服务:

2.源码包安装的服务

总结


前言


        对我处在学生时期的我来说,目前web渗透还是为主,但是还是需要对于蓝队相关的应急响应,等保测评等还是需要有一定的了解的,攻防兼备才能越站越勇嘛,linux入侵排查也能够让我更加熟悉liunx命令,本篇博文紧接上一篇博文开始进行.

为什么要做系统入侵排查

        当企业发生黑客入侵、系统崩溃或其它影响业务正常运行的安全事件时,急需第一时间进行处理,使企业的网络信息系统在最短时间内恢复正常工作,进一步查找入侵来源,还原入侵事故过程,同时给出解决方案与防范措施,为企业挽回或减少经济损失。针对常见的攻击事件,结合工作中应急响应事件分析和解决的方法,总结了一些Linux服务器入侵排查的思路。

入侵排查思路
作为渗透小子一名,当然是通过kali来进行练习和总结了

入侵排查1

1.排查历史命令记录 

        进入用户目录下,这里用户指的是,觉得可疑的用户或是要排查的用户,这里用root用户进行示例

进入用户目录下后将需要查询的历史操作命令追加到,一个自己命名的txt文件中,然后自己查看,历史命令看是否存在可疑的命令. 

cd /root/cat .bash_history >> his.txt(自己命名) 

2.可疑端口排查

使用netstat 网络连接命令,分析可疑端口、IP、PID

netstat -antlp|more

其中图中Local Address代表开放的端口,如图所示只开放了22,36029这两个端口

        查看下pid所对应的进程文件路径,这里我用上图所示的1039进程做个示例,可以查看对应进程文件件的位置,如果发现可疑端口开放,可以查看对应的进程进行关闭进程

运行ls -l /proc/$PID/exe或file /proc/$PID/exe($PID 为对应的pid 号)

发现可疑的进程,通过下面的命令进行关闭 

sudo kill -9 进程PID号

3.可疑进程排查

这个其实上面的基本就处理了一部分了

使用ps命令,分析进程

ps aux | grep pid

  1. 第一列是进程ID(PID),例如911、1885和5836。
  2. 第二列是进程所属用户,例如message+、kali和root。
  3. 第三列是进程占用的CPU百分比,例如0.0、0.3和0.1。
  4. 第四列是进程占用的内存百分比,例如0.3、0.3和0.1。
  5. 第五列是进程占用的虚拟内存大小,单位为KB,例如11948、10632和6572。
  6. 第六列是进程占用的常驻内存大小,单位为KB,例如6144、6144和2304。
  7. 第七列是进程状态,例如Ss、Ss和S+。其中S表示休眠状态,s表示中断等待状态,+表示前台运行状态。
  8. 第八列是进程启动时间,例如13:29、13:35和17:10。
  9. 第九列是进程运行时间,例如0:01、0:01和0:00。
  10. 第十列是进程的命令行,例如/usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile 

4.开机启动项

基本使用:

4.1系统运行级别示意图:

运行级别含义
0关机
1单用户模式,可以想象为Windows的安全模式,主要用于系统修复
2不完全的命令行模式,不含NFS服务
3完全的命令行模式,就是标准字符界面
4系统保留
5图形模式
6重启动

4.2查看运行级别命令

runlevel

┌──(root㉿kali)-[~]
└─# runlevel
N 5  代表我现在使用的是图形界面

4.3系统默认允许级别

vi /etc/inittab
id=3:initdefault 系统开机后直接进入哪个运行级别

4.4.开机启动配置文件

/etc/rc.local
​
/etc/rc.d/rc[0~6].d

例子:当我们需要开机启动自己的脚本时,只需要将可执行脚本丢在 /etc/init.d 目录下,然后

在 /etc/rc.d/rc*.d 中建立软链接即可

┌──(root㉿kali)-[~]
└─# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh

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

入侵排查2:

1.启动项文件排查:

排查启动项文件夹,下面的是通过简化方式进行写的,主要看当然目录的位置

示例: more /etc/rc0.d

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

2.定时任务排查

基本使用

1、利用crontab创建计划任务

基本命令

crontab -l 列出某个用户cron服务的详细内容
Tips:默认编写的crontab文件会保存在 (/var/spool/cron/用户名 例如: /var/spool/cron/root
crontab -r 删除每个用户cront任务(谨慎:删除所有的计划任务)
crontab -e 使用编辑器编辑当前的crontab文件
如:/1 * echo "hello world" >> /tmp/test.txt 每分钟写入文件
2、利用anacron实现异步定时任务调度

使用示例:

每天运行 /home/backup.sh 脚本: vi /etc/anacrontab @daily 10 example.daily /bin/bash

/home/backup.sh

        当机器在 backup.sh 期望被运行时是关机的,anacron会在机器开机十分钟之后运行它,而不用再等待7天。

3.入侵排查

        重点关注以下目录中是否存在恶意脚本,查看方法和上面的一致,基本都是查看对应目录下是否有可疑的文件.

/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/*
小技巧:
more /etc/cron.daily/* 查看目录下所有文件

3.服务排查

服务自启动

3.1第一种修改方法:
chkconfig [--level 运行级别] [独立服务名] [on|off]
chkconfig –level  2345 httpd on 开启自启动
chkconfig httpd on (默认level是2345)
3.2第二种修改方法:
修改/etc/re.d/rc.local 文件  
加入 /etc/init.d/httpd start
3.3第三种修改方法:

使用ntsysv命令管理自启动,可以管理独立服务和xinetd服务。

3.4入侵排查
1、查询已安装的服务:

RPM包安装的服务

chkconfig --list 查看服务自启动状态,可以看到所有的RPM包安装的服务
ps aux | grep crond 查看当前服务
系统在3与5级别下的启动项
中文环境
chkconfig --list | grep "3:启用\|5:启用"
英文环境
chkconfig --list | grep "3:on\|5:on"
2.源码包安装的服务
查看服务安装位置 ,一般是在/user/local/
service httpd start
搜索/etc/rc.d/init.d/ 查看是否存在

总结

        对系统进行入侵排查也是比较费时间和精力的一次行动,本篇目前只记录这么多,后续会继续记录和总结.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/834318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

友思特分享 | 激发专属跃迁:用于皮肤医美和光学研究种子源的DPSS激光器

导读 紧凑、坚固、稳定和提供高质量光束的友思特DPSS激光器因其卓越的性能,可作为激光种子源,广泛应用于皮肤医美、非线性光学OPO,以及全息投影技术。 激光(Laser)的诞生是上个世纪科学技术的巨大飞跃,其发…

$L(x) = (\frac{1}{2}x^HAx-b^Hx)^2, x\in C^{n \times 1}$是凸的

L ( x ) ( 1 2 x H A x − b H x ) 2 , x ∈ C n 1 L(x) (\frac{1}{2}x^HAx-b^Hx)^2, x\in C^{n \times 1} L(x)(21​xHAx−bHx)2,x∈Cn1是凸的 已知: L ( x ) ( 1 2 x H A x − b H x ) 2 , x ∈ C n 1 L(x) (\frac{1}{2}x^HAx-b^Hx)^2, x\in C^{n \times 1…

大语言模型入门介绍(附赠书)

自2022年底ChatGPT的震撼上线以来,大语言模型技术迅速在学术界和工业界引起了广泛关注,标志着人工智能技术的又一次重要跃进。作为当前人工智能领域的前沿技术之一,代表了机器学习模型在规模和复杂性上的显著进步。它们通常由深度神经网络构成…

C++进阶之路:何为命名空间、缺省参数与函数重载

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

哈夫曼树学习

哈夫曼树(Huffman Tree)是一种特殊的二叉树,它根据给定的权值构造而成,并且其带权路径长度(WPL)达到最小。在计算机数据处理中,哈夫曼树常用来进行无损数据压缩,特别是通过哈夫曼编码…

如何修复连接失败出现的错误651?这里提供修复方法

错误651消息在Windows 7到Windows 11上很常见,通常会出现在一个小的弹出窗口中。实际文本略有不同,具体取决于连接问题的原因,但始终包括文本“错误651”。 虽然很烦人,但错误651是一个相对较小的问题,不应该导致计算…

C#调用电脑摄像头拍照

1.打开VS2019,新建一个Form窗体,工具->NuGet包管理工具->管理解决方案的NuGet包,在浏览里搜索AForge.Controls、AForge.Video.DirectShow,安装AForge.Controls和AForge.Video.DirectShow 2.安装AForge组件完成后&#xff0c…

docker-compose集成elasticsearch7.17.14+kibana7.17.14

1.docker和compose版本必须要高 2.准备ik分词器(elasticsearch-analysis-ik-7.17.14),下面会用到 https://github.com/infinilabs/analysis-ik/releases?page2 3.配置es-compose.yml(切记映射容器内路径不能更改,es和kibana服务…

git开发工作流程

git开发工作流程 (1)先将远程代码pull到本地 (2)在本地上分支上进行开发 (3)开发完之后,push到远程分支 (4)由远程的master进行所有分支合并

LeetCode例题讲解:只出现一次的数字

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。 示例 1 : 输入&#xff…

浅谈工商业储能发展下 防逆流互感器的优势

安科瑞 王盼盼 18721098782 随着新能源政策的推动和全球能源转型的需求,逆变器行业正在经历快速发展。其中,防逆流装置作为逆变器的重要组成部分,其互感器的选择对于逆变器的性能和稳定性至关重要。本文将从逆变器厂家制作防逆流装…

邦芒简历:避免无缘面试的4种常见简历问题

问题一:重点不明确 一份成功的简历应该明确突出应聘者的核心竞争力和目标职位。很多求职者虽然能力出众,但在撰写简历时未能有效突出自己的优势和目标。如果简历看起来适合任何职位和任何公司,那么它给招聘者的印象就是求职者缺乏明确的职业规…

激光跟踪仪在石油化工领域高效应用

管板式换热器是一种实现物料之间热量传递的节能设备,在石油化工行业生产过程中扮演着重要的角色。无论是在提高生产效率,保证产品质量还是节约能源方面,都发挥着重要作用。 测量需求 管板式热交换器内部有多个管板和折流板,每一…

联机负载-性能测试基础

联机负载-性能测试基础 前置脚本 Action() {int iter_num 0;web_url("webtours", "URLhttp://192.168.30.131:1080/webtours", "TargetFrame", "Resource0", "RecContentTypetext/html", "Referer", "Sna…

IP SSL证书申请教程:实现HTTPS加密访问

随着网络安全意识的提高,HTTPS加密访问已经成为网站安全性的重要标准。通过安装SSL证书,网站可以实现数据的加密传输,有效保护用户隐私和数据安全。本文将详细介绍如何为IP地址申请SSL证书,并实现HTTPS加密访问。 一、准备工作 …

vue项目启动后页面显示‘Cannot GET /’

1、npm run dev命令启动项目的时候没有报错,页面打开却提示 Cannot GET / 2.这个时候只需要找到config文件夹下面的index.js文件。把assetsPublicPath字符串的:‘./’修改成 ‘/’就行了。修改完之后记得关闭项目,然后重新启动。不然不会生效…

【项目经验】雪花算法与时钟回拨问题解决

一、背景 4月10日晚,因某方案需要,某同事将服务器时间由4月10日 18:51分改成了4月11日18:51; 修改几分钟后触发多个业务线阈值报警,大量客诉进线; 某同事发现修改时间时未摘量,迅速将时间恢复到正常:4月10日 18:57,并将该服务器部署所有的docker实例重启; …

UE5材质基础(2)——数学节点篇1

UE5材质基础(2)——数学节点篇1 目录 UE5材质基础(2)——数学节点篇1 Add节点 Append节点 Abs节点 Subtract节点 Multiply节点 Divide节点 Clamp节点 Time节点 Lerp节点 Add节点 快捷键:A鼠标左键 值相加…

董宇辉说:能改变的全力以赴,不能改变的泰然处之。

能改变的全力以赴,不能改变的泰然处之。 董宇辉语录:当你成长的过程中呢,能改变的因素请你全力以赴,不能改变的因素,请你淡然处之,非淡泊无以明志,非宁静无以致远,这是当年诸葛亮给…

WPF中页面加载时由于TreeView页面卡顿

示例&#xff1a;右侧界面的数据根据左侧TreeView的选项加载不同的数据&#xff0c;页面加载时会把所有的数据加载一遍&#xff0c;导致页面卡顿。 解决办法&#xff1a; <Setter Property"IsSelected" Value"{Binding IsSelected}"/>