Ocultar / Substituir Cabeçalho de Localização Nginx?

3

Estou tentando passar em um teste de conformidade com a PCI e estou obtendo uma única "vulnerabilidade de alto risco".

O problema é descrito como:

As informações sobre a máquina que um servidor da Web está localizado às vezes são incluídas no cabeçalho de uma página da web. Em determinadas circunstâncias, essas informações podem incluir informações locais por trás de um firewall ou servidor proxy, como o endereço IP local.

Parece que o Nginx está respondendo com:

 Service: https 
 Received: HTTP/1.1 302 Found 
 Cache-Control: no-cache 
 Content-Type: text/html; charset=utf-8 
 Location: http://ip-10-194-73-254/ 
 Server: nginx/1.0.4 + Phusion Passenger 3.0.7 (mod_rails/mod_rack) 
 Status: 302 X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 3.0.7 
 X-Runtime: 0 
 Content-Length: 90 
 Connection: Close <html><body>You are being <a href="http://ip-10-194-73-254/">redirect    ed</a>.</body></html> 

Eu não sou especialista, então, por favor, corrija-me se estiver errado: mas pelo que eu recolhi, acho que o problema é que o Location header está retornando http://ip-10-194-73-254/ , que é um endereço privado, quando deve estar retornando nosso nome de domínio (que é ravn.com).

Então, acho que preciso ocultar ou substituir o cabeçalho Location de alguma forma? Eu sou um programador e não um administrador de servidores, então não tenho idéia do que fazer ... Qualquer ajuda seria muito apreciada! Além disso, devo acrescentar que estamos executando mais de um servidor, então a configuração precisaria ser transferida para qualquer servidor com qualquer endereço particular.

    
por Steven Ou 14.11.2011 / 21:13

1 resposta

2

Bem, 302 Found é um status de redirecionamento HTTP, então você foi redirecionado. Você foi redirecionado não por nginx , mas por um software por trás de nginx (um aplicativo Ruby executado no Phusion Passenger, como eu vejo) porque havia cabeçalhos ( X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 3.0.7 ) adicionados pelo aplicativo de backend não por nginx . Portanto, você deve verificar o código-fonte do seu aplicativo Ruby para descobrir o que causou o redirecionamento. O endereço para o qual você foi redirecionado não estava acessível em uma web pública, portanto, isso não é uma vulnerabilidade, mas um tipo de configuração incorreta.

    
por 14.11.2011 / 22:17