Python中Django程序安装后Linux服务器出现不明进程,如何排查安全风险?
我猜是这里的人黑的.
原因是我刚安装的.外人不知道这个 IP 或域名地址.只有这里的人知道.
这样说不会被你们打吧?
这里不能贴图,
贴个地址吧:https://segmentfault.com/q/1010000010813983
本人服务器上没有啥有价值的东西.被黑了也不着急装什么东西.
对于 linux 新手来说.被黑也是好事.正好学习一下.
Python中Django程序安装后Linux服务器出现不明进程,如何排查安全风险?
第一个 google 搜不到结果,第二个可以看这里: https://wiki.archlinux.org/index.php/Plymouth_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
先SSH连上服务器,用ps auxf或pstree看进程树,重点找不是你自己启动的、CPU/内存占用异常的进程。记下PID。
然后用这几个命令深挖:
# 1. 查进程的可执行文件路径
ls -la /proc/<PID>/exe
# 2. 查进程启动的完整命令行
cat /proc/<PID>/cmdline | xargs -0 echo
# 3. 查进程打开了哪些网络连接
lsof -p <PID> | grep -E "(LISTEN|ESTABLISHED)"
# 或者用
netstat -tunlp | grep <PID>
# 4. 查进程的工作目录
ls -la /proc/<PID>/cwd
如果进程是Python相关的,检查它是不是你的Django应用:
# 查看Python进程在运行什么
pstree -p <PID>
# 或者直接看Python模块路径
grep -a "from\|import" /proc/<PID>/environ 2>/dev/null
同时检查系统日志:
# 看有没有可疑的登录或服务启动记录
sudo journalctl -u <service-name> --since "2 days ago"
sudo grep -i "accepted\|failed\|started" /var/log/auth.log
最后,用crontab -l和systemctl list-units看看有没有可疑的定时任务或服务。
如果发现不明进程,先kill掉,然后赶紧更新服务器密码、检查Django的SECRET_KEY有没有泄露、review最近部署的代码。
我旁边就有一个搞渗透的,对他而言黑机器很简单
建议密码设 12 位以上高复杂,关闭不用端口,确认 openssl、openssh 无漏洞
看样子这个 Plymouth 无害.第一个可能是真的目的.
是的.现在的服务器密码很简单.
主要是看日志什么的也不知道他是怎么进来的.
明天重装吧.
不一定是人操作的,如果你开了 ssh 没有进行安全配置,很多自动扫描程序会进行暴力破解然后植入后门,根本不需要人干预

