靶场地址:NullByte: 1 ~ VulnHub
目录
1、下载文件,使用虚拟机打开,虚拟机网络配置NAT模式
2、namp扫描内网网段,查找新出现的地址
3、端口探测
4、发现端口,继续深入扫描、识别
5、访问80端口,查看信息
6、暴力破解密码,用burp也行
编辑
7、新页面,尝试sql注入
8、尝试写入一句话
9、查看数据查询页面源码,看看有没有数据库连接信息
10、密码破解
11、普通用户ssh连接服务器
12、提权
nmap -sn 192.168.135.0/24
# -sn 扫描ip、不扫端口
快速扫描一下端口
nmap --min-rate 10000 -p- 192.168.135.137
# --min-rate 10000 最小10000的速率扫描端口
nmap -sT -sC -sV -p80,111,777,52539 192.168.135.137
-sT:使用TCP扫描
-sC:使用默认脚本扫描
-sV:探测服务系统
80端口有web服务
777端口是ssh(默认22)
没有什么东西,扫一下目录
gobuster dir -u http://192.168.135.137 -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt
然后查看一下图片有啥东西
看到图片里有一串字符,猜测一下可能是某个密码,试了ssh、phpmyadmin,没成功
然后尝试一下是不是拼接目录,确实可以,然后一个框,测试一下应该是需要密码
hydra 192.168.135.137 http-form-post "/kzMb5nVYJw/index.php:key=^PASS^:invalid key" -l z -P /usr/share/wordlists/rockyou.txt
使用密码登录后,出现新的搜索页面,返回语句是成功拿到数据,所以判断可能存在sql注入
双引号闭合,确实存在sql注入,可以用union,分别查询了数据库、版本、用户,这个地方就可以一直查询数据,查到用户名密码,我就不展示这个方法了
因为数据库版本是5.5.44,有上传页面,所以尝试一下写一句话进入上传页面。(如果没记错是5.6.34版本以下,secure_file_priv不做限制,可以用outfile进行写入一句话)
union select "","","" into outfile "/var/www/html/uploads/h.php";--+
写入一句话需要知道绝对路径,猜测一下,一般情况是在/var/www/html中,然后拼接一下上传页面,其中一句话的另外两个值用空代替
显示上传成功,然后访问一下页面,尝试一下ls命令,确实能够执行
显示了,数据库账号密码,看一下phpmyadmin
可以登录,查看用户表
看起来是bash64,破解一下
识别一下是什么密码,md5
然后尝试破解一下得到了一个密码,这时候就尝试尝试一下ssh连接
注意:这个地方连接777端口,不是22端口
这就上来了,然后看一下用户,尝试提权
find / -group ramses -type f 2>/dev/null | grep -v 'proc'
cat /home/ramses/.bash_history