VulnHub—Os-Bytesec

01 环境搭建

  • 靶机环境下载:https://www.vulnhub.com/entry/hacknos-os-bytesec,393/
  • 题目信息如下,难度中等,需要获取俩个flag
Difficulty : Intermediate

Flag : 2 Flag first user And second root

Learning : exploit | SMB | Enumration | Stenography | Privilege Escalation

Contact .. https://www.linkedin.com/in/rahulgehlaut/

We recommend that you use VirtualBox and not VMware for this VM 

02 信息收集

将靶机环境恢复到virtualbox之后,开始第一步信息收集工作。

发现靶机

查看攻击机Kali的ip为192.168.56.1(环境恢复时采用Host-Only Adapter)
在这里插入图片描述
使用nmap扫描网段内的ip地址

nmap -sP 192.168.56.0/24

在这里插入图片描述
扫描发现的192.168.56.105就是目标靶机的ip地址。

端口扫描

使用nmap对目标靶机开放的端口进行扫描

nmap -Pn -n -sV 192.168.56.105

在这里插入图片描述发现目标靶机仅开放了4个tcp端口,一个http的80端口,一个ssh的2525端口,和两个Samba端口139/445。
访问80端口,发现很多图片,但是并未有关键信息。用dirb遍历目录也未发现有用信息。不过在主页底部有个####################GET#####smb##############free,所以转向Samba。
在这里插入图片描述

03 Samba

enum4linux

使用enum4linux查询靶机中的用户信息,发现其中存在一个smb用户。

enum4linux -U 192.168.56.105

在这里插入图片描述

acccheck

使用acccheck爆破用户smb密码,是个空密码。

acccheck -t 192.168.56.105 -u smb -v

在这里插入图片描述

smbmap

使用smbmap枚举靶机的共享资源

mbmap -u 'smb' -p '' -H 192.168.56.105

在这里插入图片描述

smbclient

使用smbclient查看靶机的共享目录

smbclient -L 192.168.56.105 -U smb

在这里插入图片描述使用smbclient登录靶机,遍历里面的目录都是空目录。

smbclient //192.168.56.105/print$ -U smb

在这里插入图片描述回头发现smbmap的结果中有个.的设备,难道是指向smb用户的home目录?尝试登录//192.168.56.105/smb,发现有两个文件。
在这里插入图片描述为什么smbclient -L 192.168.56.105 -U smb命令没有办法枚举靶机上共享的smb目录?

04密码爆破

下载共享目录下的两个文件,main.txt中只有helo。尝试解压safe.zip,发现需要密码,使用helo发现不对。使用john来爆破密码。

zip2john safe.zip > pass
john pass

在这里插入图片描述爆破获得解压密码为hacker1,解压后里面有个图片和抓包。图片检查后未发现有用信息。打开user.cap发现是一个wifi抓包,wifi名为blackjax
在这里插入图片描述尝试用aircrack-ng爆破wifi密码。

aircrack-ng -w /usr/share/wordlists/rockyou.txt user.cap

在这里插入图片描述爆破得到wifi密码为snowflake。尝试用此账户登录靶机的SSH,发现可以成功登录,获得第一个flag
在这里插入图片描述

05 提权

查看用户的sudo配置,发现该用户不能执行sudo

sudo -l

在这里插入图片描述查看系统中带SUID的程序。发现其中有个netscan比较可以。

find / -user root -perm -4000 -print 2>/dev/null

在这里插入图片描述
执行netscan发现是个类似netstat的命令。
在这里插入图片描述
逆向查看netscan,发现最终调用的是system函数。执行的命令在地址0x8048530
在这里插入图片描述在地址0x8048530上是netstat -antp。所以netscan其实是用system调用的netstat命令。
在这里插入图片描述通过劫持环境变量来让netscan在执行netstat时执行恶意程序。

# 只有tmp才有写权限
echo "/bin/dash" > /tmp/netstat   
chmod +x /tmp/netstat
export PATH=/tmp:$PATH
netscan

获取root权限后获得第二个flag
在这里插入图片描述

发布了14 篇原创文章 · 获赞 0 · 访问量 357

猜你喜欢

转载自blog.csdn.net/weixin_39219503/article/details/103841150
os