Por que as solicitações de log do apache para GET http://www.google.com com o código 200?

3

Recentemente me perguntaram: "O que causa uma linha como essa em nosso access.log?"

59.56.109.181 - - [22 / Feb / 2010: 16: 03: 35 -0800] "GET link HTTP / 1.1 "200 295" - "" Mozilla / 5.0 (compatível; MSIE 5.01; Win2000) "

Minha resposta imediata é que alguém está explorando algo um pouco desonesto.

Mas:

  • como? Especulação ... um script curto em perl ou python poderia facilmente se conectar e solicitar uma URL com um host inválido. mas não poste um. Se você conhece um bom forro, eu ficaria curioso. Considere este golfe para hoje:)
  • Vulnerabilidades? O que alguém está procurando quando faz isso, o que eles aprenderam e devemos corrigir?
  • Preciso de um chapéu de folha de estanho para evitar que eles leiam minha mente?
  • E para mim, a verdadeira pergunta: Essa não deveria ser uma resposta 404, não uma 200!?

Isso está em um servidor LAMP padrão (Ubuntu).

    
por Paul 23.02.2010 / 16:49

2 respostas

5

Talvez você queira ler o link

especialmente neste ponto: "Meu servidor está devidamente configurado para não fazer proxy, então por que o Apache retorna um código de status 200 (Success)?", ele faz sua pergunta "Não deveria ser uma resposta 404, não um 200! "

Se o apache conf estiver ok, ele está apenas enviando a página raiz. É a razão porque você tem um código de status de 200.

    
por 16.11.2011 / 11:49
4

Acho que isso aconteceria se alguém tentasse usar o servidor como proxy. Isso tornaria a URL http: // ... "normal" (em oposição a apenas a parte do caminho que você esperaria de uma solicitação regular do servidor).

Quanto ao código de status 200, que ... err ... bem, meu servidor também faz isso. Parece ignorar a parte do link e retorna o resultado do servidor local usando o caminho restante. Você provavelmente terá que vasculhar os RFCs para descobrir por que isso faz sentido; Eu não sei a resposta de improviso.

    
por 23.02.2010 / 18:44