Pergunta

Eu quero escrever um serviço de link curto. Eu tentando pensar em cenários que seriam perigosos. que eu pensei foi se um url apresentado é do meu próprio site, que criaria um loop de redirecionamento inifinite.

Vocês podem pensar em outras situações? (Falhas de segurança, erros ...)

Foi útil?

Solução

Você provavelmente já sabe disso, mas eu me sinto obrigado a ressaltar TinyURL que faz exatamente o que você está tentando fazer.
Dito isto, há realmente não são muitos problemas técnicos que podem surgir, além da óbvia infinito de redirecionamento que você descreve. Os maiores problemas será política - as pessoas se escondendo spam, pornografia ou sites maliciosos por trás de suas urls, as pessoas criando 'diverte' urls apontando para algum lugar eles acham que é engraçado, e assim por diante
. Ter um olhar para a entrada Wikipedia para TinyURL para ter uma idéia dos problemas que eu encontrei .

Outras dicas

Em vez de tentar pensar nos cenários de "perigoso", e tentar pensar em como você pode escrevê-lo sem que haja qualquer risco para si próprio, independentemente de quaisquer de segurança buracos / bugs.

Pode não resolver todos os problemas que acabam vindo através mas é uma maneira muito melhor de evitar problemas.

Escreva-a evitar comportamentos que seriam causados ??por falhas de segurança. No caso do seu exemplo, se você receber mais de x número de pedidos do mesmo IP no período de tempo X.

Thinking ao longo destas linhas irá eliminar mais ameaças do que tentando bloqueá-los na frente.

Muitos dos perigos em um serviço como este não são tão perigosos para você como para os usuários de seu serviço. Se você fizer uma pesquisa para TinyURL e segurança que você vai encontrar um monte de coisas como esta:

http://www.readwriteweb.com/archives/tinyurl_being_used_to_bypass_safe_browsing_filters.php

Gostaria de fazer uma série de pesquisas sobre TinyURL e Bit.ly para ver como eles já abordou estas questões.

No que diz respeito a sua própria aplicação vai, todas as melhores práticas padrão se aplicam. entrada Validar, insira com segurança em seu banco de dados, etc.

Você pode sempre verificar para ver se se trata de seu serviço.

E se você está preocupado com isso sendo um TinyURL para sua URL mais finos, você sempre pode seguir o link e se ele nunca acaba de volta ao seu site, matá-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top