资讯详情

资讯详情

靶场通关13--westwild

靶场通关13–westwild靶机WestWild: 1.1VulnHub作者 Hashim Alshareff难度Intermediate 类型boot2rootLinux / SMB 凭据泄漏 sudo 提权攻击机Kali192.168.236.128靶机192.168.236.141一.信息搜集先用 nmap 做全端口扫描确认开放服务sudonmap-T4-p-192.168.236.141可以看到 22/tcp ssh、80/tcp http、139/tcp netbios-ssn、445/tcp microsoft-ds 处于开放状态。80 端口只是一个几乎没有内容的静态页真正的入口在 445 的 SMB 服务先看它有没有共享目录。在动手之前先补两个基础概念。SMBServer Message Block是应用层的网络文件共享协议最初由 IBM 提出、微软将其发扬光大主要用来在局域网内共享文件、打印机和命名管道。Linux 上由 Samba 实现同名服务所以 Linux 靶机开放 139/445 并不奇怪。它有两个常用端口139 走 NetBIOS over TCP445 直接跑在 TCP 上现代系统基本以 445 为主。SMB 之所以常被拿来打是因为它的攻击面很宽匿名/空口令共享、弱口令爆破、共享目录里的备份和配置文件、以及 MS17-010永恒之蓝、SMBGhost 这类协议层漏洞即便没有漏洞一个配置不当的共享也经常直接泄漏凭据。本例就属于最朴素的一种——匿名可读共享。smbclient是 Samba 套件自带的命令行 SMB 客户端交互方式和 FTP 很像连上共享之后可以用ls、cd、get、put这些命令浏览和传输文件。常用参数-L host列出目标主机的共享列表List shares-N不使用密码即以空密码/匿名身份连接-U user[%password]指定账号密码-U anonymous表示匿名用户进入共享后ls列目录、cd切换目录、get下载文件、put上传文件、!命令执行本地 shell 命令先列出共享smbclient-L//192.168.236.141/-N结果列出print$、wave注释 WaveDoor、IPC$。带$后缀的是默认隐藏共享print$放打印机驱动IPC$用于进程间通信命名管道一般都不是我们要找的wave是管理员自定义的共享往往才藏业务数据。直接匿名连上去smbclient //192.168.236.141/wave-Nlsget FLAG1.txt get message_from_aveng.txt匿名用户可读共享里只有两个文件分别下载到本地。二.解密 FLAG1,拿到初始凭据把FLAG1.txt拉到 Kali 桌面上用 Mousepad 打开或者直接cat内容是一整行 Base64对 FLAG1 的 Base64 解码echoRmxhZzF7V2VsY29tZV9UMF9USEUtVzNTVC1XMUxELUIwcmRlcn0KdXNlcjp3YXZleApwYXNzd29yZDpkb29yK29wZW4K|base64-d除了第一个 flag 之外还顺手拿到了明文账号密码Flag1{Welcome_T0_THE-W3ST-W1LD-B0rder} user:wavex password:dooropen三.ssh 登录与主机信息收集用上面这组凭据直接 ssh 登录sshwavex192.168.236.141# password: dooropen登录成功系统为 Ubuntu 14.04.6 LTSi686内核 4.4.0-142-generic属于比较老的版本。先找s位权限文件,再看sudo -l,最后再来看定时任务,结果都失败了再想到之前我们能在/wave目录下看到aveng留下的求助信,提示我们要重置密码,但是我们可以看到passwd,shadow文件都不可写.我们就去找当前用户可写的文件重点看有没有被别人“遗忘”的脚本或配置find/-writable-typef2/dev/null在结果里注意到一个很可疑的路径/usr/share/av/westsidesecret/ififoregt.sh同时也能看到~/wave/FLAG1.txt、message_from_aveng.txt和 SMB 共享里的是同一份。查看这个脚本cat/usr/share/av/westsidesecret/ififoregt.sh脚本内容#!/bin/bashfigletif i foregt so this my wayechouser:avengechopassword:kaizen80作者在这里埋了第二个账号的明文密码标题里的 “if i foregt” 就是 “if I forget” 的故意拼错。四.su 切换用户并提权到 root用刚拿到的密码切换到avengsuaveng# password: kaizen80切过去之后先看这个用户能 sudo 什么sudo-l结果里最关键的一行User aveng may run the following commands on WestWild: (ALL : ALL) ALL也就是说aveng可以以 root 身份执行任意命令等于已经拿到了 root。直接起一个 root shellsudo/bin/bashidcd/rootlscatFLAG2.txt拿到第二个 flagFlag2{Weeeeeeeeeeeellco0o0om_T0_WestWild}
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →