shell执行perl_技术干货 | CTF命令注入(代码执行漏洞)

本文详述了一个CTF挑战的过程,通过端口扫描和网站目录探测,发现了可以执行Perl代码的漏洞。在playsms 1.4版本中利用文件上传功能,构造CSV文件执行PHP代码,最终通过perl反弹shell并提权,成功获取flag。此外,内容还提及了网络安全教育和认证的相关信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

226767b09b6ead40bd4c0d986af06ed0.gif

实验环境

攻击机:172.20.10.5
靶机:172.20.10.4
  • 1

  • 2

实验流程

  • 端口扫描93ed90de648911f253389b1c2dad1663.png

  • 端口详细信息探测
    命令:nmap -T4 -A -v 靶机IP地址
    发现网站下的robots.txt中包含几个敏感目录cf68e9941e7ae787555a30d87ce8f453.png

  • web站点详细信息探测4dcb7fa45b5ac000e8bca61eb8a8b949.png

  • web目录爆破0b918eec93d9ec9cc11094c2c5751976.png

  • 访问robots.txt,对其中的敏感目录进行查看d933b7deeadbc438549117302fd449db.png其中/nothing为404页面,但是和正常的4014页面不同0875ca4476e0f4d5781e055dd097dceb.png查看源代码,发现网站管理员在源代码中存储了常用的密码6da094112366274d7fd7123d71dabe56.png其中/tmp和/uploads均为空目录d2fed22561eb1c503b767106dcf07d5a.pngc749d55f670ea06026ed7c2b3a883419.png
    尝试探测改地址允许使用的请求方法,发现并不允许使用PUT请求方法上传文件。1111e18a31500e130117f5fc3bc24b45.png

  • 继续查看其他敏感目录
    /secure/目录下面存放了一个压缩文件,尝试下载、解压9f171ef59c5fb619e0fb4bb509322e93.png解压该文件时需要输入密码,尝试使在/nothing源代码中获取到的密码进行解压
    密码:freedom5178bd3197d1f46c4132b7d14d462b4c.png
    解压后的文件是一个mp3文件,但是靶机是Linux操作系统,没有明显的文件类型限制,重新判断该文件的类型,是一个代码文件cbd2248fab7be5118922fefb1240f68b.png
    直接查看该文件内容,文件的内容大致是服务器管理员对电脑不是很精通所以选择了一个比较简单的密码,并且将密码放在了一个文件中,应该指的就是/nothing,还留下了一个用户名:touhid。猜测该用户名和密码可能为网站后台的管理员账号和密码。在文件的最下面还有一个URL,差点没看见!!!fd172bbfff1e66d799e61304db08b1e8.png

  • 访问文件中给定的URL,疑似网站的后台登录页面。03d55973976e5e923f8b1458c47b1004.png使用用户名touhid和/nothing页面源代码中的密码进行登录(touhid/diana),该网站是一个基于web的短信平台。5b8cc65df5cb97977c96f7c868b19b7b.png

  • 通过探测,playsms 1.4版本存在远程代码执行漏洞da406b7feef902cc34fb1c3195d9f42c.png查看溢出漏洞利用文档,文档内容大致是利用网站中的文件上传功能,将要执行的PHP代码写在要上传的文件名中。647de579d18b0a2612747ada3f148953.png17b929d283ba3c6fa532bfa8a53a0c9e.png访问漏洞页面,该页面允许导入以CSV为后缀的文件fc60416405cd8f297d44342c555e295a.png

  • 漏洞利用
    创建一个后缀名为CSV的文件并上传该文件790721075522af6a26460fa3e774f66e.png设置浏览器使用的代理服务器为127.0.0.1:8080b5f6d09529a5481512b0be914d8d5c87.png
    点击上传,利用BP抓包f4173a8f64f996a388fcb1fd4a0a9f96.png
    将该请求发送至repeater页面并且修改文件名为要执行的PHP代码,点击go将请求发出,点击Render查看图形化的响应页面,其中包含代码执行的结果90d8ebea601d2f437c4d653b50db96f0.png
    利用msfconsole监听端口85088235ed48cc377acf5a4d698e45c4.png43c732e774cf48243aa2b5a30cf33c8f.png91f48543304d825d53dffcd813176e5a.png
    生成木马(注意:elf类型的文件是可执行的二进制文件)9e44d64d6043d8c0d3acef7213db6e7f.png
    利用远程代码执行漏洞下载木马,因为需要绕过防火墙的原因所以对要执行的代码进行base64形式的编码
    将生成的木马放到web网站的主目录下面b247985573f58a963e38c7ed31f85710.png
    启动Apache服务48eecddf0d9d383e5537535d9186b7d3.png
    生成命令9a89ac51423ad656a8a3a211e2ccf16e.png
    执行反弹shell(注意:每执行一条指令都需要重新抓一次包)f741768843f55ffd005c164ea241d070.png5d15d67a92790ccc1569ced6a7323d49.pngf048a3a46eab79ec90a96bdb2d85e4e2.png11fe7248bdbadb0fb635387417439d32.png判断当前权限95ddfce1fda11c506f4ddc7ec8689792.png
    优化shell440920204167e4a4e104b4dfe4edd5b5.png

  • 提权
    查看当前用户使用sudo命令的权限,/usr/bin/perl在运行的时候拥有最高权限并且不需要密码cfab24722452c54c2bea27c84bcf1709.png
    利用perl反弹shell53b01cf51059c67ec2be5e2a0597fd99.png
    获取flag7a3a9ddda98020e67a11280b701ff672.png

e1d6d80c55ac6081e95c9c67bb2a04ab.png

1657ff3a76149507bfc35526930259e9.gif END

|  More ·精彩回顾 |

乡村网络安全意识培训专题会议成功召开

2020年需要关注的七个新增/热门网络安全认证

教育部:网络安全等16个领域纳入国家安全教育,大中小学全覆盖

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值