it-swarm-pt.tech

Por que curl / wget na caixa de pesquisa do ebay fornece um erro de acesso negado?

Acabei de copiar acidentalmente um comando wget na caixa de pesquisa do ebay e obtive o seguinte erro:

ebay error

Isso acontece com wget http://google.com ou curl http://google.com, ou qualquer outro URL ...

Parece higienizar a entrada e remover barras se você apenas inserir um URL, mas não se o preceder com wget ou curl. O que eles poderiam estar fazendo, o que faz com que um comando wget ou curl contorne sua sanitização e produza um resultado diferente?

30
Pancakes

Eu presumo que o ebay.com instalou um Web Application Firewall, que reconhece sua solicitação como um possível ataque. Portanto, sua solicitação é cancelada e você recebe uma HTTP 403 - Access Denied. O WAF mod_security para Apache, nginx e IIS se comporta de maneira semelhante: se estiver no modo de prevenção, ele também responderá com HTTP 403 por padrão [1].

A maioria dos WAFs possui algum tipo de conjunto de regras. Eles verificam se sua solicitação corresponde a uma de suas regras, talvez com expressões regulares. Suponho ainda que uma dessas regras se pareça com (wget|curl) (http|https)://.* [2]. A "limpeza" de barras duplas para frente no seu URL ocorre provavelmente no nível do aplicativo. Strings como asdf// também será reduzido para asdf.

[1] https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#secdefaultaction

[2] Escape ignorado de barras para facilitar a legibilidade.

35
Stefan Braun