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

谈一谈如何在Python开发中拒绝SSRF漏洞

0x02 如何检查IP是否为内网IP 这实际上是很多开发者面临的第一个问题,很多新手甚至连内网IP常用的段是多少也不清楚。 何谓内网IP,实际上并没有一个硬性的规定,多少到多少段必须设置为内网。...只要Host只要不是内网IP即可吗? 第二个问题,只要检查一下我们获取到的Host是否是内网IP,即可防御SSRF漏洞么? 答案是否定的,原因是,Host可能是IP形式,也可能是域名形式。...这种情况下,我们两种解决方法: 设置allow_redirects=False,不允许目标进行跳转 每跳转一次,就检查一次新的Host是否是内网IP,直到抵达最后的网址 第一种情况明显是会影响业务的,...r = requests.get(url, allow_redirects=False) 这个代码思路大概没有问题,非常简陋,而且效率不高。...因为hook函数_request_check_location只是检查30X跳转时是否存在SSRF漏洞,而没有检查最初请求是否存在SSRF漏洞。

1.4K30

直播推流失败,手把手教你问题定位

这里总结以下几种方向,希望能帮助到需要的同学。 是否使用的是推流域名? 推流域名CNAME解析? 推流URL里带的鉴权有效时间txTime已经过期?...是否使用的是推流域名? 我们使用腾讯云直播需要用到两个域名,一个推流域名,一个播放域名,推流与播放域名不能一致。怎么确定我们是否用错域名了呢?...同学会遇到,推流反复出现断开。流偶尔可以正常推,说明推流地址正常,可能是用户侧网路问题,可以让用户切换下网络推流尝试。...另外也可以使用腾讯云华佗诊断地址https://ping.huatuo.qq.com/,来获取客户端IP,LDNS,域名请求IP,请求耗时等信息,查看是否存在网路问题。 image.png 8....多个推流端推同一个URL? 有时候推流地址申请下来,会有多端推流的情况,第二个推流会失败。是因为一个推流 URL 同时只能有一个推流端,第二个尝试去推流的 Client 会被拒绝。

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

CDN资源访问异常排查思路与方法

如果使用了CDN,有用户反馈访问不了某URL,可通过以下方法进行检查: 1.获取异常URL和节点IP(玩家侧获取) --windows下获取节点IP --苹果ios下获取节点IP --手机安卓系统下获取节点...IP 2.确认该节点是否为腾讯云CDN节点IP 3.测试节点文件是否正常 4.测试源站是否正常 5.检查节点上该文件内容是否与源站一致 6.测试某节点下载速度 ---------------------.../ip 如果不是这边节点IP,那么可能是您的域名解析问题,或者是运营商侧解析异常。...另外有种情况,如果使用了腾讯云的CDN,阿里的源站,阿里那边对一些大请求可能会进行拦截,您也可以咨询下阿里那边,是否拦截某节点IP到您源站的请求,有的话,可以联系下让那边放开。...5、检查节点上该文件内容是否与源站一致 有时会遇到这样的情况,源站更新了,测试节点上面的文件跟自己源站的内容不一样,可以通过这方法测试 curl -o xx "http://119.147.253.22

4.4K50

【必看攻略】四步教你如何部署xray反连平台

# 和 http_base_url 类似,实际用来访问 dns 服务器的地址 # 如果没有准备启动dns,没有准备域名,请不要填写 独立远程服务端 以下配置文件中的ip请替换为云服务器对应的公网...# 和 http_base_url 类似,实际用来访问 dns 服务器的地址 # 如果没有准备启动dns,没有准备域名,请不要填写 客户端 # 反连平台配置,更多解释见 https://docs.xray.cool...# 和 http_base_url 类似,实际用来访问 dns 服务器的地址 # 如果没有准备启动dns,没有准备域名,请不要填写 使用方式 非独立远程服务端 1.将xray放置于存在公网ip的服务器上...1.请检查客户端与服务端是否可以正常通信 2.请检查客户端与服务端的token是否一致 3.请检查客户端与服务端使用的xray版本是否一致 4.请检查客户端与服务端所写的端口是否一致 5.请检查服务端存在的云服务器的对应端口是否开放...(安全组策略,iptables,端口占用等) B.DNS反连无法使用 1.请检查域名配置是否正确,是否已经设置dns host,自定义dns解析服务器 2.请检查客户端与服务端的配置文件中的域名填写正确

