vulnhub靶机darkhole

news2024/11/24 20:40:56

靶机下载地址:DarkHole: 1 ~ VulnHub

Kali ip:192.168.174.128

靶机ip:192.168.174.135

靶机ip发现

sudo arp-scan -l

开放端口扫描

nmap -p- -sV -A 192.168.174.135

发现开启了22端口和80端口

目录扫描

gobuster dir -u http://192.168.174.135/ -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt

这个地点有点问题,我用dirsearch进行扫描,字典比较全,扫描多出来几个文件

扫描到几个目录  查看一下config,发现数据库文件

发现是个空文档,什么都没有

Dashboard虽然返回200但是输出的信息是无法访问

漏洞利用

进入login页面进行查看

既然有注册的地方,那就先去注册一下,中间白色的框是邮箱(这个颜色搭配真的费眼睛)

注册好了就进行登录,这里发现还存在一个id字段

尝试访问一下id=1的,不能访问

那就在id=2页面进行测试,这里有修改密码,抓包查看,这里尝试把id=1的用户的密码改为666,这里存在的问题是对用户的身份缺少验证。

应该是修改成功了,现在密码有了,然后我们尝试对账号进行爆破。

爆破账号

使用hydra进行破解

hydra -L /usr/share/seclists/Usernames/cirt-default-usernames.txt -p 666 192.168.174.135 http-post-form "/login.php:username=^USER^&password=^PASS^:username or password is incorrect"

这里对命令进行说明一下

-L后面加字典,这里是代表的账号

-p代表密码(小p是单独的一个密码)如果是大P则跟一个字典

192.168.174.135是代表ip

http-post-form表示破解是采用http的post方式提交的表单密码破解,双引号里面是目录:变量&变量:登录不成功时会出现的字段其中的变量必须按照上面的写:username=^USER^&password=^PASS^

破解出的密码是admin,使用admin进行登录查看

文件上传

这里的id值变成了1

而且存在一个上传文件的地方

那就上传个木马进行反弹shell吧

上传php反弹shell的脚本,发现有后端验证,说只允许png,jpg,gif,看着像是白名单,但是上传后发现是个黑名单验证

上传的后缀改为phtml(也可以使用phar),我这里还修改了content-type为image/png

成功上传,且此处的file看着像个链接,鼠标右击file复制链接,然后进行访问

成功接收到shell

权限提升

开启交互模式

SHELL=bash script -q /dev/null

我们在var/www目录下发现了数据库的信息,其中发现之前的admin密码,果然是强密码

使用find查找具有suid权限的命令,这里发现一个特殊的toto

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

切换到home下发现两个用户,darkhole和john,其中john好像存在有用的信息

其中的toto是root权限的,且是可执行文件,执行一下看看结果

这里输出了id的信息

但是通过cat和strings都没有看到很多可用的信息

这里尝试替换id和修改环境变量进行提权

说明一下这几条命令

创建名为id的文件,将bash文件的位置写入id当中,然后使用export修改环境变量,优先加载tmp下的id文件,echo输出path查看是否修改成功

chmod赋予id可执行权限

这里切换到john目录,执行toto,发现成功切换到了john的用户下

切换到用户john下,那他的一些文件也就可以查看了

密码为root123

有了密码使用sudo -l查看当前用户的权限

发现python3,当前文件夹下又有file.py那就在file中写入内容,使用python进行提权

echo ‘import os;os.system(“/bin/bash”)’ > file.py

使用python3执行,这里的命令要和sudo -l中的一致不能修改的

切换目录,查看root文件,靶机成功结束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/43159.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Seal库官方示例(一):bfv_basics.cpp解析

尽量理论来理解代码。 完整代码或者\native\examples里面 说到前面的话 两段官方的话 大致意思就是,这个库有门槛,需要先学会同态的概念,提供的例子必须要看要理解。必看的例子如下, 代码解析 基础加密 参数设置 三个核心…

flutter系列之:在flutter中使用流式布局

文章目录简介Flow和FlowDelegateFlow的应用总结简介 我们在开发web应用的时候,有时候为了适应浏览器大小的调整,需要动态对页面的组件进行位置的调整。这时候就会用到flow layout,也就是流式布局。 同样的,在flutter中也有流式布…

真题集P93---2017年计专真题

真题集P93---2017年计专真题六思路:模拟代码七思路一:哈希表法二:排序法 (利用排序去重)三:拓展代码(仅思路一)六 思路:模拟 1、接口介绍 int turnNum(int num[], int nums):拿来一…

数据库约束

约束概述 为什么需要约束 数据完整性(Data Integrity)是指数据的精准性(Accuracy)和可靠性(Reliability)。它是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而…

种草软文怎么写?分享一些超实用的种草软文写作技巧。

一提起“种草”这个词语,想必很多小伙伴都不陌生,我们都有“被种草”的经历,指的就是把一件商品推荐给大家,分享给需要的人,然后促成销售转化的过程。 在一些主流的内容平台,比如知乎、小红书、得物、公众…

Android 9.0 MediaPlayer播放流程分析

