1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
|
---
title: Palavras-passe inseguras
slug: Web/Security/Insecure_passwords
tags:
- Insegura
- Intermediária
- Segurança
- Web
- palavra-passe
- palavras-passe
translation_of: Web/Security/Insecure_passwords
original_slug: Web/Seguranca/Palavras-passe_inseguras
---
<p class="summary">Apresentar formulários de sessão usando protocolo HTTP é especialmente perigoso por causa da grande variedade de ataques que podem ser utilizados contra os mesmos para extrair a palavra-passe de um utilizador. As escutas ocultas de rede podem roubar a palavra-passe de um utilizador ao "farejar" a rede ou modificar a página servida no tráfego. Esta página detalha os mecanismos de segurança que o Firefox criou para alertar os utilizadores e programadores dos riscos que envolvem as palavras-passe inseguras e o roubo da mesma<span class="seoSummary">.</span></p>
<p>O protocolo <a href="https://en.wikipedia.org/wiki/HTTP_Secure" title="https://en.wikipedia.org/wiki/HTTP_Secure">HTTPS</a> foi desenhado para proteger os dados dos utilizadores de escutas (confidencialidade) e modificação (integridade) na rede. As páginas que lidam com dados de utilizador, deveriam idealmente usar HTTPS para proteger os utilizadores de ataques. Caso uma página use HTTP em vez de HTTPS, roubar informação acerca do utilizador (como os dados de autenticação) é um processo trivial. Esta técnica ficou famosamente demonstrada por <a href="https://codebutler.github.io/firesheep/" title="http://codebutler.com/firesheep/">Firesheep</a>.</p>
<p>Para resolver este problema, é necessário instalar e configurar um certificado SSL/TLS no servidor onde está alojada a página. Existem vários emissores deste tipo de certificados sendo que uns são grátis e outros pagos. Se está a usar uma plataforma cloud, é possível que a mesma tenha as suas próprias maneiras de ativar o protocolo HTTPS.</p>
<h2 id="Indicadores_de_segurança_de_palavra-passe_do_Firefox">Indicadores de segurança de palavra-passe do Firefox</h2>
<p>Para o informar do perigo descrito acima, o Firefox implementa vários mecanismos de aviso:</p>
<ol>
<li>
<p>Firefox 51+ mostrará o símbolo de um cadeado com um traço vermelho na barra de endereços sempre que uma página de autenticação não tenha uma ligação segura, como demonstrado abaixo.</p>
<p style="text-align: center;"><img alt="Lock Icon" src="https://support.cdn.mozilla.net/media/uploads/gallery/images/2015-11-17-12-13-18-2faa61.png" style="height: 25px; width: 25px;"></p>
</li>
<li>
<p>Firefox 52+ mostrará um aviso claro na barra de endereço e mais abaixo, focará o campo de introdução da password em qualquer formulário inseguro:</p>
<p style="text-align: center;"><img alt="Warning" src="https://support.cdn.mozilla.net/media/uploads/gallery/images/2017-04-21-23-52-53-ba340d.png" style="height: 133px; width: 328px;"></p>
</li>
<li>
<p>Firefox 52+ também desabilita o preenchimento automático em formulários inseguros. No entanto, a partir da caixa de seleção, os utilizadores continuam a poder utilizar o preenchimento automático caso tenham os seus dados de autenticação gravados.</p>
</li>
<li>
<p>Avisos acerca de formulários inseguros também podem ser encontrados no separador "Segurança" da consola de programador em todas as versões distribuídas de Firefox, como demonstrado na próxima secção.</p>
</li>
</ol>
<h2 id="Mensagens_da_Consola_da_Web"><strong>Mensagens da Consola da Web</strong></h2>
<p>Esta secção descreve as mensagens de segurança mostradas pela consola de programador das Firefox DevTools (ferramentas de desenvolvimento), acerca de passwords inseguras.</p>
<h3 id="Apresentando_o_formulário_de_sessão_usando_protocolo_HTTP">Apresentando o formulário de sessão usando protocolo HTTP</h3>
<p>Mesmo que a acção do formulário seja um endereço HTTPS, a informação introduzida no formulário pelo utilizador não está protegida porque um possível atacante pode modificar a própria página que o utilizador consulta (por exemplo, os atacantes podem mudar o destino do formulário de forma a que os dados sensíveis sejam enviados para um servidor por eles controlados, ou inserir um script de leitura de teclas que desenha a password enquanto o utilizador a escreve). O separador de segurança da consola de programador web avisará os programadores e utilizadores acerca desta preocupação de segurança:</p>
<p style="text-align: center;"><img alt="Insecure login form shown with the Web Console and contextual warning on the password field." src="https://mdn.mozillademos.org/files/14783/Insecure_Password_Console_Contextual_sm.png" style="height: 566px; width: 790px;"></p>
<div class="note">
<p><strong>Nota</strong>: Também não é seguro incluir uma página de autenticação recorrendo a HTTPS numa página HTTP - um atacante pode alterar a frame e respetivo endereço para apontar para um outro endereço, possivelmente malicioso.</p>
</div>
<h3 id="Utilizar_um_URL_HTTP_na_acção_do_formulário"><strong>Utilizar um URL HTTP na acção do formulário</strong></h3>
<p>Neste caso, quaisquer dados que o utilizador introduza é enviado pela rede como sendo apenas texto básico. A password do utilizador é claramente visível para qualquer pessoa que "fareje" a rede desde o momento em que deixa o computador do utilizador até ao momento em que chega ao servidor onde se encontra alojado o website de destino.</p>
<p style="text-align: center;"><img alt="Insecure login form action shown with the Web Console and contextual warning on the password field." src="https://mdn.mozillademos.org/files/14785/Insecure_Action_Password_Console_Contextual_sm.png" style="height: 566px; width: 790px;"></p>
<h2 id="Nota_sobre_a_reutilização_de_palavra-passe">Nota sobre a reutilização de palavra-passe</h2>
<p>Por vezes, as páginas requerem nomes de utilizador e palavras-passe, mas não guardam dados que sejam particularmente sensíveis. Por exemplo, uma página de notícias pode gravar quais os anúncios que um utilizador queira voltar a rever e ler, sem guardar quaisquer dados acerca deste utilizador. Os programadores web deste tipo de páginas poderão estar menos preocupados a promover a segurança desta página e dos dados dos seus utilizadores.</p>
<p>Infelizmente, <a href="https://www.lightbluetouchpaper.org/2011/02/09/measuring-password-re-use-empirically/">a reutilização de palavras-passe é um grande problema</a>. Os utilizadores tendem a utilizar a mesma palavra-passe para aceder a múltiplas páginas (seja de notícias, redes sociais, serviços de email, bancos, etc.). Por essa razão, mesmo que o acesso ao utilizador e palavra-passe do seu site não lhe pareça um enorme risco, é um grande risco para utilizadores que usem esse mesmo nome de utilizador e palavra-passe para aceder, por exemplo, às suas contas bancárias. Os atacantes estão a tornar-se cada vez mais espertos; roubam pares de nomes de utilizador/palavra-passe de um site, e tentam reusá-los em sites mais lucrativos.</p>
<h2 id="Consulte_também">Consulte também</h2>
<ul>
<li class="entry-title"><a href="https://blog.mozilla.org/tanvi/2016/01/28/no-more-passwords-over-http-please/">Não Utilizar Mais Palavras-passe sobre HTTP, Por favor!</a> (inglês)— artigo de blogue detalhado com mais informação, e perguntas frequentes.</li>
</ul>
<p class="entry-title">{{QuickLinksWithSubpages("/en-US/docs/Web/Security")}}</p>
<div id="SL_balloon_obj" style="display: block;">
<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; display: none; opacity: 1; left: -8px; top: -25px;"> </div>
<div id="SL_shadow_translation_result2" style="display: none;"> </div>
<div id="SL_shadow_translator" style="display: none;">
<div id="SL_planshet">
<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
<div id="SL_Bproviders">
<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
</div>
<div id="SL_alert_bbl" style="display: none;">
<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
<div id="SL_alert_cont"> </div>
</div>
<div id="SL_TB">
<table id="SL_tables">
<tbody>
<tr>
<td class="SL_td"><input></td>
<td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
<td class="SL_td">
<div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
</td>
<td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
<td class="SL_td">
<div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
</td>
<td class="SL_td">
<div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
</td>
<td class="SL_td">
<div id="SL_bbl_font_patch"> </div>
<div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
</td>
<td class="SL_td">
<div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
</td>
<td class="SL_td">
<div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="SL_shadow_translation_result" style=""> </div>
<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
<div id="SL_player2"> </div>
<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
<table id="SL_tbl_opt" style="width: 100%;">
<tbody>
<tr>
<td><input></td>
<td>
<div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
</td>
<td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
<td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
|