首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

浅谈 URL 解析与鉴权陷阱

前言 说到 URL 解析,想必关注 Web 安全朋友们都看过 Orange 那篇 A New Era of SSRF - Exploiting URL Parser in Trending Programming...该议题主要关注不同 Parser 处理 URL域名部分,以实现针对 SSRF 绕过和后利用。 本文关注点则有所不同,主要是针对 URL 解析路径部分。...因此本文也正是从这两方面出发,分别探寻 URL 解析隐秘。...解析路径参数之后会将其使用 Request.addPathParameter 加入到请求信息,并且将其从 decodeURI 删除。 第二步,URL Decode,正常 URL 解码。...结尾 URI,先在末尾额外添加一个 /; 递归解析 URI /./ 字符串,将其替换为 /; 递归解析 URI /../ 字符串,移动相应目录; 在解析 /../ 时如果超出了根目录会直接返回

56360

URL 解析与鉴权陷阱 —— Spring 篇

在上一篇文章中介绍了 Java Web 应用 URL 解析与鉴权认证常见陷阱,但主要针对 Servlet 容器进行分析。...: 应用启动时解析所有的 Controller 等各种路由映射,将其以 PathPattern 格式存储在不同 HandlerMapping ; 收到请求时,DispatcherServlet 会将请求路径解析为...,其他都依赖于 java.net.URL 构造函数处理,即如果能成功调用 URL 构造函数就认为是一个 URL。...通过最近两篇文章针对 URL 路径鉴权分析,对解析路径时会遇到陷阱也算有了基本了解。虽然文章只介绍了 Java Web 生态 URL 鉴权实现,但对于其他应用也是类似的。...参考链接 Spring {Boot,Data,Security} 历史漏洞研究 浅谈 URL 解析与鉴权陷阱 Shiro 历史漏洞分析 spring 审计常见 tricks 版权声明: 自由转载-

76610
您找到你想要的搜索结果了吗?
是的
没有找到

URL#

作者:阮一峰   http://www.ruanyifeng.com/blog/2011/03/url_hash.html 一、#涵义 #代表网页一个位置。其右面的字符,就是该位置标识符。...二、HTTP请求不包括# #是用来指导浏览器动作,对服务器端完全无用。所以,HTTP请求不包括#。...比如,下面URL原意是指定一个颜色值:   http://www.example.com/?color=#fff 但是,浏览器实际发出请求是:   GET /?...五、改变#会改变浏览器访问历史 每一次改变#后部分,都会在浏览器访问历史增加一个记录,使用"后退"按钮,就可以回到上一个位置。...八、Google抓取#机制 默认情况下,Google网络蜘蛛忽视URL#部分。 但是,Google还规定,如果你希望Ajax生成内容被浏览引擎读取,那么URL可以使用"#!"

1.8K10

域名主机名是什么?域名与主机名关系是怎样

其实域名是包含主机名。那么域名主机名是什么?域名与主机名关系是怎样呢? 域名主机名是什么 主机名是包含在域名。其实域名主机名就是域名完整子域名。...我们一般记企业域名网站时候,只是记忆子域名就可以了,后缀基本就是com或cn,这种应用最广泛,也最经典后缀了。 域名与主机名关系 1、域名是包含主机名,就如上面所说。...而两者主要区别就是:域名范围比主机名要大。域名入网结构包含有:主机名、机构名、网络名等,甚至还可以包含更高层域名。通过这种分层管理模式,以突出域名便于记忆优点。...2、域名是可以有几个主机名,并且还可以拥有子域名,比如:域名为tencent.com,就会有主机名为:1号.tencent.com和2号.tencent.com。...3、域名一经注册后,就是不能改变了,具有唯一性,而主机名是可以变化。 4、域名是用于公网上,就是我们常说网站,而主机名主要是适用于局域网。 域名主机名是什么?就是完整企业网址。

28.2K50

python解析url返回json格式

