tabnews.com.br icon indicating copy to clipboard operation
tabnews.com.br copied to clipboard

Segurança de links no Markdown

Open silvaezequias opened this issue 2 years ago • 7 comments

Fazendo alguns testes eu descobri que é possível "mascarar" links, assim como o exemplo a seguir

https://youtube.com - Esse é um "link falso" [ https://youtube.com ](https://google.com)

image

image

Ou seja, você clica em um link mas na verdade o link real é outro.
Isso é um problema que existia antigamente no Discord, e por esse motivo, essa feature foi removida do Discord. E pra resolver isso, uma das formas que eu pensei é de aparecer um aviso toda vez que a pessoa clicar em algum link de qualquer conteúdo, bem parecido com o Discord mesmo:

image

Pra prevenir que qualquer pessoa entre em algum link malicioso

silvaezequias avatar Jul 18 '22 12:07 silvaezequias

A possibilidade dar um nome personalizado para um link é muito útil para deixar o texto limpo e organizado. Mas concordo que abre muita brecha para pessoas mal intencionadas.

O aviso é uma boa, mas também começa a ficar muito chato quando se tem uma lista de links, por exemplo. O Discord até adicionou uma opção para "Confiar neste domínio" mas aí já seria uma complexidade maior.

agjunior avatar Jul 18 '22 20:07 agjunior

Realmente estranho, Mas se o github não bloqueia não vejo o porque bloquear também, até porque a pessoa pode utilizar um encurtador e mascarar o possivel malware também. Ou até domínios similares por exemplo goglle.com

Acredito que um sistema de moderação para punir usuários mal intencionados seria o melhor caminho.

rodrigoKulb avatar Jul 18 '22 21:07 rodrigoKulb

Realmente estranho, Mas se o github não bloqueia não vejo o porque bloquear também, até porque a pessoa pode utilizar um encurtador e mascarar o possivel malware também. Ou até domínios similares por exemplo goglle.com

Acredito que um sistema de moderação para punir usuários mal intencionados seria o melhor caminho.

Exato ou um sistema q previamente verifique os links. Mas ai fica um pouco mais complexo.

vitoropereira avatar Jul 18 '22 21:07 vitoropereira

Não vejo problema o recurso de você dar uma descrição para um link, mesmo que o link seja um encurtador, o que fica muito estranho e não vejo motivo do porque deixar existir é uma descrição ser um link válido, mas é uma máscara para outro link, como o exemplo do @ezequiaslopesdasilva

[https://youtube.com/](https://google.com/)

Talvez o que poderíamos negar no backend com um bad request é quando atingir a condição de que a descrição é um link válido e ela está diferente do link real. Até criaria um evento/alerta marcando essa conta para investigação.

Alguém vê algum motivo válido para a usar um outro link como descrição?

filipedeschamps avatar Jul 18 '22 22:07 filipedeschamps

O único motivo que vejo para usar outro link como descrição é a questão das ações intencionais de terceiros. Mas como o @rodrigoKulb falou é possível a pessoa mascarar o link com um redirecionador. Não sei se existe algo do tipo, mas seria interessante existir alguma funcionalidade para checar se o link é de redirecionamento ou não, desse modo, caso sim, pode haver um alerta para uma conta para investigação como o @filipedeschamps falou

OtavioVB avatar Jul 19 '22 13:07 OtavioVB

Talvez o que poderíamos negar no backend com um bad request é quando atingir a condição de que a descrição é um link válido e ela está diferente do link real.

O legal de fazer essa verificação no backend é que abre oportunidade para checar também se a URL está formatada corretamente para evitar acontecer o relatado aqui:

https://www.tabnews.com.br/Ja1/56a2f8b6-4c13-4733-887d-4c1f309944b4

E no frontend, acho que em algum momento pode ser implementado um aviso ao clicar em links, desde que exista a opção de desativar o aviso. Isso também abre oportunidade para fornecer a alternativa de abrir os links em novas janelas, que é uma preferência que alguns usuários já relataram.

aprendendofelipe avatar Jul 19 '22 19:07 aprendendofelipe

Achei massa a ideia de colocar uma verificação para ver a descrição do link é um link válido.

Uma outra ideia que tive que pode deixar interessante também é adicionar uma caixa suspensa quando o usuário passa o mouse sobre o link (igual acontece no Google Docs, por exemplo) assim o usuário pode ver facilmente para onde será direcionado sem precisar criar uma janela de confirmação que pode prejudicar a experiência do usuário.

Segue exemplo na imagem (no caso do google existem algumas funções de personalização que não seriam necessárias aqui no TabNews):

image

victorhcb avatar Aug 01 '22 22:08 victorhcb