5K20

Nginx 动态DNS解析方案: resolver

通常情况下,out_ip.example.com 是作为 ResetFul 的标准接口调用,少数情况是 out_ip.example.com 同样是 Proxy 角色,后端会有转发或 upstream...检查 hosts ,确认域名没有绑定hosts 确认 Linux, Windows DNS 缓存机制并验证 3.2 排除测试方案问题 确认方案准确可行,无歧义 基于Y同学的方案,我全新重头又验证一遍。..."lst-dns-test.t1.test.example.com"; proxy_pass http://$proxy_url; } 经测试,结果如下: 域名 结果 是否符合预期 lst-dns-test.t1...而有问题的域名,压根没有到我自建的DNS上请求解析.......一定比例失效, 其它域名表现正常(3种技术环境表现的现象均一样) 删除所有nginx配置,只保留 prod-url-test.t1.test.example.com 域名

23.3K31

Web页面解析过程(浅)

,若本地DNS缓存表对应的IP地址则返回浏览器进行访问,如果没有则会向DNS域名服务器发出查询请求(上一级的DNS服务器) ​ 本地DNS服务器接收到查询请求,按照第二步查询本地已经缓存的DNS表对应的...域名记录 域名IP地址某种对应的关系 A记录:返回域名对应的IP地址 NS域名服务器记录:保存下一级域名信息的服务器地址 MX邮件记录:接收电子邮件的服务器地址 CNAME规范记录:返回另一个域名(...如果要查询DNS是否为合法的DNS,可以点击:国际域名DNS查询界面、国内域名DNS查询界面通用顶级域名DNS查询界面使用方法:输入DNS服务器的名称,选中第三个选项Nameserver,查询如果查询出有...可以用ping命令来查看域名是否生效。点击开始菜单>运行>输入"CMD">敲回车键,进入 命令提示符窗口,输入"ping 您的域名",如果红线部分为您主机的IP即解析成功。...,比如检查用户的访问权限,检查用户的IP地址合法性 post-access访问权限检查提交阶段,如果请求不被允许访问Nginx服务器,该阶段用于返回错误的响应 try-files配置项try-files

2.1K20

SSRF漏洞讲解

IP是否为内网IP (2)Host获取与DNS绕过 (3)通过各种协议 (4)利用URL解析器滥用问题 四、修复 修复方案 五、小结 一、初识SSRF漏洞 1.定义 SSRF漏洞(跨站服务器攻击)是一种在未能获取服务器权限时...三、绕过 1.绕过方式 (1)检查IP是否为内网IP 很多开发者认为,只要检查一下请求url的host不为内网IP,即可防御SSRF。...(2)Host获取与DNS绕过 检查获取到的Host是否是内网IP防御SSRF 这种防御方法可以用DNS解析绕过 Host可能是IP形式,也可能是域名形式。...网上有个神奇域名 http://xip.io (墙),www.127.0.0.1.xip.io,会自动解析到127.0.0.1 (3)通过各种协议 GOPHER:通过GOPHER我们在一个URL...如果需要从代码层面来修复的话,需要注意一下几点: 去除url中的特殊字符 判断是否属于内网ip 如果是域名的话,将url中的域名改为ip 请求的url为3中返回的url 请求时设置host header

86740

Python爬虫过程中DNS解析错误解决策略

什么是DNS解析错误DNS(Domain Name System)解析错误是指在进行网络请求时,系统无法将域名解析为对应的IP地址。这个错误可能会导致爬虫无法连接到目标网站,从而中断爬取过程。...2DNS resolution failed:这个错误信息表明DNS解析失败,可能是因为网络连接问题或无法找到域名IP地址。...检查域名存在性确保您要访问的域名存在并且可用。您可以尝试在浏览器中手动访问该域名,以验证它是否可以正常加载。如果域名不存在或不可用,您需要考虑更改目标或等待域名恢复可用。3....检查DNS服务器有时DNS服务器可能出现问题。您可以尝试更改您的DNS设置为其他可靠的DNS服务器,如Google DNS(8.8.8.8和8.8.4.4),以查看是否解决了问题。4....检查是否HTTP错误 return response.text except RequestException as e: print(f"Request error

32730

从输入url到页面加载完成发生了什么详解

1、浏览器的地址栏输入URL并按下回车。   2、浏览器查找当前URL是否存在缓存,并比较缓存是否过期。   3、DNS解析URL对应的IP。   4、根据IP建立TCP连接(三次握手)。   ...URL的中间部分为域名或者是IP,之后就是端口号了。通常端口号不常见是因为大部分的都是使用默认端口,如HTTP默认端口80,HTTPS默认端口443。...服务器会判断Etag是否发生变化,如果变化则返回新资源,否则返回304。 ? 三、DNS域名解析   我们知道在地址栏输入的域名并不是最后资源所在的真实位置,域名只是与IP地址的一个映射。...首先浏览器先检查本地hosts文件是否有这个网址映射关系,如果有就调用这个IP地址映射,完成域名解析。   如果没找到则会查找本地DNS解析器缓存,如果查找到则返回。   ...第二次挥手是服务器发送ACK表示同意,如果在这一次服务器也发送FIN请求断开连接似乎也没有不妥,考虑到服务器可能还有数据要发送,所以服务器发送FIN应该放在第三次挥手中。

1.4K41

面试官:从 URL 输入到页面展现到底发生了什么?

URL 解析/DNS 查询 接着是输入 URL 「回车」后,这时浏览器会对 URL 进行检查,这里需要对URL个回顾,请见百科《URL》,完整的URL由几个部分构成: 协议、网络地址、资源路径、文件名...,另外还会对 URL 进行安全检查,然后直接调用浏览器内核中的对应方法,接下来是对网络地址进行处理,如果地址不是一个IP地址而是域名则通过DNS(域名系统)将该地址解析成IP地址。...,如果没有找到,就会检查系统缓存,检查本地硬盘的hosts文件,这个文件保存了一些以前访问过的网站的域名IP对应的数据。...如果附近的本地DNS服务器还是没有缓存我们请求的域名记录的话,这时候会根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,则本地名称服务器再以DNS客户端的角色发送与前面一样的DNS...另外,浏览器对同一个域名连接数限制,大部分是 6,并非将这个连接数改大后就会提升性能,Chrome 团队做过实验,发现从 6 改成 10 后性能反而下降了,造成这个现象的因素有很多,如建立连接的开销

1.1K30

Web Security 之 HTTP Host header attacks

如果请求没有 Host 头或者 Host 格式不正确,则把请求路由到预期的应用程序时会出现问题。 历史上因为每个 IP 地址只会托管单个域名的内容,所以并不存在模糊性。...仔细检查下每个 URL 地址是否真的绝对需要,你经常会发现你可以用一个相对的 URL 地址替代。这个简单的改变可以帮助你防御 web 缓存中毒。...其他防御措施: 保护绝对的 URL 地址 如果你必须使用绝对的 URL 地址,则应该在配置文件中手动指定当前域名并引用此值,而不是 Host 头的值。这种方法将消除密码重置中毒的威胁。...例如,反向代理可能从请求行获取路径,然后加上了前缀 http://backend-server,并将请求路由到上游 URL 。如果路径以 / 开头,这没有问题,如果以 @ 开头呢?...当用户访问此 URL 时,网站会检查所提供的 token 令牌是否有效,并使用它来确定要重置的帐户。如果一切正常,用户就可以设置新密码了。最后,token 令牌被销毁。

5K20

浏览器从输入网址到看到网页的流程

如果没有问题,浏览器会检查 URL是否出现了⾮法字符,如果存在⾮法字符,则对⾮法字符进⾏转义后再进⾏下⼀过程。...二、缓存判断 浏览器会判断所请求的资源是否在缓存⾥,如果请求的资源在缓存⾥并且没有失效,那么就直接使⽤,否则向服务器发起新的请求。...三、DNS解析 下⼀步⾸先需要获取的是输⼊的 URL 中的域名IP 地址,⾸先会判断本地是否域名IP 地址的缓存,如果有则使⽤,如果没有则向本地 DNS 服务器发起请求。...本地 DNS 服务器也会先检查是否存在缓存,如果没有就会先向根域名服务器发起请求,获得负责的顶级域名服务器的地址后,再向顶级域名服务器请求,然后获得负责的权威域名服务器的地址后,再向权威域名服务器发起请求...,最终获得域名IP 地址后,本地 DNS 服务器再将这个 IP 地址返回给请求的⽤户。

1.1K30

SSRF安全指北

在网站 SSRF 漏洞处访问精心构造的域名。网站第一次解析域名,获取到的IP地址为A; 2. 经过网站后端服务器的检查,判定此IP为合法IP。 3....网站获取URL对应的资源(在一次网络请求中,先根据域名服务器获取IP地址,再向IP地址请求资源),第二次解析域名。此时已经过了ttl的时间,解析记录缓存IP被删除。...除此之外,还有一些绕过技巧,例如利用IPv6, 有些服务没有考虑IPv6的情况,但是内网又支持IPv6,则可以使用IPv6的本地IP如::1或IPv6的内网域名--x.1.ip6.name来绕过过滤...拆开来讲,发起请求的客户端如curl,tls协议都不存在任何问题,议题作者曾表示curl在判断同源时,只判断了协议,域名,端口,但是没有判断ip,这里在笔者看来并非是curl问题,由于负载均衡等问题,域名可能对应多个...如果需要从代码层面来修复的话,需要注意一下几点: 1.去除url中的特殊字符 2.判断是否属于内网ip 3.如果是域名的话,将url中的域名改为ip 4.请求的url为3中返回的url 5.请求时设置host

1.6K30

主机酷 - 帮助文档 - 各类网站报错分析

正文 400错误(未找到该主机) 1.该问题通常域名所绑定的主机丢失。如域名正常解析,主机已经被管理员删除。...解决办法 网站站长:问询服务提供商该主机的80,443端口(SSL功能)是否开启; 普通访客:联系网站站长处理该问题,或稍后访问; 403错误(没有默认文件) 1.该问题通常是由于该域名所绑定主机的文件目录内未存放默认文件...解决办法 网站站长:检查是否设置了该主机的访问权限,如禁止部分IP访问; 普通访客:联系网站站长处理该问题,或稍后访问; 404错误(未找到该资源) 1.该问题通常是因为访问的url地址错误,或该...url对应的主机目录内没有该指定资源所导致。...解决办法 网站站长:检查相关网站的功能是否BUG,或功能处理时间过长导致; 普通访客:联系网站站长处理该问题,或稍后访问; 3.Kangle EP系统大部分脚本仅支持Centos 6.x系统,如果使用

76120

域名被人恶意解析的解决方法

我们要知道一个网站多少访问量除了其它因素之外,跟一个好的域名也是很大的关系的。特别是对喜欢通过域名直接打开网站的用户来说就显得更为重要。...但是,如果通过主机IP能直接访问某网站,那么把域名解析到这个IP也将能访问到该网站,而无需在主机上绑定,也就是说任何人将任何域名解析到这个IP就能访问到这个网站。   二:域名被恶意解析的危害!...即使域名没什么问题,流量也会被劫持到别的域名,从而遭到广告联盟的封杀。   三、那么以下内容就来介绍一下域名被恶意解析后,我们需要做些什么呢?域名被人恶意解析怎么办?   ...1、修改解析设置 很多时候网站域名被恶意解析后,我们都没有在短时间内发现,使得损失加重,所以建议定期检查域名是否被解析,如果被恶意解析后,先不要急着删除域名,而是先修改域名DNS设置,将其解析到自己的服务器...4、404错误页面设置 写一条规则,如果登入非正常解析的域名链接的URL,将会返回404错误页面。

2K30

在浏览器输入 URL 回车后,会发生什么?

检查缓存 二、DNS 查询 基本步骤 1. 浏览器缓存 浏览器会先检查是否在缓存中,没有则调用系统库函数进行查询。 2....操作系统缓存 操作系统也有自己的 DNS缓存,但在这之前,会向检查域名是否存在本地的 Hosts 文件里,没有则向 DNS 服务器发送查询请求。 3. 路由器缓存 路由器也有自己的缓存。 4....根域名服务器查询 在前面所有步骤没有缓存的情况下,本地 DNS 服务器会将请求转发到互联网上的根域,下面这个图很好的诠释了整个流程: 根域名服务器(维基百科) 需要注意的点 递归方式:一路查下去中间不返回...关于 TCP/IP 三次握手,网上已经很多段子和图片生动地描述了,大家可以看下这篇:为什么 TCP 建立连接是三次握手,关闭连接确是四次挥手呢? 3....如果 JS 依赖 CSS 样式,而它还没有被下载和构建时,浏览器就会延迟脚本执行,直至 CSS Rules 被构建。

89240

当你在浏览器中输入URL回车后会发生什么?

在日常使用互联网时,我们经常在浏览器中输入网址(URL),背后隐藏的是一个复杂的网络通信过程。...URL解析 理解URL组成: 浏览器首先解析URL,识别出协议( http或 https)、域名、路径以及任何查询参数。...DNS查询 域名解析: 浏览器检查自己的缓存,查看是否已有对应域名IP地址。 DNS查询: 若缓存中没有,浏览器执行DNS查询,将域名转换为服务器的IP地址。 3....建立连接 连接服务器: 浏览器向服务器的IP地址发起连接请求。使用 https时,还会进行TLS握手,确保安全连接。 4....结论 尽管这个过程看起来瞬间完成,实际上涉及了浏览器、网络协议、Web服务器以及通常包括DNS服务器和CDN等中间实体之间的复杂交互。

27710

127.0.0.1 vs 0.0.0.0 vs localhost vs 主机IP

说明:上一篇写完《当你输入URL到页面显示经历了什么--URLIP地址》之后读了好几本关于网络的书(当然都是跳着读),发现期初想的太简单,还是遗漏了许多,后面等慢慢熟悉了整个网络连接之后再继续写。...这次先插播一篇: 本地在做开发的时候肯定会起服务器,这就会牵扯到访问地址的问题:要么自定义域名;要么直接IP地址访问。可是这里的IP地址该用哪个?...或者说 127.0.0.1 vs 0.0.0.0 vs localhost vs 主机IP 这些何区别?...下面查阅了一些资料做个分享: localhost: 可理解为域名,和 http://www.baidu.com 没有什么区别,可绑定任何IP。...127.0.0.1:虚拟地址 被看做是永不会宕掉的地址,因为虚拟地址是不需要和网卡绑定,所以电脑在没有安装网卡时就可以ping通,通常用来检查TCP/IP协议栈是否正常。

3K90

微信公众号是html页面吗,微信公众号网页开发

)后面会用到 3.IP白名单配置 推荐填写当前本地开发IP地址和服务器IP地址 本地开发地址获取方式 服务器IP地址(根据自己的服务器Ip地址自行填写) 多个IP地址填写用回车隔开 4重要的一步 在:...以下为常见错误及解决方法: invalid url domain当前页面所在域名与使用的appid没有绑定,请确认正确填写绑定的域名,仅支持80(http)和443(https)两个端口,因此不需要填写端口号...为什么6.0.1版本config:ok,但是6.0.2版本之后不ok(因为6.0.2版本之前没有做权限验证,所以config都是ok,这并不意味着你config中的签名是OK的,请在6.0.2检验是否生成正确的签名以保证...在iOS和Android都无法分享(请确认公众号已经认证,只有认证的公众号才具有分享相关接口权限,如果确实已经认证,则要检查监听接口是否在wx.ready回调函数中触发) 服务上线之后无法获取jsapi_ticket...,是否其子域名也是可用的(是的,合法的子域名在绑定父域名之后是完全支持的) 在iOS微信6.1版本中,分享的图片外链不显示,只能显示公众号页面内链的图片或者微信服务器的图片,已在6.2中修复 是否需要对低版本自己做兼容

13.5K20
领券