keyword=周杰伦&pagesize=1') #通过urllib模块urlopen方法打开url weatherHtml1 = weatherHtml.read() #通过read方法获取返回数据...print "url返回json数据:",weatherHtml1 #打印返回信息 weatherJSON = json.loads(weatherHtml1) #将返回json格式数据转化为python...对象,json数据转化成了python字典,按照字典方法读取数据 print "python字典数据:",weatherJSON print "字典data数据",weatherJSON["data..."] print "lists列表数据",weatherJSON["data"]["lists"][0] #lists里面的数据是一个列表(按照序列编号来查看数据) print weatherJSON...["data"]["lists"][0]["SongName"] #lists0号数据是一个字典,按照字典方法查看数据 url返回json数据 本文出自http://www.cnblogs.com

3.2K10

docker-compose启动镜像失败问题

解决docker-compose启动镜像失败问题; 原文地址:http://blog.csdn.net/boling_cavalry/article/details/79050451 正常docker...以上命令创建容器,可用docker exec -it test001 /bin/bash进入容器,执行我们所需操作; docker-compose启动失败 这里写个最简单docker-compose.yml...,然后用docker-compse,内容如下: master: image: java:8u111-jdk 在此文件所在目录下执行docker-compose up -d启动容器,再执行docker...down将之前容器删除,再执行docker-compose up -d启动,可以发现启动成功,并且可以成功进入容器进行操作: root@rabbitmq:/usr/local/work/test#...up -d命令启动后,由于没有tty:true配置,容器就退出了; 这时候执行命令docker-compose run master /bin/bash,会创建一个容器,并且进入这个容器; 在当前电脑再打开一个控制台

1.9K40

如何从 100 亿 URL 找出相同 URL

对于这种类型题目,一般采用分治策略 ,即:把一个文件 URL 按照某个特征划分为多个小文件,使得每个小文件大小不超过 4G,这样就可以把这个小文件读到内存中进行处理了。...使用同样方法遍历文件 b,把文件 b URL 分别存储到文件 b0, b1, b2, ..., b999 。...这样处理过后,所有可能相同 URL 都在对应小文件,即 a0 对应 b0, ..., a999 对应 b999,不对应小文件不可能有相同 URL。...那么接下来,我们只需要求出这 1000 对小文件相同 URL 就好了。 接着遍历 ai( i∈[0,999] ),把 URL 存储到一个 HashSet 集合。...然后遍历 bi 每个 URL,看在 HashSet 集合是否存在,若存在,说明这就是共同 URL,可以把这个 URL 保存到一个单独文件

2.8K30

Django获取URL数据

Django获取URL数据 URL参数一般有两种形式。...q=Django&t=blog&u=zy010101 我们将第一种形式称为“URL路径参数”;第二种形式称为“URL关键字形式”。下面讲述如何在Django获取这两种形式数据。...在此之前,需要说明是,在URL携带数据方式一般是前端发起GET请求,至于为什么GET请求不在请求体携带参数,可以参考这篇文章:关于在GET请求中使用body URL路径参数 使用path函数...为了防止有时候进不去文档,我将官方文档也直接贴在下面: 使用re_path函数 如果,使用path函数并不能满足你匹配URL要求,那么可以使用re_path函数来使用正则表达式来匹配URL路径参数...需要注意在Django,使用正则表达式来获取分组语法是(?Ppattern),其中 name 是组名,pattern 是要匹配模式。

5.6K30

面试:如何从 100 亿 URL 找出相同 URL

对于这种类型题目,一般采用分治策略 ,即:把一个文件 URL 按照某个特征划分为多个小文件,使得每个小文件大小不超过 4G,这样就可以把这个小文件读到内存中进行处理了。...使用同样方法遍历文件 b,把文件 b URL 分别存储到文件 b0, b1, b2, ..., b999 。...这样处理过后,所有可能相同 URL 都在对应小文件,即 a0 对应 b0, ..., a999 对应 b999,不对应小文件不可能有相同 URL。...那么接下来,我们只需要求出这 1000 对小文件相同 URL 就好了。 接着遍历 ai( i∈[0,999] ),把 URL 存储到一个 HashSet 集合。...然后遍历 bi 每个 URL,看在 HashSet 集合是否存在,若存在,说明这就是共同 URL,可以把这个 URL 保存到一个单独文件

4.4K10
领券