信息收集
- 主机探测:首先,我们需要确定靶机的IP地址
-
靶机所有开放的端口对应服务版本号
-
FTP匿名登录:发现21端口可以无验证登录,使用ftp进行匿名登录。
登录成功后,发现有一个名为trytofind的图片,下载下来进行分析。
- 先用kali自带的strings工具查看一下该图片中的可打印字符。
-
虽然查到了图片中的文件,但是查看文件需要密码,ftp这条线索到此就断了。
-
就去看看80端口好了,打开浏览器访问。
80端口的网站主页也没什么有用的信息,查看网页源代码也没发现
-
-
进入80端口看一下,即使查看源码也没有任何提示。然后进行目录扫描,可以使用dirb进行目录扫描。
扫描结果显示/blogs/index.html下有内容。
-
隐藏目录访问:在源码中的最后一行,提示我们去访问另一个隐藏目录S3cr3t-T3xt。访问该目录后,找到了一个密钥3xtr4ctd4t4。
找到密钥3xtr4ctd4t4,重新回到查看图片隐写处,输入密钥。
cat查看图片中隐藏的data.txt,这是一封信件的格式,是告诉renu说他的密码太过于简单了,我们结合ssh端口。把用户名定位renu,用hydra爆破,这里爆破用的密码字典是kali自带的。
爆破得到密码:987654321,通过ssh连接。
得到第一个flag。
历史命令里有把密钥发送给192.168.43.80的lily账号。
又在/home/lily/发现了第二个flag
前面猜测是生成的密钥发送给了本地的lily账户,如果是这样的话就能不用账号密码,用密钥就能够登录lily账户,为了验证这个猜想,执行ssh lily@127.0.0.1
执行sudo -l发现该用户存在sudo赋权,程序为/usr/bin/perl,perl同python类似,也是一门解释型语言,推测靶机应该有perl运行环境。
定位kali中的perl脚本反弹shell,将其拷贝到kali的/var/www/html下,重命名为p.php;
修改p.php文件内容,将反弹连接的Ip地址改为kali的IP;
开启kali的网站服务;
systemctl start apache2
切换到靶机lily会话,通过http协议下载p.php
kali 通过nc命令监听1234端口
nc -lnvp 1234
靶机上通过sudo 运行p.php程序
切换到渗透机kali,成功反弹管理员权限shell
渗透总结:
- 信息收集获取ip地址 和端口信息
FTP
匿名登入 隐写工具得使用steghide
hydra
得使用暴力破解- 利用
perl
进行提权。