openvas-nals 调试脚本ftp 2

本文档详细记录了使用openvas-nasl调试secpod_ftp_anonymous.nasl脚本的过程,目的是确认FTP服务器的匿名登录用户名和密码。调试过程中,通过openvas-nasl命令执行脚本,并观察输出,发现可以成功以root:root登录FTP服务器并列出目录。同时,文中解释了FTP的PORT和PASV模式,并概述了FTP客户端与服务器的通信流程。

简单搞个ftp的demo,secpod_ftp_anonymous.nasl 以这个例子举例

环境

openvas-nasl 20.8.0

调试脚本secpod_ftp_anonymous.nasl,用于确认用户名密码openvas 20.8.0

gvm-libs 20.8.0

调试脚本secpod_ftp_anonymous.nasl,用于确认用户名密码

###############################################################################

# OpenVAS Vulnerability Test
# Anonymous FTP Login Detection
# Authors:
# Antu Sanadi <santu@secpod.com>
# Copyright:
# Copyright (C) 2009 SecPod, http://www.secpod.com
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2
# (or any later version), as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
################################################################################
if(description)
{
  display("secpad_ftp_anonymous being...\n");
  script_oid("1.3.6.1.4.1.25623.1.0.108477");
  script_version("2021-03-19T08:52:49+0000");
  script_tag(name:"last_modification", value:"2021-03-19 08:52:49 +0000 (Fri, 19 Mar 2021)");
  script_tag(name:"creation_date", value:"2009-03-12 10:50:11 +0100 (Thu, 12 Mar 2009)");
  script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:N/I:N/A:N");
  script_tag(name:"cvss_base", value:"0.0");
  script_name("Anonymous FTP Login Detection");
  script_category(ACT_GATHER_INFO);
  script_copyright("Copyright (C) 2009 SecPod");
  script_family("Service detection");
  script_dependencies("find_servi
### OpenVAS 扫描器重建时遇到 `openvas-scanner` 命令未找到问题的解决方案 当用户尝试执行 `openvas-scanner` 命令以重建 OpenVAS 扫描器时,如果提示 `command not found`,通常表示该组件未正确安装或其路径未被系统识别。以下是针对此问题的详细解决方法: #### 检查 OpenVAS 组件是否完整安装 OpenVAS 是由多个组件构成的安全扫描工具链,其中 `openvas-scanner` 是负责实际漏洞检测的核心组件之一[^4]。可以通过以下命令检查是否已安装该组件: ```bash dpkg -l | grep openvas-scanner ``` 若未列出相关条目,则需要手动安装: ```bash sudo apt-get install openvas-scanner ``` #### 确认环境变量 PATH 包含 openvas-scanner 可执行文件路径 如果确认已安装但仍然无法执行 `openvas-scanner` 命令,可能是因为 `/usr/sbin/`(默认路径)未包含在系统的 `PATH` 环境变量中。可以使用以下命令验证: ```bash echo $PATH ``` 若未包含 `/usr/sbin`,则临时添加: ```bash export PATH=$PATH:/usr/sbin ``` 或将其永久写入 `.bashrc` 或 `/etc/environment` 文件。 #### 重新构建 NVT 插件缓存并重启服务 如果 `openvas-scanner` 已安装但仍无法正常运行,可尝试清理插件缓存并重建数据库: ```bash rm -rf /var/lib/openvas/plugins/* openvas-nvt-sync openvas-scanner --rebuild openvasmd --rebuild ``` 上述命令将清除旧插件、同步最新 NVT 脚本、重建扫描器缓存和管理器数据库[^2]。 #### 验证 Redis 数据库是否正常运行 OpenVAS 使用 Redis 存储扫描过程中的临时数据,若 Redis 服务未运行,可能导致 `openvas-scanner` 启动失败。检查 Redis 是否正在运行: ```bash systemctl status redis ``` 若未运行,请启动服务并设置开机自启: ```bash sudo systemctl start redis sudo systemctl enable redis ``` #### 安装完整的 OpenVAS 套件以避免组件缺失 部分 Linux 发行版提供的 OpenVAS 安装包为精简版本,建议通过官方源或第三方仓库安装完整套件,确保所有核心组件(如 `openvas-manager`, `openvas-scanner`, `greenbone-security-assistant`)均被正确部署[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值