ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Linux安全检测工具--运行即可抓到多数僵尸程序
[打印本页]
作者:
铁佛
时间:
2024-8-29 15:40
标题:
Linux安全检测工具--运行即可抓到多数僵尸程序
摘要
随着网络攻击的日益放肆,Linux 系统的安全性面对着严肃的挑战。为了及时发现和防范安全威胁,许多 Linux 安全检测工具应运而生。本文将详细先容作者开发的 Linux 安全检测工具的功能,包括进程分析、网络分析、日志分析、文件分析、利用现有检测工具、容器分析、数据库分析、环境变量分析、启动脚本分析、启动服务分析、账号密码设置分析、账号权限设置分析、预加载库/动态链接器/动态链接库分析、内核模块分析、敏感目录下非常文件分析等,资助用户更好地相识和选择合适的 Linux 安全检测工具。
1. 进程分析
进程分析是 Linux 安全检测工具的焦点功能之一,重要用于检测系统中是否存在可疑或恶意的进程。重要分析方法包括:
高 CPU/MEM 占用检测
: 检测系统中 CPU 或内存占用率非常的进程,这些进程可能存在性能问题或被恶意软件利用。
伪装内核进程检测
: 检测系统中伪装成内核进程的可疑进程,这些进程可能试图隐藏其真实身份。
隐藏路径进程检测
: 检测系统中启动路径包含隐藏字符(如点号)的可疑进程,这些进程可能试图隐藏其启动位置。
随机进程名检测
: 检测系统中进程名包含随机字符串的可疑进程,这些进程可能试图隐藏其真实目的。
带特征字符串进程检测
: 检测系统中进程名或启动参数包含特定特征字符串(如 “scan”、“payload” 等)的可疑进程,这些进程可能涉及恶意举动。
带恶意域名进程检测
: 检测系统中进程连接到已知恶意域名或 IP 地址的可疑进程,这些进程可能试图与远程服务器通信或下载恶意软件。
带可疑路径进程检测
: 检测系统中进程启动路径包含特定可疑目录(如 “/tmp”、" /var/tmp/" 等)的可疑进程,这些进程可能试图在系统临时目录中实行恶意操作。
带删除标识进程检测
: 检测系统中进程关联的文件已被删除但进程仍在运行的非常环境,这可能是恶意软件为了隐藏自身而采取的本事。
memfd 无文件进程检测
: 检测系统中利用 memfd 文件系统创建的无文件进程,这些进程可能试图隐藏其代码和数据。
隐藏进程检测
: 检测系统中在 /proc 目录下找不到对应进程信息的隐藏进程,这些进程可能利用 Rootkit 等恶意软件进行隐藏。
非常启动用户检测
: 检测系统中由非正常用户(如 “postgres”、“portalnav” 等)启动的可疑进程,这些进程可能被用于实行恶意操作。
提权进程检测
: 检测系统中以 root 权限运行的进程,这些进程可能存在安全隐患或被恶意软件利用。
非常 shell 实行进程检测
: 检测系统中利用非标准 shell(如 tcsh)实行的可疑进程,这些进程可能试图绕过安全限定。
进程名伪造检测
: 检测系统中进程名与实际实行程序不匹配的进程,这些进程可能被用于隐藏其真实目的。
审计追踪非常举动检测
: 通过审计系统调用来检测进程的非常举动,例如非法访问文件、创建隐藏进程等。
function check_process() {
echo "Checking for suspicious processes..."
# 高 CPU/MEM 占用检测
high_mem_cpu_processes=$(ps -aux --sort=-%mem | awk '{if($4 > 80 || $3 > 80) print$0}')
if [[ -n $high_mem_cpu_processes ]]; then
echo "High mem/cpu占用进程:$high_mem_cpu_processes"
fi
# 伪装内核进程检测
ps_output=$(ps -ef | awk '{if($2!="2"&&$3!="2"&&$NF~/^\[.*\]/)print$0}')
if [[ -n $ps_output ]]; then
echo "Suspicious process pretending to be a kernel process detected: $ps_output"
fi
# 带隐藏路径进程检测
hidden_path_output=$(ps -ef | awk '{if($0~/(\/| )\./)print$0}')
if [[ -n $hidden_path_output ]]; then
echo "
rocess with hidden path detected: $hidden_path_output"
fi
# ... 其他进程分析代码 ...
}
2. 网络分析
网络分析重要用于检测系统中是否存在可疑的网络连接和举动,重要分析方法包括:
非常 SYN_SENT 数据包检测
: 检测系统中大量发送 SYN_SENT 数据包的进程,这些进程可能进行端口扫描或分布式拒绝服务攻击 (DDoS)。
会话连接数非常检测
: 检测系统中单个进程或用户创建的会话连接数非常的环境,这可能是恶意软件进行横向移动或数据盗取的迹象。
不同程序共用相同套接字检测
: 检测系统中不同进程利用相同套接字的环境,这可能是恶意软件绕过安全限定的本事。
非常远程服务连接检测
: 检测系统中进程连接到非正常远程服务的可疑环境,这些进程可能被用于实行恶意操作或下载恶意软件。
非常 rawsocket 发包进程检测
: 检测系统中利用 rawsocket 发送数据包的可疑进程,这些进程可能进行网络攻击或绕过防火墙。
孤岛外连检测
: 检测系统中单个进程创建的孤立外连环境,这可能是恶意软件进行隐蔽通信的迹象。
外连 IP 域名命中威胁情报检测
: 检测系统中进程连接到已知恶意 IP 地址或域名的可疑环境,这些进程可能被用于实行恶意操作或下载恶意软件。
dns 解析域名命中威胁情报检测
: 检测系统中 DNS 解析请求指向已知恶意域名的可疑环境,这些进程可能被用于实行恶意操作或下载恶意软件。
查看组件监听端口定位入侵点
: 检测系统中组件监听的端口,这些端口可能被用于攻击或入侵系统。
tcpdump 抓包分析
: 利用 tcpdump 工具捕获网络数据包并进行分析,例如检测非常流量、恶意协议等。
audit 审计 connect 系统调用
: 通过审计 connect 系统调用来检测进程的网络连接举动,例如检测非常端口连接、域名解析等。 function check_network() {
echo "Checking network connections..."
# 非常 SYN_SENT 数据包检测
syn_sent_packets=$(netstat -an | grep SYN_SENT | grep -v "127.0.0.1" | more)
if [[ -n $syn_sent_packets ]]; then
echo "Abnormal SYN_SENT packets detected: $syn_sent_packets"
fi
# 会话连接数非常检测
abnormal_connections=$(netstat -an | awk '{print$6}' | sort | uniq -c | awk '$1 > 10 {print$0}' | more)
if [[ -n $abnormal_connections ]]; then
echo "Abnormal number of session connections detected: $abnormal_connections"
fi
# ... 其他网络分析代码 ...
}
3. 日志分析
日志分析重要用于检测系统中是否存在可疑的日志记录和举动,重要分析方法包括:
常见安全相干关键字检测
: 检测系统中日志文件中是否包含 “failed password”、“authentication failure” 等常见安全相干关键字,这些关键字可能指示系统受到攻击或存在安全漏洞。
bash 操作日志检测
: 检测系统中 bash 下令操作日志,这些日志可能包含恶意下令或可疑举动。
定时使命日志检测
: 检测系统中定时使命日志,这些日志可能包含恶意定时使命或可疑举动。
用户登录信息检测
: 检测系统中用户登录日志,这些日志可能包含非法登录实验或可疑用户举动。
密码修改信息检测
: 检测系统中密码修改日志,这些日志可能包含密码泄漏或被篡改的环境。
secure 日志检测
: 检测系统中 secure 日志,这些日志可能包含系统安全变乱记录。
dmesg 日志检测
: 检测系统中 dmesg 日志,这些日志可能包含系统硬件或驱动程序错误信息。
组件日志检测
: 检测系统中应用程序或服务组件日志,这些日志可能包含错误或非常举动信息。
已安装安全检测工具日志检测
: 检测系统中已安装安全检测工具的日志,这些日志可能包含安全警报或检测结果。
数据库操作日志检测
: 检测系统中数据库操作日志,这些日志可能包含 SQL 注入或数据泄漏环境。
堡垒机操作日志检测
: 检测系统中堡垒机操作日志,这些日志可能包含非法登录实验或可疑用户举动。
防火墙日志检测
: 检测系统中防火墙日志,这些日志可能包含网络攻击或入侵实验信息。
网络流量日志检测
: 检测系统中网络流量日志,这些日志可能包含非常流量或恶意举动信息。
audit 审计日志检测
: 检测系统中 audit 审计日志,这些日志可能包含系统安全变乱记录。
容器日志检测
: 检测系统中容器日志,这些日志可能包含容器内部安全变乱或非常举动信息。
function check_logs() {
echo "Checking system and application logs..."
# bash 操作日志检测
bash_logs=$(grep -E "bash" /var/log/* | more)
if [[ -n $bash_logs ]]; then
echo "Bash operation logs detected: $bash_logs"
fi
# 定时使命日志检测
cron_logs=$(grep -E "cron" /var/log/* | more)
if [[ -n $cron_logs ]]; then
echo "Cron task logs detected: $cron_logs"
fi
# ... 其他日志分析代码 ...
}
4. 文件分析
文件分析重要用于检测系统中是否存在可疑的文件或目录,重要分析方法包括:
高 CPU/MEM 占用文件检测
: 检测系统中占用大量 CPU 或内存的文件,这些文件可能存在性能问题或被恶意软件利用。
伪装内核文件检测
: 检测系统中伪装成内核文件的恶意文件,这些文件可能试图隐藏其真实身份。
隐藏路径文件检测
: 检测系统中路径包含隐藏字符(如点号)的可疑文件,这些文件可能试图隐藏其位置。
随机文件名检测
: 检测系统中文件名包含随机字符串的可疑文件,这些文件可能试图隐藏其真实目的。
带特征字符串文件检测
: 检测系统中文件内容包含特定特征字符串(如 “scan”、“payload” 等)的可疑文件,这些文件可能涉及恶意举动。
带恶意域名文件检测
: 检测系统中文件内容包含已知恶意域名或 IP 地址的可疑文件,这些文件可能被用于与远程服务器通信或下载恶意软件。
带可疑路径文件检测
: 检测系统中文件路径包含特定可疑目录(如 “/tmp”、" /var/tmp/" 等)的可疑文件,这些文件可能试图在系统临时目录中实行恶意操作。
样本分析
: 对可疑文件进行内存转储、字符串分析、脱壳和反编译等操作,以提取文件特征和功能信息。
利用现有检测工具
: 利用现有的恶意软件检测工具和规则对可疑文件进行扫描和分析。
5. 其他功能
除了上述功能外,一些 Linux 安全检测工具还提供以下功能:
容器分析
: 检测容器镜像和容器内部是否存在恶意文件或设置。
数据库分析
: 检测数据库目录下是否存在加密文件或可疑操作。
环境变量分析
: 检测环境变量中是否存在恶意或可疑的值,例如路径篡改、注入恶意代码等。
启动脚本分析
: 检测系统启动脚本中是否存在恶意或可疑的下令或脚本,例如启动恶意程序、修改系统设置等。
启动服务分析
: 检测系统启动服务中是否存在恶意或可疑的服务,例如监听非法端口、实行恶意操作等。
账号密码设置分析
: 检测账号密码设置文件中是否存在恶意或可疑的设置,例如弱密码、默认密码、非常用户权限等。
账号权限设置分析
: 检测账号权限设置文件中是否存在恶意或可疑的设置,例如过度授权、非常用户组等。
预加载库/动态链接器/动态链接库分析
: 检测系统预加载库、动态链接器和动态链接库中是否存在恶意或可疑的库,例如注入恶意代码、修改系统函数等。
内核模块分析
: 检测系统中加载的内核模块中是否存在恶意或可疑的模块,例如 Rootkit、木马等。
敏感目录下非常文件分析
: 检测系统敏感目录(如 /etc、/bin、/sbin 等)下是否存在恶意或可疑的文件或目录,例如隐藏文件、非常脚本、临时文件等。
6. 选择合适的 Linux 安全检测工具
选择合适的 Linux 安全检测工具需要考虑以下因素:
功能需求
: 根据系统的安全需求选择功能全面或专注于特定安全范畴的工具。
性能影响
: 选择性能开销较小的工具,避免对系统正常运行造成影响。
易用性
: 选择操作简单、易于理解的工具,方便用户利用和管理。
更新频率
: 选择更新频率较高的工具,及时获取最新的安全威胁信息和检测规则。
社区支持
: 选择社区活跃、支持美满的工具,方便获取资助息争决利用过程中碰到的问题。
7. 总结
Linux 安全检测工具是保障 Linux 系统安全的重要工具,作者的脚本可以资助用户及时发现和防范安全威胁。运行可发现绝大多数系统被入侵的迹象和僵尸恶意程序, 选择该工具并公道利用,可以有效提拔 Linux 系统的安全性。有兴趣的网络安全工程师可以留言评论。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4