Linux常见进程解析及其在应急响应中的重要性

admin 2025年6月6日03:50:29评论16 views字数 3323阅读11分4秒阅读模式

在Linux系统中,进程是正在执行的程序的实例。了解系统中常见的、合法的进程,对于日常系统管理和在发生安全事件时进行应急响应 (Incident Response, IR) 至关重要。当可疑活动发生时,能够快速识别异常进程是应急响应的第一步。

常见的合法Linux进程

以下是一些在大多数Linux系统中常见的核心进程和服务进程:

  1. init / systemd (PID 1):

    • systemd (或 init) 自身不太可能直接成为攻击目标,但攻击者可能会尝试将其启动的子进程替换为恶意程序,或注册恶意服务。
    • 检查 systemd 的单元文件 (/etc/systemd/system//run/systemd/system//usr/lib/systemd/system/) 是否有未经授权的修改或新增服务。
    • systemctl list-units --type=service --state=running 可以查看正在运行的服务。
    • 描述: 这是内核启动后执行的第一个用户空间进程,其进程ID (PID) 始终为1。在现代Linux发行版(如Ubuntu 16.04+、CentOS 7+)中,systemd 取代了传统的 init (SysVinit)。
    • 作用: 负责启动和管理系统上的所有其他进程和服务,处理系统关机。
    • 应急响应关联:
  2. kthreadd (通常 PID 2):

    • 这些进程通常是合法的内核活动。但某些内核级Rootkit可能会伪装成内核线程或注入到内核线程中。
    • 异常高的CPU使用率,或者名称看起来可疑(例如,不是方括号包围或者名称拼写错误)的内核线程,需要警惕。
    • 描述: 内核线程创建守护进程。
    • 作用: 负责管理和创建其他内核线程。其子线程通常以 [kworker/...][ksoftirqd/...] 等形式出现,处理中断、工作队列、定时器等内核级任务。
    • 应急响应关联:
  3. sshd:

    • 检查是否有未经授权的 sshd 进程,或监听在异常端口的 sshd 实例。
    • 分析 auth.log 或 secure 日志,查找可疑的登录尝试、成功的未授权登录、来自异常IP的连接。
    • 攻击者可能会替换 sshd 二进制文件,或利用其漏洞。
    • 描述: OpenSSH服务器守护进程。
    • 作用: 允许通过SSH协议进行安全的远程登录和命令执行。
    • 应急响应关联:
  4. cron / crond:

    • 攻击者经常使用cron job来实现持久化,定期执行恶意脚本或连接到C&C服务器。
    • 检查系统级crontab (/etc/crontab/etc/cron.d//etc/cron.hourly/, etc.) 和用户级crontab,查找可疑的、未经授权的条目。
    • 日志通常在 /var/log/syslog 或 /var/log/cron.log 中。
    • 描述: 任务计划守护进程。
    • 作用: 根据预设的时间表(crontab文件)定期执行指定的命令或脚本。
    • 应急响应关联:
  5. rsyslogd / syslog-ng / journald:

    • 这些进程对于日志记录至关重要。如果它们被停止或配置被篡改,可能会导致日志丢失,阻碍调查。
    • 攻击者可能会尝试停止日志服务或修改其配置以避免被记录。检查其运行状态和配置文件 (/etc/rsyslog.conf/etc/systemd/journald.conf)。
    • 描述: 系统日志守护进程。journald 是 systemd 的一部分,负责收集和管理日志。
    • 作用: 收集来自内核、系统服务和应用程序的日志消息,并将其写入到相应的日志文件中。
    • 应急响应关联:
  6. dbus-daemon / dbus-broker-launch:

    • 虽然D-Bus本身是合法的,但它也可能被恶意软件滥用进行进程间通信或权限提升。
    • 异常的D-Bus活动或相关的错误日志可能需要关注。
    • 描述: D-Bus消息总线守护进程。
    • 作用: 提供应用程序间的通信机制 (IPC)。
    • 应急响应关联:
  7. NetworkManager / systemd-networkd / dhclient / dhcpcd:

    • 检查网络配置是否被恶意修改(例如,DNS被指向恶意服务器,添加了可疑的路由)。
    • 攻击者可能会运行自己的DHCP服务或进行ARP欺骗。
    • ifconfig/ip addrroute -n/ip routecat /etc/resolv.conf 等命令用于检查网络状态。
    • 描述: 网络管理相关的服务。
    • 作用: 负责配置和管理网络接口、IP地址、DNS解析、路由等。
    • 应急响应关联:
  8. Web服务器进程 (如 apache2httpdnginxlighttpd):

    • Web服务器是常见的攻击目标。检查其配置文件、访问日志和错误日志,寻找Webshell、SQL注入、目录遍历等攻击迹象。
    • 异常的子进程、高资源消耗或监听在非标准端口的Web服务进程需要调查。
    • 描述: 如果系统作为Web服务器运行,这些是常见的Web服务进程。
    • 作用: 处理HTTP/HTTPS请求,提供网页内容。
    • 应急响应关联:
  9. 数据库服务进程 (如 mysqldmariadbdpostgres):

    • 检查数据库日志,查找未授权的访问、可疑查询(如数据窃取)、权限变更。
    • 异常的数据库连接或高负载。
    • 描述: 数据库服务器进程。
    • 作用: 存储和管理数据。
    • 应急响应关联:
  10. agetty / mingetty / login:

    • 通常这些是正常进程。但如果发现大量此类进程或在非预期终端上活动,可能表明有问题。
    • 描述: 处理终端登录。
    • 作用: 在物理控制台或串行终端上显示登录提示符,并处理用户登录过程。
    • 应急响应关联:

应急响应中分析进程的关键点

当怀疑系统被入侵时,对应急响应团队来说,对进程的分析是核心工作:

  1. 识别异常进程:

    • 未知进程: 出现不认识的、非系统标准或非管理员安装的进程。
    • 伪装进程: 进程名与合法进程相似但有细微差别(例如,scvhost 而非 svchost——虽然这是Windows的例子,但Linux上也可能出现类似伪装,如 systemd-daemon 而非 systemd)。
    • 资源占用异常: 某个进程CPU或内存占用率持续异常高。
    • 父子关系异常: 例如,一个通常由 systemd 启动的进程,其父进程却是一个用户shell。
    • 运行路径可疑: 进程的可执行文件位于 /tmp/var/tmp 或用户家目录等非标准路径。
    • 用户身份可疑: 一个通常以特定服务用户运行的进程,却以root用户身份运行,或者反之。
  2. 常用工具进行进程分析:

    • ps auxps fauxpstree: 查看当前进程列表、父子关系、用户等。
    • tophtop: 实时监控进程活动和资源占用。
    • lsof -p <PID>: 查看指定PID进程打开的文件和网络连接。
    • netstat -tulnp 或 ss -tulnp: 查看监听的网络端口及其对应的进程。
    • cat /proc/<PID>/cmdline: 查看进程的完整命令行参数(注意cmdline中的参数是以空字符分隔的)。
    • cat /proc/<PID>/exe -> /path/to/executable: 查看进程对应的可执行文件路径。
    • strings /proc/<PID>/exe: 查看可执行文件中的可打印字符串,可能发现C&C地址等线索。
    • strace -p <PID>: 追踪进程的系统调用。
    • gdb -p <PID>: 附加到进程进行调试(高级技巧)。
  3. 关联日志分析:

    • 一旦发现可疑进程,立即查找其在系统日志 (syslogauth.log)、安全审计日志 (audit.log)以及应用日志中的相关记录,以确定其启动时间、来源、行为等。
  4. 样本获取与分析:

    • 如果确定某个进程是恶意的,应尝试获取其可执行文件副本 (cp /proc/<PID>/exe /tmp/malware_sample) 进行离线分析(如病毒扫描、逆向工程)。

结论

熟悉Linux系统中的常见合法进程是进行有效应急响应的基础。在安全事件发生时,能够快速区分正常与异常,并通过工具深入分析可疑进程的属性和行为,结合日志信息,才能准确地定位问题、评估影响并采取恰当的处置措施。持续监控和定期审计进程活动也是主动防御的重要组成部分。

原文始发于微信公众号(格格巫和蓝精灵):Linux常见进程解析及其在应急响应中的重要性

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月6日03:50:29
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Linux常见进程解析及其在应急响应中的重要性https://cn-sec.com/archives/4126454.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息