Přihlásit se pomocí účtu Microsoft
Přihlaste se nebo si vytvořte účet.
Dobrý den,
Vyberte jiný účet.
Máte více účtů.
Zvolte účet, pomocí kterého se chcete přihlásit.

Příznaky

Při použití funkce služby IIS rozhraní CGI (Common Gateway) provozovat spustitelný program, který pomocí určité knihovny přesměrování požadavků, požadavků může být zaslán na nesprávné místo na základě přítomnosti požadavek záhlaví "PROXY". Při použití této knihovny je známo několik webových aplikací platformy. PHP, Python a Go, patří mimo jiné.

Příčina

CGI je rozhraní, které umožňuje webovému serveru k hostování aplikací, které běží jako spustitelné procesy. V případě, že webový server obdrží požadavek, je server spuštěn nový proces pro zpracování jedné žádosti. Po dokončení požadavku ukončení procesu. V pořadí pro přístup k data požadavku procesu jsou k dispozici jako proměnné prostředí, které mají "HTTP_" před jejich název hlavičky požadavku. Proto mají procesy CGI pro požadavky, které obsahují záhlaví s názvem "Proxy" proměnné prostředí "HTTP_PROXY", které mají stejnou hodnotu jako hlavičky požadavku.

Chcete-li povolit různé druhy aplikací tak, aby požadavky na různé druhy serverů, včetně serverů WWW se běžně používají kudrlinkou příkazového řádku a knihovny. Tuto knihovnu lze nakonfigurovat pomocí parametrů příkazového řádku, nebo jej číst parametrů konfigurace z proměnných prostředí hostitelského procesu. "HTTP_PROXY" je jedním z mnoha parametry konfigurace, které jsou používány otočení. Odeslat požadavek HTTP pomocí nakonfigurovaného serveru proxy používá kudrlinkou "HTTP_PROXY".

Poznámka: To nesouvisí s "HTTP_PROXY" jako znázornění hlavičky požadavku klienta.

Při otočení je hostována v rámci procesu CGI, obsahující proměnnou prostředí s názvem "HTTP_PROXY" proces, kudrlinkou jeho hodnotu používá k odesílání požadovaných dat prostřednictvím serveru proxy HTTP, jehož hodnota se zadává v proměnné prostředí. K tomu dochází, protože kudrlinkou očekává, že je "HTTP_PROXY" Konfigurace směrnice a nikoli hlavička požadavku klienta.

Jak potíže obejít

Chcete-li tento problém vyřešit, nepoužívejte CGI na serveru se spuštěnou službou IIS. CGI je z velké části zastaralé rozhraní, která je nahrazena novější a další související s výkonem. Konkrétně být hostovány PHP, Python a přejít přes FastCGI ve službě IIS. FastCGI nebude používat proměnné prostředí pro záhlaví požadavku klienta a nemá tento problém. Nicméně pro PHP, některé aplikace mohou používat funkce getenv() PHPs načíst proměnné prostředí. Pokud není ani PHP umístěn uvnitř proces CGI, injekcemi hodnot hlavičky požadavku do sady dat, které jsou k dispozici funkce getenv() replikaci chování CGI. Pokud používáte PHP aplikace, která načte http_proxy použit tímto způsobem, platí následující skutečnosti snižující závažnost rizika vymazání hodnotu hlavičky nebo zamítnutí žádosti s záhlaví PROXY.

Pokud máte z nějakého důvodu použít CGI, blokovat požadavky, které obsahují požadavek na záhlaví s názvem "Proxy" nebo zrušte hodnotu hlavičky.  Je to proto, že "Proxy" není název záhlaví standardní požadavek a prohlížečů obecně neodešle ji.

K blokování požadavku, který obsahuje záhlaví Proxy (nejlepší řešení), spusťte následující příkaz:

appcmd set config /section:requestfiltering / + requestlimits.headerLimits. [záhlaví proxy, sizelimit = "0" =]
Poznámka: Appcmd.exe obvykle není v cestě a lze nalézt v adresáři %systemroot%\system32\inetsrv

Chcete-li vymazat hodnotu hlavičky, můžete použít následující pravidlo revize URL:

<system.webServer>    <rewrite>
<rules>
<rule name="Erase HTTP_PROXY" patternSyntax="Wildcard">
<match url="*.*" />
<serverVariables>
<set name="HTTP_PROXY" value="" />
</serverVariables>
<action type="None" />
</rule>
</rules>
</rewrite>
</system.webServer>


Poznámka: Adresa URL revize je ke stažení přidat in služby IIS a není součástí výchozí instalace služby IIS.

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.

Byly tyto informace užitečné?

Jak jste spokojeni s kvalitou jazyka?
Co ovlivnilo váš názor?
Po stisknutí tlačítka pro odeslání se vaše zpětná vazba použije k vylepšování produktů a služeb Microsoftu. Váš správce IT bude moci tato data shromažďovat. Prohlášení o zásadách ochrany osobních údajů.

Děkujeme vám za zpětnou vazbu.

×