初始点1级第八关Funnel
获取目标机IP。
nmap扫描开放端口。
nmap -sC -sV {target_IP}
-sC:脚本扫描
-sV:版本检测
21(ftp)和22(ssh)端口开放,如果ftp服务器配置允许,可以匿名访问,nmap扫描显示,允许匿名登录。
ftp-anon: Anonymous FTP login allowed (FTP code 230)
连接ftp服务器,用户名为anonymous,密码为空。
dir列出其内容,发现一个名为mail_backup的目录。
cd到mail_backup下。
dir列出该目录下的文件,发现两个文件,password_policy.pdf和welcome_28112022
get下载到本地。
exit退出ftp shell。
ftp {target_IP}
ftp > dir
ftp > cd
ftp > get
ftp > exit
cat查看welcome_28112022文件为一封电子邮件,邮箱名可能是用户名,optimus、albert、andreas、christine、maria
open查看password_policy.pdf文件,文档最后找到默认密码funnel123#!#
目标机上正在运行ssh服务,我们也收集了一些潜在的用户名和默认密码,可以尝试密码喷洒,使用工具hydra。
攻击前,需要把用户名整理到一个txt文件中。
执行以下命令,进行密码喷洒。
hydra -L username.txt -p 'funnel123#!#' {target_IP} ssh
-L:指定要攻击的用户名文件
-p:指定一个密码,不是密码列表
christine用户登录成功,执行以下命令,远程连接。
ssh christine@{target_IP}
执行以下命令,ss获取socket统计信息。
ss -tln
-t:仅显示tcp socket
-l:显示监听状态的socket
-n:不解析服务名称
不加-n参数再次运行ss命令,查看端口上运行的默认服务。
ss -tl
对比下,发现5432端口上运行的默认服务为postgresql数据库,postgresql数据库可以使用psql的命令行进行交互。
psql没有安装,而且因为权限问题无法安装。
使用ssh进行流量转发。
执行以下命令,将本地1234端口转发到目标机5432端口。
ssh -L 1234:localhost:5432 christine@{target_IP}
执行以下命令,连接postgresql数据库。
psql -U christine -h localhost -p 1234
postgresql使用。
l:查看数据库
c:选择数据库
dt:查表
select * from table_name:查表数据
最后在secrets数据库的flag表中获取flag值。
Funnel任务
任务1
问:打开了多少个 TCP 端口?
答:2
任务2
问:FTP 服务器上可用的目录名称是什么?
答:mail_backup
任务3
问:“漏斗”团队的每个新成员应该尽快更改的默认帐户密码是什么?
答:funnel123#!#
任务4
问:哪个用户还没有更改过默认密码?
答:christine
任务5
问:哪个服务在 TCP 端口 5432 上运行并且仅侦听本地主机?
答:postgresql
任务6
问:由于您无法从本地计算机访问前面提到的服务,因此您必须创建一个隧道并从您的计算机连接到它。正确使用的隧道类型是什么?远程端口转发还是本地端口转发?
答:local port forwarding
任务7
问:持有该标志的数据库的名称是什么?
答:secrets
任务8
问:您可以使用动态隧道代替本地端口转发吗?是还是不是。
答:yes
任务9
提交flag。
总结
当事情不景气时,继续前进、坚持不懈是至关重要的。
原文始发于微信公众号(AlertSec):HackTheBox-Funnel
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论