信息收集
先找到DC2的ip地址
arp-sacn -l
arp-scan是一款arp扫描工具(想起了arp欺骗协议,查询ip地址对应的MAC地址)
-l 用来扫描局域网的所有主机
根据MAC地址,知道DC2的ip为192.168.146.139
看一下开放的端口
nmap -A -p- 192.168.146.139
-A 全面扫描,尽可能获得主机的详细信息,包括开放的端口、运行的服务、服务版本、操作系统类型等
开放了80、7744端口(可以去看一下这些服务器版本有无漏洞)
_http-title: Did not follow redirect to http://dc-2/ 翻译一下:不允许重定向到dc2,重定向是指,当访问一个页面却被自动带到另一个网页
_http-server-header(http响应中由服务器发送的一个头部字段): Apache/2.4.10 (Debian)
去访问DC2网站,直接访问是访问不了的,添加本地DNS解析,编辑/etc/hosts
sudo vi /etc/hosts
当我们访问一个域名时,会先查询DNS服务器里面对应的ip地址
然后就能访问网站了,看到flag1,常用的字典攻击可能会不奏效,需要用 字典生成工具cewl,密码总是越多越好,但无法获得所有密码,登录后可以看到下一个flag
试着登录网站,但是没有看到登录框,所以要扫描一下整个网站目录,可以用dirb http://dc-2或者dirsearch -u(指定url)http://dc-2
可以知道登录入口是,http://dc-2/wp-admin/(wordpress的登录入口就是/wp-admin/)
看到这个界面就知道cms是wordpress
dirb http://dc-2 -X(在每个字典的后面添加一个后缀) .php 提取特定扩展名.php的目录
没有看到/upload.php,说明不能上传(恶意代码)
网站的cms是wordpress,有一个专门的工具wpscan,
wpscan能根据wordpress的版本信息探测是否有漏洞,插件漏洞,主题漏洞,暴力破解用户名和密码
wpscan --url http://dc-2 -e(枚举插件、用户名等) vp(显示有漏洞的插件),vt(显示有漏洞的主题),tt,u(用户名)
wpscan --url http://dc-2 -P [密码字典] -U [用户名字典]
可以加上 --api-token=自己申请个口令
(kali虚拟机出了点问题,卸载重装了,下次一定备份)
可以看到3个用户,没有扫描出漏洞
接下来暴力破解用户的密码
Cewl是一个 ruby 应用,爬行指定url的指定深度。也可以跟一个外部链接,结果会返回一个单词列表
sudo cewl http://dc-2/ -w /home/dc/dict.txt
-w将输出结果写到文件
暴力破解密码,把刚刚的3个用户写到一个文件当作字典
wpscan --url http://dc-2 -P /home/dc/dict.txt -U /home/dc/user.txt
得到Username: jerry, Password: adipiscing
Username: tom, Password: parturient
去网站登录,得到flag2,提示不能在wordpress获得快捷方式,可以采取别的切入点
开放了7744端口用作ssh服务,试试ssh登录
ssh 用户名@主机ip -p 7744
jerry用户登不上ssh,tom能成功登录
ls看到flag3文件,但看不了,出现rbash
rbash是受限制的bash,与一般shell的区别在于会限制一些行为,让一些命令无法执行
需要绕过rbash
1,尝试直接用/bin/bash,进入到shell,发现不行
2,试着cp /bin/bash 到其它目录,再执行 ./其它目录 但行不通
3,探测是否存在vi/vim、more/less
echo $PATH
运行结果
echo /home/tom/usr/bin/*
能用less、ls、scp、vi
用less flag3.txt查看一个已经存在的文件,然后输入!/bin/sh ,利用打开文件后可以在下面运行命令的特点,但是"/"不能在命令里
vi
按esc 输入:set shell=/bin/bash回车
输入:shell回车
再添加路径
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
成功绕过限制,查看flag3,tom应该su 所有压力都是他造成的
su jerry
没有权限,要去提权jerry
试试suid提权
(困了,提权明天写)