1.MediaPlayer初始化流程 EventHandler是后面处理数据回调的handler. 在AudioFlinger.cpp中获取nextUniqueId: audio_unique_id_t AudioFlinger::nextUniqueId(audio_unique_id_use_t use) {// This is the internal API, so it is OK to assert on bad parameter.…

18-1、k8s 对外服务之ingress

一、什么是ingress 原来的项目是部署在一台电脑上的,这样爬取速度虽然很快,但是我们还能提升,联想到分布式的思想,我们是否可以通过多台电脑进行配合爬取,这样我们的爬取速度就能大幅度提升。 …

【Mysql】数据库的基本操作和表的增删改查

本章内容是,用sql语言实现对数据库的基本操作和表的基本操作 文章目录前言1. 数据库的基本操作1.1 创建数据库1.2 查看数据库1.3 选中数据库1.4 删除数据库2. 数据库基本数据类型3. 表的基本操作3.1 创建表3.2 显示数据库中的表3.3 查看表的构造3.4 删表4. 表的增删改查4.1 增加…

基于PHP+MySQL汽车查询系统的设计与实现

随着时代的发展,汽车已经逐渐成为人们代步的主要工具之一,按时因为工业的发展,汽车的品牌和型号也层出不穷,如此多的汽车信息如何能够让爱车人士更好的 汽车查询系统的主要功能包含:汽车的类别管理、汽车的信息管理、留言管理、用户的管理等。网站分为管理员、会员用…

开放与融合趋势下,工业互联网安全破圈之道

作者 | 伍杏玲 出品 | CSDN 在工业 4.0 和数字经济的发展促进下,工业互联网作为连接工业经济的重要要素,成为推动数字经济发展的重要基础设施。据统计,到 2025 年,全球 IoT 连接设备数量达 519 亿。 然而在 OT 和 IT 融合趋势下…

1721. 交换链表中的节点-仅遍历一次链表-考研满分答案

1721. 交换链表中的节点-仅遍历一次链表 给你链表的头节点 head 和一个整数 k 。 交换 链表正数第 k 个节点和倒数第 k 个节点的值后,返回链表的头节点(链表 从 1 开始索引)。 示例 1: 输入:head [1,2,3,4,5], k…

第1关:Hbase数据库的安装

在安装HBase之前你需要先安装Hadoop和Zookeeper,如果你还没有安装可以通过这两个实训来学习:Hadoop安装与配置,Zookeeper安装与配置。 本次实训的环境已经默认安装好了Hadoop,接下来我们就开始安装配置HBase吧。 HBase安装 HBas…

浙大MPA常规批复试上岸经验分享

在经历笔试和面试的备考后,去年终于来到了复试环节,好在通过自己的不懈努力和不放松的精神,最终成功上岸,现在把个人的备考经验做整理为大家做个参考! 一、复试前准备:在正式复试前建议一定要对浙大MPA项目…

【综合评价分析】topsis评价 原理+完整MATLAB代码+详细注释+操作实列

【综合评价分析】topsis评价 原理完整MATLAB代码详细注释操作实列 文章目录 1、TOPSIS法的原理 2、TOPSIS法案例分析 3.建立模型并求解 3.1数据预处理 3.2代码实现数据预处理 3.3 本案例中数据预处理的运用 4.计算距离和评价指标 4.1 代码 4.2 运行结果 5.总结 1、T…

基于Jsp的OA企业人事管理系统【论文、数据库设计、源码、开题报告】

数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86500769 主要使用技术 SpringspringMVCmybatisjspccsjsMysqlTomcat 功能介绍 部门管理:支持对部门信息(部门名称、部门类型、电话、传真、描述、上级部门&#xff…

外卖项目(项目优化1)10---缓存优化

优化前面已经创建好的项目:将一些问题进行优化处理。本节主要解决是下面的问题。 前面的的项目,是将短信验证码等数据缓存到session中,该部分进行优化后,是将数据内容缓存到Redis中。 目录 一、使用git管理代码(对ID…

Guava环境设置

Guava本地环境设置 这部分指导如何下载和设置Java在机器上。请按照以下步骤来设置环境。 Java SE免费提供链接:下载Java。所以,根据操作系统下载对应版本。 按照说明下载java和运行.exe 在机器上,并按说明安装Java。一旦机器上安装了Java&…

Leetcode原题电话号码的字母组合的两种解法【BFS-DFS】

来源:LeetCode 第17题【公众号:数据结构和算法】 给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。给出数字到字母的映射如下(与电话按键相同)。注意1不对应任何字母。 示例1&am…

浅析分布式数据库

前言 随着信息技术的迅猛发展,各行各业产生的数据量呈爆炸式增长,传统集中式数据库的局限性在面对大规模数据处理中逐渐显露,从而分布式数据库应运而生。分布式数据库是在集中式数据库的基础上发展起来的,是分布式系统与传统数据…

java刷题day 06

一. 单选题: 解析:最终类也叫密封类,是被final修饰的类,不能被继承 解析: A:6入,5 入,5出,4入,4出,3入,3出,6出&#xff0…