渗透测试之Born2rootv2

一、实验环境

  1. 靶机:ip暂未知
  2. 攻击机kali:192.168.0.150

二、实验过程

1.主机发现
2.扫描端口

开放22、80、111、8080端口;linux系统

3.访问80端口
4.扫描目录
gobuster dir -u http://192.168.0.103 -w /usr/share/dirbuster/wordlists/directory-list-lowercase-2.3-small.txt -t 15

发现网站开启了joomla框架(使用PHP和Mysql所开发的内容管理系统)

访问该目录http://192.168.0.103/joomla

6.继续扫描漏洞(joomscan)

下载joomscan

git clone https://github.com/rezasp/joomscan.git 

扫描

perl joomscan/joomscan.pl -u http://192.168.0.103/         

通过扫描,可以发现管理员页面网址

7.爆破joomla管理员的密码

先通过cewl爬取网站获取关键信息创建一个密码字典

然后 利用burp抓包爆破

刷新页面,爆破成功

进入后台

8.获取shell

修改模板beez3

写入反弹sell

开启beez3

开启监听,访问http://192.168.0.103/joomla/templates/beez3/error.php,获得反弹shell

9.ssh登陆

在/opt/scripts下找到fileshare.py文件

www-data@born2root:/opt/scripts$ cat fileshare.py
cat fileshare.py
#!/usr/bin/env python

import sys, paramiko

if len(sys.argv) < 5:
print "args missing"
sys.exit(1)

hostname = "localhost"
password = "lulzlol"
source = "/var/www/html/joomla"
dest = "/tmp/backup/joomla"

username = "tim"
port = 22

try:
t = paramiko.Transport((hostname, port))
t.connect(username=username, password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.get(source, dest)

finally:
t.close()

拿到ssh账号密码

登陆

10.提权

sudo -l,输入tim的密码,再sudo -s成为root权限

拿到flag

三、实验环境

流程大概就是直接爆破admin密码,从而进入后台,获取网站控制权,进而提高到靶机控制权。要的是以下操作能力。

cewl抓取字典,burpsuite的intrude密码爆破的使用,php反弹shell,ssh提权