大余每日一攻防EMPIRE: BREAKOUT(六)

admin 2023年12月12日02:18:20评论9 views字数 1615阅读5分23秒阅读模式

简介

每日一攻防是由全球安全研究员 VulnHub 提供的日常实战综合环境。大余安全将按照顺序选择 VulnHub 提供的渗透测试靶场,为网络安全爱好者、渗透测试从业者和安全研究员提供每日综合性的攻击和防御挑战。该项目的目标是促进参与者的技能提升,使他们更好地理解实际攻击和防御场景。

每日一攻防特色:环境攻破:以简单直白的方式攻破每日选择的渗透测试环境。代码审计:进行攻防分析,结合代码审计,深入挖掘漏洞和强化防御。

作者:大余

一首歌送给你们,一首歌一攻防一项目!富士山下送给大家!


一、网络枚举

大余每日一攻防EMPIRE: BREAKOUT(六)
1701841564_65700a9c8b8515bd31240.png!small?1701841564813

大余每日一攻防EMPIRE: BREAKOUT(六)发现ip地址本身暴露在项目环境内,扫描发现存在10000、20000http端口。

二、web信息收集-brainfuck解码

大余每日一攻防EMPIRE: BREAKOUT(六)查看网页原代码发现brainfuck编码,根据上面提示这可能是密码:大余每日一攻防EMPIRE: BREAKOUT(六)

通过在线工具进行解码得到下面的值:大余每日一攻防EMPIRE: BREAKOUT(六)

.2uqPEfj3D<P'a-3

通过端口扫描发现目标机有Webmin和Samba。Webmin是基于Web的Unix系统管理工具,因此上面解出来可能是这里的密码。目标服务器装了Samba,因此尝试用Enum4linux工具枚举获得用户名:

enum4linux -a 192.168.3.6
大余每日一攻防EMPIRE: BREAKOUT(六)
1701841591_65700ab750ed2468cf5a8.png!small?1701841591941

枚举得到用户名:cyber,然后使用这个用户名和之前得到的密码尝试登录Webmin,发现可以登进20000端口的Webmin服务。

https://192.168.3.6:20000/

三、Getshell

成功登录:大余每日一攻防EMPIRE: BREAKOUT(六)

发现在左下角可以运行shell,查看id。在这里可以反弹一个交互式shell到攻击机上:大余每日一攻防EMPIRE: BREAKOUT(六)大余每日一攻防EMPIRE: BREAKOUT(六)

四、权限提升

在home目录下有一个tar可执行文件,检测suid和capability,通过getcap命令发现它有cap_dac_read_search=ep,因此它可以读取任意文件(利用该tar打包再解压就可以查看没有权限查看的文件内容)。大余每日一攻防EMPIRE: BREAKOUT(六)

后来发现在/var/backups/目录下有一个.old_pass.bak文件,但没有读取权限:大余每日一攻防EMPIRE: BREAKOUT(六)

cd./tar -cvf pass.tar /var/backups/.old_pass.baktar -xvf pass.tarcat var/backups/.old_pass.bak

大余每日一攻防EMPIRE: BREAKOUT(六)得到密码,使用su获得root shell,拿到flag。

大余每日一攻防EMPIRE: BREAKOUT(六)
1701841622_65700ad6a26b2d41c8970.png!small?1701841623196

五、代码审计

/usr/share/webmin/authentic-theme/sysinfo.cgi

大余每日一攻防EMPIRE: BREAKOUT(六)大余每日一攻防EMPIRE: BREAKOUT(六)

该路径/usr/share/webmin/存在全部该前端框架源码,存在命令执行漏洞,建议:

1、用户输入验证在处理用户输入时,如$_POST['url'],应该进行验证和过滤,以防止潜在的安全漏洞,比如SQL注入或跨站脚本攻击。可以使用mysqli_real_escape_string或者预处理语句来处理数据库查询。

$input = $mysqli->real_escape_string($_POST['url']);

2、文件路径在该Perl脚本中,有一行 $ENV{'THEME_ROOT'} 用于获取主题的根目录。确保这个环境变量没有被用户控制,或者在使用之前进行适当的验证和清理。

do("$ENV{'THEME_ROOT'}/authentic-lib.pl");

3、命令执行/sysinfo.cgi?xnavigation=1是直接允许运行底层命令执行,严重的安全漏洞$_GET['xnavigation']进行验证和二次认证会防御此类问题。

原文始发于微信公众号(大余安全):大余每日一攻防EMPIRE: BREAKOUT(六)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月12日02:18:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   大余每日一攻防EMPIRE: BREAKOUT(六)http://cn-sec.com/archives/2273269.html

发表评论

匿名网友 填写信息