栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

CTF训练 ssh私钥泄露:如何从外部进去最终root主机,获取flag

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CTF训练 ssh私钥泄露:如何从外部进去最终root主机,获取flag

CTF训练 ssh私钥泄露

如何从外部进去最终root主机,获取flag

CTF比赛中的两种环境

1.给予在同一局域网的攻击机和靶场机器,以web方式可以访问攻击机,通过攻击机来渗透靶场机器,获取对应的flag值;(一般情况下给于Kali Linux作为攻击机,并且举办方提供计算机)。
2.给予一个网线接口,用户自备工具,直接连接网线,进行渗透靶场机器,获取对应的flag值。

实验环境

1.Kali Linux:192.168.253.12
2.靶场机器:192.168.253.10
目的:获取靶场机器上的flag值

第一步:信息探测

对于只是给定一个对应lP地址的靶场机器,我们需要用对其进行扫描,探测并放的服务。
渗透其实是针对服务的漏洞探测,然后进行对应的数据包发送,获取机器的最高权限。
-namp -sV 192.168.253.10 挖掘开放服务信息

第二步:分析探测结果

每一个服务对应计算机的一个端口,用来进行通信。计算机实现资源共享和信息通信是通过服务来进行的。常用端0~1023端口,在扫描结果中查找特殊端口。
针刘特殊端口进行探测,尤其对开发大端口的http服务进行排查。
注:探测大端口的信息
对于开放http服务的大端口,可以采取http://ip:port/的形式访问;

查看源代码对应信息;如果没有flag信息,使用工具探测隐藏页面

-dirb http://ip:port/ 对这个服务的隐藏文件进行探测


根目录/robots.txt下存放着不允许搜索引擎探测的文件名和允许被探测的文件名


发现敏感文件taxes

打开ssh,查看内容


第三步:针对隐藏页面分析

直接使用浏览器访问,查看效果、对应源代码可能会获取到flag,或者下一步对应的提示;
挖掘ssh信息,不断访问获取更多泄露的ssh秘钥信息。
对于ssh的认证方式
有一个ID:rsa(私钥),与服务器ID:rsa.pub(公钥)进行加解密对比。对比成功即可登录服务器。
尝试一:是否存在这样一个文件

下载私钥文件

尝试二:下载认证关键字文件

注:不需要下载公钥文件,因为公钥是存储在服务器端的,进行远程访问才需要使用到的。
查看下载的文件
尝试使用私钥文件登录远程服务器
查看私钥的权限


使用认证文件,使用对应的用户名,发现没有对应的用户名。想到之前下载的验证性关键字文件
使用ssh服务端,通过秘钥登录,登录使用用户名和对应的主机名。

收到提示,不能进行连接,需要指纹解锁
ssh登录服务器:ssh -i id_rsa用户名@IP

因为没有赋予权限,所以出现了权限拒绝的提示

重新对私钥进行赋权限

继续远程登录,提示需要填密码

输入simon,提示没有输入正确密码

第四步:解密ssh秘钥信息

使用ssh2john将id_isa秘钥信息转换为john可以识别的信息。
chmod 600 id _isa
ssh2john id_rsa > rsacrack

利用字典解密rsacrack信息
zcat /usr/share/wordlists/rockyou.txt.gz l john --pipe --rules rsacrack
出现了密码文件和密码

ssh登录,输入破解出来的密码,成功远程登录进主机,取得了主机的访问权

查看目录,查看文件

在CTF中要特别注意根目录(root)

说明simon只是普通用户,不是主用户,不能执行root权限
在提升权限前,查看哪些文件需要root权限
-find /-perm -4000 2>/dev/null(从根目录下逐层向下查看具有执行权限的文件,避免错误输出)

读取root权限的文件


尝试溢出,跳转目录

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/361062.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号