01
—
Systemd
路径:/usr/lib/systemd/systemd
父进程:无
进程 ID:1
用户帐户:root
启动时间:跟随系统启动时运行
描述:内核初始化设备,挂载根文件系统,然后运行/sbin/init,被指定为系统运行的第一个进程(PID = 1)。init 是 Initialization 的缩写。init 是一个守护进程,在计算机启动后启动并持续运行,直到它关闭。事实上,init 是计算机启动后启动的第一个进程,使其直接或间接地成为其他所有正在运行进程的父进程,因此通常被分配"pid=1"。systemd 是系统守护进程,以 UNIX 约定命名,在守护进程的末尾添加d,与 init 类似。
02
—
[kthreadd]
路径:无
父进程:无
进程 ID:2
用户帐户:root
启动时间:跟随系统启动时运行
描述:[kthreadd] 有许多子进程,例如[migration/0]是内核的一部分,主要作用是用来执行进程迁移操作。[crypto] 提供对内核加密 API 的访问,该 API 旨在对加密和未加密数据之间的转换。[kworker/0:0]是内核工作线程的占位进程,它执行内核的大部分实际处理,特别是在有中断、定时器、I/O 等的情况下。内核线程不是 init 或 systemd 的子线程,因为它们可以在所有用户空间进程之前启动。它们通常用于管理硬件,这就是为什么它们由内核直接处理并具有高优先级的原因。
03
—
systemd-journald
路径:/usr/lib/systemd/systemd-journald
父进程:Systemd
进程ID:随机
父进程ID:1
用户帐户:root
启动时间:跟随系统启动
描述:systemd-journald 是一个收集和存储日志数据的系统服务。
04
—
lvmetad
路径:/usr/sbin/lvmetad
父进程:Systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:系统启动后
描述:lvmetad是LVM的元数据缓存守护程序。守护程序从udev规则(必须安装lvmetad才能使LVM正常工作)接收通知。通过这些通知,lvmetad具有系统中可用卷组的最新且一致的映像。默认情况下,LVM不使用lvmetad(即使正在运行)。
05
—
systemd-udevd
路径:/usr/lib/systemd/systemd-udevd
父进程:Systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:系统启动后
描述: systemd-udevd是监听内核发出的设备事件,并根据udev规则处理每个事件。
06
—
auditd
路径:/sbin/auditd
父进程:Systemd
进程ID:随机
父进程ID:1
用户帐户:root
启动时间:系统启动后
描述:auditd(或 auditd 守护进程)是Linux审计系统中用户空间的一个组件,其负责将审计记录写入磁盘。
07
—
dbus
路径:/usr/bin/dbus-daemon
父进程:Systemd
进程ID:随机
父进程ID:1
用户帐户:dbus
启动时间:系统启动后
描述:DBus作为一个轻量级的IPC被越来越多的平台接受,用于进程间通信或进程与内核的通信。
DBus进程间通信主要有三层架构:
1.底层接口层:主要是通过libdbus这个函数库,给予系统使用DBus的能力。
2.总线层:主要Message bus daemon这个总线守护进程提供的,在Linux系统启动时运行,负责进程间的消息路由和传递,其中包括Linux内核和Linux桌面环境的消息传 递。总线守护进程可同时与多个应用程序相连,并能把来自一个应用程序的消息路由到0或者多个其他程序。
3.应用封装层:通过一系列基于特定应用程序框架将DBus的底层接口封装成友好的Wrapper库,供不同开发人员使用。比如libdbus-glib, libdbus-python。
08
—
systemd-logind
路径:/usr/lib/systemd/systemd-logind
父进程:Systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:系统启动后
描述:
systemd-logind 是一个管理用户登录的系统服务。它负责:
持续跟踪用户的会话、进程、空闲状态。
为用户的特权操作(例如关闭或休眠系统) 提供基于 polkit 的认证与授权
为应用程序实现 阻止关闭/休眠系统的逻辑
处理硬件关机/休眠按钮的动作
多席位(Multi-Seat)管理
会话切换管理
管理用户对设备的访问
在启动虚拟终端时自动启动文本登录程序(agetty),并管理用户的运行时目录。
09
—
rngd
路径:/sbin/rngd
父进程:systemd
进程ID:随机
父进程ID:1
用户帐户:rngd
开始时间:系统启动后
描述:为硬件设备和内核检查和提供随机数据,并确保随机数正确。
10
—
gssproxy
路径:/usr/sbin/gssproxy -D
父进程:systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:系统启动后
11
—
chronyd
路径:/usr/sbin/chronyd
父进程:systemd
进程ID:随机
父进程ID:1
用户帐户:chrony
启动时间:系统启动后
描述:chrony是两个用来维持计算机系统时钟准确性的程序,这两个程序命名为chronyd和chronyc。chronyd是一个在系统后台运行的守护进程。他根据网络上其他时间服务器时间来测量本机时间的偏移量从而调整系统时钟。对于孤立系统,用户可以手动周期性的输入正确时间(通过chronyc)。在这两种情况下,chronyd决定计算机快慢的比例,并加以纠正。chronyd实现了NTP协议并且可以作为服务器或客户端。chronyc是用来监控chronyd性能和配置其参数的用户界面。他可以控制本机及其他计算机上运行的chronyd进程。
12
—
dhclient
路径:/sbin/dhclient
父进程:systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间: 系统启动后
描述:DHCP 客户端
13
—
postfix/master
路径:/usr/libexec/postfix/master
父进程:systemd
进程 ID:随机
父进程 ID:1
用户帐户:postfix
启动时间:系统启动
描述:postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件。当Postfix被启动后,首先启动的是master daemon,它主导邮件的处理流程,同时也是其他组件的总管。在处理邮件的过程中,master会启动对应功能的组件来处理相关事宜,被master启动的组件,在完成交付的工作之后会自行结束;或者,如果组件的处理时间超过时限,或是工作量到达预定限度,组件也会自行结束。master daemon会常驻在系统中,当管理员启动它时,它从main.cf和master.cf这两个配置文件取得启动参数。
14
—
postfix/pickup
路径:/usr/libexec/postfix/pickup
父进程:systemd
进程 ID:随机
用户帐户:postfix
启动时间:系统启动后
描述:监视maildrop/子目录,读出新邮件,交给cleanup组件。
15
—
postfix/qmgr
路径: /usr/libexec/postfix/qmgr
父进程:systemd
进程 ID:随机
用户帐户:postfix
启动时间:系统启动后
描述:队列管理器。各个postfix组件之间的合作依靠队列交换邮件。
16
—
rsyslogd
路径:/usr/sbin/rsyslogd
父进程:systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:系统启动后
描述:rsyslog是一个开源的软件,它负责写入日志,记录绝大部分的日志,例如:系统日志、认证ssh日志、计划任务at,cron等日志。rsyslogd是日志服务进程,配置文件位于/etc/rsyslog.conf ,负责定义处理日志消息的规则。
17
—
atd
路径:/usr/sbin/atd
父进程:systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:在系统启动的
描述:是linux计划任务的守护进程。
18
—
crond
路径:/usr/sbin/crond
父进程:systemd
进程 ID:随机
父进程 ID:1
用户帐户:root
启动时间:系统启动后
描述:crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。Linux下的任务调度分为两类,系统任务调度和用户任务调度。系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。
18
—
agetty
路径:/sbin/agetty
父进程:systemd
进程 ID:随机
父进程ID:1
用户帐户:root
开始时间:系统启动后
描述:agetty是一个Linux版本的getty。getty 是"get tty"的缩写,是一个运行在主机上的 Unix 程序,用于管理物理或虚拟终端以允许多用户访问。
19
—
sshd
路径:/usr/sbin/sshd
父进程:systemd
进程ID:随机
父进程ID:1
用户帐户:root
开始时间:系统启动后
描述:sshd(secure shell)服务使用ssh协议远程开启其他主机shell的服务。
20
—
恶意进程识别
(1)内核进程([])没有进程路径,与它关联的二进制文件和PPID都为零,如果有路径和关联的二进制文件,则该进程是可疑的。
(2)攻击者通常会伪装系统进程来命名恶意进程,可以检查进程命令行,如果进程路径指向如/tmp等,父进程和进程启动的时间异常,进程是否由预期的用户启动,是否消耗高CPU资源(可能是矿机),或存在不正常的网络连接。
(3)procfs 是一个虚拟文件系统,包含有关进程和其他系统信息的信息。
进程路径:
/proc/<PID>/exe
查看进程的虚拟地址空间:
/proc/<PID>/maps
进程环境变量:
/proc/<PID>/environ
文件描述符,查看进程打开/处理了哪些文件
ls -al /proc/<PID>/fd
进程状态:
`/proc/PID/stat``/proc/PID/status`
进程的I/O统计:
/proc/PID/io
当前工作目录:
/proc/PID/cwd
进程hash:
sha256sum /proc/$pid/exe
(4)有时恶意软件会在启动后自行删除,检查已删除的二进制文件是否仍在运行。
ls -alR /proc/*/exe 2> /dev/null | grep deleted