漏洞管理报告
准备方: CyberTech Solutions
编制人: Victoria Simon
日期: 2024年4月10日
1. 执行摘要
本报告详细介绍了使用Nessus对CyberTech Solutions的Linux基础设施和Web应用程序进行的全面漏洞评估结果。评估内容包括:
- Linux服务器的认证扫描
- Web应用程序漏洞扫描
- 自动报告配置
- 通过Ansible进行补丁管理
主要发现包括Nginx中的严重漏洞以及过时的OpenSSH版本。提供了即时修补和安全加固建议。
2. 实验室目标
- 对Linux系统执行认证漏洞扫描。
- 识别并分析Web应用程序漏洞。
- 配置Nessus以实现自动电子邮件报告。
- 使用Ansible修补漏洞。
- 记录发现并供利益相关者审阅。
3. 使用的工具和资源
| 工具 | 用途 |
|---|
| Nessus | 漏洞扫描与报告 |
| Ansible | 自动补丁管理 |
| Gmail SMTP | 自动电子邮件告警 |
| OpenSSH | 远程服务器访问 |
| Nginx | Web应用程序托管 |
4. 方法论
任务1:认证扫描配置
-
SSH设置:
- 安装OpenSSH(
sudo apt install openssh-server)。
- 使用SSH凭据(用户名:
root,密码:kali)配置Nessus。
- 通过
su启用了权限提升。

-
扫描结果:

扫描的SSH漏洞评分



建议
根据对Linux服务器及托管应用程序进行的认证扫描和漏洞评估,建议采取以下修复措施以改善组织的安全状况:
- 系统和软件修补:
• 升级OpenSSH至最新安全版本,以解决已知漏洞。
• 应用最新的Linux内核补丁,包括CVE-2022-0185等紧急更新。
• 将Node.js升级至18.20.1或更高版本,以降低请求走私、不安全随机性和内存管理漏洞(例如CVE-2024-27980、CVE-2024-21891、CVE-2024-21892)的风险。
• 启用自动补丁更新或集成集中式补丁管理系统,以确保及时应用安全修复。
- SSH服务加固
• 禁用弱SSH算法、密码(例如CBC、Arcfour)和MAC。
• 尽可能强制使用基于密钥的身份验证并禁用密码登录。
• 配置自定义SSH端口,并使用防火墙规则或TCP包装器限制SSH访问。
• 限制特定IP访问,并为远程连接实施双因素身份验证(2FA)。
- 用户和访问控制
• 禁用根用户通过SSH登录;使用sudo进行权限提升。
• 移除未使用或遗留的用户账户,并强制执行强密码策略。
• 设置账户锁定机制以防止暴力破解攻击。
• 审计用户组和权限,确保遵循最小权限原则。
- 主机和网络加固
• 禁用不必要的服务并关闭未使用的端口。
• 使用Lynis、OpenSCAP或CIS Benchmark等加固工具来强制执行最佳实践。
• 实施防火墙规则以限制网络暴露并防止横向移动。
- 监控、日志记录和检测
• 为SSH、sudo和系统事件启用详细日志记录。
• 将日志集成到SIEM平台中,以实现实时监控和告警。
• 监控可疑行为和异常访问模式。
- 应用程序和依赖项安全
• 运行npm audit或yarn audit来扫描和修复Node.js依赖项。
• 定期使用动态和静态分析工具(DAST/SAST)测试应用程序。
• 使用Web应用程序防火墙(WAF)阻止已知的基于Web的攻击。
- 备份和恢复
• 定期安排配置和关键数据的备份。
• 定期测试灾难恢复和备份恢复程序。
- 安全意识与治理
• 定期为系统管理员和开发人员提供安全培训。
• 维护最新的安全策略、程序和资产文档。
• 定期执行漏洞评估和渗透测试以保持主动防御。
任务2:Web应用程序扫描
- Nginx漏洞:






- 漏洞分析:
- 利用难度:低复杂度(存在公开利用程序)。
- 修补日期:
- CVE-2021-23017:2021年6月修补。
- CVE-2022-41741:2022年10月修补。
任务3:自动电子邮件报告
-
SMTP配置:
- 主机:
smtp.gmail.com(端口:587,TLS)。




