Para fins de teste, preciso alterar o conteúdo de uma determinada URL, para ver como um aplicativo reagiria a ela. Existe alguma maneira de fazer isso no Windows?
Ex.: Fazer com que Foo.exe seja obtido <html><body><p>Hello!</p></body></html>
ao solicitar GET http://www.google.com
.
Responder1
Você pode usarViolinistapor esta. Ele atua como um proxy entre o seu computador e a Internet. Um deles é que seus recursos chamados AutoResponder podem ser usados para alterar a forma como solicitações específicas são tratadas. Ele ainda permitirá que você simule atrasos.
- Inicie o violinista. Ele instalará automaticamente um proxy ao iniciar e desinstalá-lo-á quando você encerrá-lo.
- Troque paraResposta automáticaaba. VerificarHabilitar regras.
- Adicione uma regra. Para uma URL exatamente correspondente, use
EXACT:
o prefixo, por exemplo.EXACT:http://www.example.com/api/v2/lists
. Selecione um arquivo que deseja usar como resposta. O arquivo deve conter uma resposta HTTP completa, incluindo cabeçalhos. - CliqueSalvare observe como a mágica acontece.
É claro que para que isso funcione, seu aplicativo deve respeitar a configuração de proxy do sistema. Caso contrário, mas você pode inserir as configurações de proxy manualmente, o Fiddler será executado em localhost:8888 por padrão - você pode usar isso.
Se você não quiser criar manualmente um arquivo de resposta HTTP válido, basta criar um arquivo com o conteúdo desejado, carregá-lo em qualquer servidor e abri-lo em seu navegador. Deve aparecer no Fiddler. Clique com o botão direito e clique emSalvar → Resposta → Resposta inteira.
Se o site que você deseja substituir usa SSL/TLS (conexão HTTPS), é um pouco mais complicado. O Fiddler pode ser configurado para executar um ataque man-in-the-middle em tais conexões (ele basicamente as descriptografará usando um certificado válido, editará a resposta de acordo com suas instruções e criptografará novamente usando seu próprio certificado que você deve adicionar ao armazenamento de certificados confiáveis do Windows). No entanto, isso causará problemas em programas que usam fixação de certificado: eles detectarão que o conteúdo está assinado com certificado desconhecido e agirão de acordo. Por exemplo, o Chrome ligará para casa para informar se certificados emitidos por terceiros forem detectados em domínios do Google.
Responder2
Consegui construir o Foo.exe, então isso não será mais necessário para mim, mas, antes de desistir, encontrei uma ferramenta de depuração de rede chamadaCarlos. Uma das funcionalidades que oferece éfalsificação de DNS local:
Charles contém uma lista de mapeamentos de nomes de domínio para endereços IP que você configura. Quando chega uma solicitação para um nome de domínio listado, o plugin Spoof DNS encontra o IP falsificado e redireciona a solicitação para esse endereço. O cabeçalho HTTP do Host permanece intacto, então é exatamente como se o seu servidor DNS retornasse o IP falsificado.
É um aplicativo pago, mas pode ser útil para qualquer pessoa em situação semelhante à minha.