Nessus已发送邮件,表示运行完美。
任务4:补丁管理
-
Ansible Playbook:
- 移除了过时的Nginx(
/usr/local/nginx)。
- 安装了最新版本的Nginx(
apt: name=nginx state=latest)。

用于更新旧版本Nginx的.yml脚本
- 结果:从Nginx 1.15.5升级至1.26.3。


5. 分析与发现
识别的关键漏洞
1. 过时的NGINX版本
- CVE-2021-23017:DNS解析器中的1字节内存覆盖(风险:远程代码执行/崩溃)。
- HTTP/2利用:
- CVE-2019-9511、CVE-2019-9513、CVE-2019-9516:通过帧操纵实现拒绝服务。
- CVE-2018-16843、CVE-2018-16844、CVE-2018-16845:CPU/内存耗尽攻击。
- CVE-2019-20372:通过HTTP标头泄露服务器版本(信息泄露)。
2. Nessus多个插件发现
- 插件ID:150154、127907、118956、134220确认存在不受支持/易受攻击的NGINX版本。
关键风险:
- 未修补的系统容易受到勒索软件和数据泄露的攻击。
- Web漏洞使客户端数据面临被拦截的风险。
6. NGINX安全修复的关键措施
- 将NGINX升级至最新稳定版本(≥1.20.1)
- 原因? 缓解:
- CVE-2021-23017(DNS解析器内存损坏)
- HTTP/2拒绝服务漏洞(CVE-2019-9511、CVE-2018-16843等)
- 服务器版本泄露(CVE-2019-20372)。
- 操作:
- 备份配置(
nginx.conf),然后使用官方NGINX仓库进行升级。
- 升级后验证版本:
nginx -v。
- 禁用或加固HTTP/2
- 如果不需要HTTP/2:
- 在NGINX配置中禁用(使用**
listen 443 ssl代替listen 443 ssl http2**)。
- 如果需要:
- 确保NGINX已修补(升级后)。
- 监控日志中异常的HTTP/2流量(例如快速流/帧)。
- 实施补丁管理
- 自动更新:使用**
unattended-upgrades**(Linux)或Ansible等工具。
- 安排审计:每月检查NGINX/操作系统软件包更新。
- 通过Nessus重新扫描验证修复
- 重新运行Nessus(插件ID:150154、127907等)以确认:
- NGINX版本不再被标记。
- HTTP/2 CVE(如果已启用)已修补。
其他加固步骤
- 隐藏NGINX版本:在**
nginx.conf中添加server_tokens off;**。
- 限制HTTP方法:如果适用,仅允许**
GET、POST、HEAD**。
- 监控CVE数据库:订阅NGINX安全公告。
时间表:
- 立即(24-48小时):升级NGINX,禁用HTTP/2(如果可能)。
- 后续(1周):补丁管理推出 + 重新扫描。
修复后:记录更改并更新事件响应计划,纳入HTTP/2/NGINX利用场景。
7. 挑战与解决方案
| 挑战 | 解决方案 |
|---|
| Nessus插件安装 | 我无法增加RAM,因此在多次尝试失败后,不得不等待更长时间才能完成插件安装 |
| SMTP电子邮件失败 | 生成Gmail应用密码 |
| Ansible playbook错误 | 使用ansible-lint验证YAML语法 |
8. 结论
评估发现,由于过时的NGINX版本和未修补的CVE,CyberTech的Web基础设施存在严重漏洞,使组织面临拒绝服务攻击、内存损坏和信息泄露的风险。为应对这些风险,立即升级、HTTP/2加固和自动化补丁管理至关重要。
修复后应进行后续扫描以验证修复效果。通过定期更新和监控保持主动的安全态势,有助于缓解未来的威胁并确保长期韧性。
10. 参考文献
- NIST NVD:https://nvd.nist.gov
- Nessus文档:https://www.tenable.com
- https://www.notion.so/Nessus-1cb5f18a0bc980cdb558d62702ab23e9?pvs=4