// // Chicletes para o Cérebro

sexta-feira, 28 de julho de 2023

Nostalgia - Instalando o Windows 2000 em 2023!

Pessoal,


Hoje vamos instalar o Windows 2000!

Essa versão lançada em dezembro de 1999 (para fabricantes, mas disponível no varejo em fevereiro de 2000) é a sucessora do Windows NT 4 e foi substituída em 2001 pelo glorioso Windows XP.




Interessante ressaltar que na parte traseira da caixa a Microsoft já sugere que para usuários domésticos a atualização deveria ser para o Windows ME e para usuários profissionais (empresas, etc) deveria ser para o Windows 2000. Apesar de ter sido planejado para substituir o Windows 98 e Windows NT 4.0, o uso do kernel NT para edições de consumo e profissionais só ocorreu com o Windows XP. Além disso a Microsoft planeja lançar uma versão 64 bits do Windows 2000, mas a primeira versão 64 bits do Windows só foi sair em 2001 com o Windows XP 64 bits Edition.

Foram lançadas 4 versões do Windows 2000, todos recomendados para empresas e servidores: Professional, Server, Advanced Server e Datacenter Server. Todas compartilhavam um conjunto principal de recursos para trabalho em rede e administração de sistemas, apesar de terem focos distintos

O Windows 2000 exigia um Pentium 133 ou equivalente (e suportava sistemas com uma ou duas CPUs), pelo menos 64MB de RAM (até 4GB), pelo menos um HD de 2GB com 650MG livre, CD ou DVD, monitor VGA ou superior. Como comentamos no post da instalação do Windows NT 4.0, apenas a arquitetura x86 foi suportada no Windows 2000, apesar que uma versão para o Alpha chegou a ser compilada mas foi abandonada nas fases de Release Candidate 1 quando a Compaq (que ainda produzia computadores com o Alpha, anunciou que não iria mais suportar o Windows NT nele).

Vários recursos foram trazidos do Windows 98 e 98 SE para a linha NT, como o Windows Desktop Update, IE 5 e 6, Windows Media Player, dentre outros. Além disso havia o suporte ao NTFS 3.0, novos suportes para impressoras, melhorias nas fontes, suporte para USB 2.0 (a partir do SP4), melhorias para Plug & Play, Proteção de Arquivos do Windows (com proteção a arquivos críticos do sistema. Além disso, várias melhorias gráficas e facilidades para o usuário surgiram aqui no Windows 2000.

Com o NTFS 3.0, surgiu a possibilidade de criptografia a nível do sistema de arquivo e até hoje não foi possível quebrar essa criptografia.

Ainda sobre discos, as versões do Windows 2000 suportam volume simples simples (um disco), volume estendido (até 32 discos podem aparecer como um só, aumentando o tamanho porém sem proteção), volumes listrados (ou striped, é o RAID 0), volumes espelhados (ou RAID 1) e striped com paridade (é o RAID 5).

Um problema grave foi em relação a segurança do Windows 2000, uma vez que os ataques passaram a vir remotamente pela internet. Vários patches foram lançados e até 2010 ainda saiam correções para falhas novas, apesar que o o último Service Pack foi de 2005).

Uma boa referência das novidades lançadas no Windows 2000 pode ser encontrada aqui.

A versão que iremos instalar será a Windows 2000 Professional SP4 (compilação 5.00.2195 que é a final do Windows 2000, mais especificamente a 5.00.2195.6717 que é a com o SP4). 

A versão Windows 2000 Server foi substituída pelo Windows 2003 Server. Optei por não instalar essas linhas Server porque acho que fogem do objetivo do blog. Assim, a próxima instalação será a Windows ME e depois o Windows XP.

Vamos lá. Eis aqui a mídia que usaremos para instalar:


Após ligar a configurar a VM e iniciar com a mídia inserida, já aparece isso:


Damos Enter e vamos em frente.

(O disco não está particionado ainda)

(Vamos de NTFS, é claro)

(A formatação é bem rápida, porque tudo aqui é virtual)

(Aqui realmente demora um pouco mesmo)


Como o meu teclado é padrão americano, já aproveitei aqui para ir em Personalizar e trocar do ABNT para o padrão americano.




Agora é solicitada a chave de registro do produto. Como já falei nos posts anteriores, tem uma chave no site do WinWorld. Especificamente para o Windows 2000 Professional SP4 Brazilian Portuguese tive que procurar em outros lugares, nas nada que um Google não resolvesse.




(Aqui vamos nas configurações típicas mesmo)


Agora o Windows começa a copiar e configurar as coisas, com pouca intervenção nossa.




Pronto! Talvez tenha sido a instalação mais fácil de todas as versões do Windows!! Agora a gente remove o CD e vamos em frente:


(Não se deixe enganar por essa tela intimidadora: ele só vai pedir a senha - que deixei em branco - e pronto)

(Com direito a musiquinha e tudo mais...)

Bom, a primeira coisa que fiz foi aumentar um pouco a resolução. De cara já temos o 800x600 habilitado, então já ajuda.

Outra coisa é que a placa de rede também já está configurada, nossa conhecida "AMD PCNET Family PCI Ethernet Adapter".

(Veja que tem um botão para mostrar o ícone de rede na barra de ferramentas; pode clicar para ativar)


Ao clicar no IE pela primeira vez, aparece esse assistente para conexão na internet. No nosso caso, a VM simula uma conexão por rede cabeada. Assim, escolha a opção de rede local e vamos frente.





Se mostrar que está off-line, ignore, abra o navegador e tente alguma coisa. Lembre-se que esse é o IE 5.0, ou seja, a navegação é limitada!


Bom, agora vamos instalar o CD de "Adicionais para Convidado" do VirtualBox. Isso nos ajudará a configurar alguns hardwares. Para tanto, vá em "Dispositivos -> Inserir Imagem de CD de Adicionais para Convidados.


Após um ou dois minutos, ele termina e pede para reiniciar. Como a placa de som já estava funcionado e a de rede também, esse pacote só melhora a resolução e cores da tela. Como eu disse no post anterior, estou usando um computador velho com resolução mais baixa (é apenas HD), isso é o máximo que eu consigo de resolução. Caso estivesse no Mac ou em um computador com resolução melhor, conseguiria até mais opções. Para o propósito nosso, acho que já está suficiente.


É isso então! Windows 2000 Professional SP4 com IE 5.0 completamente instalado com internet e som em 2023! Com quase nada de esforço!

A próxima instalação é o Windows ME, o último da família 9.x, sucessor do Windows 98. E depois teremos o Windows XP, que uniu as duas linhas, 9.x e NT.

Até lá, pessoal!

domingo, 23 de julho de 2023

Segurança - Dica - Apple dispensa o CAPTCHA - ou como NÃO precisar usar o CAPTCHA ao usar Mac e iPhone

Pessoal,

Acredito que todo mundo conheça o querido CAPTCHA!

Conheça o CAPTCHA de Minas Gerais, onde tudo é "trem", menos trem (porque em Minas, trem é coisa!):


CAPTCHA é um acrônimo do inglês Completely Automated Public Turing test to tell Computers and Humans Apart (em português: teste de Turing público completamente automatizado para diferenciação entre computadores e humanos).

Alan Turing, o famoso matemático inglês que coordenou uma das unidades responsáveis por decifrar o código da máquina Enigma durante a Segunda Guerra Mundial, é considerado um dos principais nomes do desenvolvimento da ciência da computação através da chamada "Máquina de Turing

Em 1950, Turing escreveu um artigo para a revista Mind intitulado "Computing Machinery And Intelligence" (veja aqui e aqui), traduzido para algo como "Máquinas de Computação e Inteligência", onde Turing começa o artigo escrevendo: "I propose to consider the question, 'Can machines think?' This should begin with definitions of the meaning of the terms 'machine' and 'think'." (em português: "Eu proponho considerar a questão 'As máquinas podem pensar?' Deve-se começar definindo o significado dos termos 'máquina' e 'pensar'.").

No artigo, Turing sugere que deveríamos perguntar se uma máquina consegue ganhar o chamado "jogo da imitação" onde três pessoas participam: um homem, uma mulher e um interrogador; eles podem se comunicar apenas por notas escritas e, através de perguntas, o interrogador tenta determinar os gêneros de outros participantes, sabendo que há, necessariamente, um homem e uma mulher. O objetivo do homem é enganar o interrogador fazendo-o acreditar que ele é mulher e que a mulher é homem, enquanto o objetivo da mulher é auxiliar o interrogador a tomar a decisão certa. 

Turing propõe uma variação do jogo onde há um computador (objeto do teste), um humano e um interrogador (também humano). O juiz pode conversar com ambos (o humano e o computador), digitando em um terminal. Tanto o computador quanto o humano tentam convencer o juiz de que eles são o humano. Se o juiz não puder dizer consistentemente qual é qual, então o computador ganha o jogo.

A principal confusão sobre o teste de Turing é que o teste não mede "inteligência", mas sim a capacidade da máquina de se comportar como um humano.

Em 1966, Joseph Weizenbraum, no MIT, desenvolveu um software para processamento de linguagem natural chamado ELIZA, considerado o primeiro programa a passar pelo teste de Turing. O programa avaliava as entradas do usuário procurando por palavras-chave. Caso alguma fosse encontrada, uma regra transformava o comentário do usuário e gerava uma resposta adequada. Caso nenhuma palavra-chave fosse encontrada, retornava uma resposta genérica.

Bom, voltando ao CAPTCHA, este é um teste de Turing reverso, uma vez que o objeto de teste é o humano e quem aplica é um computador. O CAPTCHA é um teste cognitivo, criado pela Universidade de Carnegie, como ferramenta antispam. O aplicador (computador) sabe a resposta certa e sabe que os computadores não consegue resolver o CAPTCHA; assim, caso a resposta esteja correta, o usuário é presumidamente humano. O teste pode ser aplicado de vários modos, desde a distorção do fundo da imagem, como distorção de um texto ou identificação de imagens. Atualmente é utilizado o reCAPTCHA e o reCAPTCHA v2 e v3, uma vez que os sistemas estavam sendo capazes de identificar os textos.

Resumindo: Turing idealizou um teste onde um humano deveria descobrir se estava conversando com outro humano ou com um computador. Com o advento da informática moderna, surgiu o spam. Para evitar o spam, criaram o CAPTCHA, que nada mais é que um teste de Turing reverso, onde o computador precisa descobrir se está sendo acessado por outro computador ou por um humano.

Bom, descobri há alguns dias que a Apple, no iOS/iPadOS 16 e MacOS Ventura 13, desenvolveu uma autenticação privada que simplifica (ou faz o bypass mesmo) nos CAPTCHAs da vida.

Para tanto, no iPhone/iPad, clique em "Ajustes", toque no seu nome e vá até "Senha e Segurança". Arraste até a área "Avançado" e marque "Verificação Segura".

No MacOS, abra os "Ajustes do Sistema", clique no seu nome e vá até "Senha e Segurança" e ative a "Verificação automática".

Pelo que eu notei aqui, vez ou outra ainda pede algum CAPTCHA, mas a maioria parou de pedir!

Ótima notícia!

É isso por agora, pessoal!

terça-feira, 4 de julho de 2023

Segurança - Google Passkey

Pessoal,


Coisas raras como a união das três maiores empresas de tecnologia (Apple, Microsoft e Google) é incomum mas acontece esporadicamente!

As três empresas desenvolveram um modo de acesso seguro aos diversos sistemas porém de modo a evitar o uso de senhas específicas para cada serviço.

Esse novo sistema de autenticação é chamado "Passkey" e é bem mais seguro que os métodos tradicionais de logins pois o credenciamento por passkey utiliza um sistema de autenticação que sincroniza todos os dispositivos já cadastrados do usuário utilizando chaves criptografias.

Assim, ao tentar fazer o login em um site ou rede social utilizando o passkey, a verificação é feita, por exemplo, com o celular (utilizando PIN ou reconhecimento digital/facial), dispensando o uso de senhas tradicionais.

Quando criamos uma conta na Apple ou no Google, são criadas duas chaves criptografias únicas: a pública, que fica no servidor do sistema e não é secreta, e a privada, que fica no dispositivo. Quando fazemos um login, o sistema pede a autenticação da chave privada (por biometria facial, digital ou PIN); em outras palavras, a gente "desbloqueia fisicamente" essa credencial para provar que quem está fazendo o login é quem realmente está autorizado.

Já que não envolvem a digitação de senhas ou recebimento de SMSs, o sistema torna-se resistente ao golpes do tipo phishing.

Assim, vamos por isso em ação. Vou fazer no iOS mas acredito que o processo seja o mesmo para Android.

Vá no aplicativo do Google, clique sobre a sua foto e clique em "Gerenciar sua Conta Google".

(Clique para gerenciar sua conta)

(Arraste essa linha até aparecer "Segurança")

(Role para baixo até aparecer "Pular a etapa de senha quando possível")

Aqui vai pedir para você confirmar com sua senha e vai abrir isso aqui:


Após ativar essa etapa, clique em "Chaves de acesso" e crie uma nova chave:






Pronto! A chave foi feita!

Agora vamos tentar conectar em um navegador no computador. Para isso vou usar o Edge para Mac, uma vez que o Safari ainda não funciona com essas chaves. Assim, ao abrir o navegador e ir ao site do Google, vamos entrar na conta. De cara já aparece isso:


Quando clicamos em Continuar, vai aparecer um QR-Code que deverá ser lido pelo celular onde foi criada a passkey:


Pronto, agora no celular vai olhar e identificar com biometria facial. Na próxima vez que voltarmos ao navegador, a tela já é diferente, pois vamos criar a chave nesse navegador:



Pronto. Sem precisar entrar novamente com senhas, já estamos na nossa conta.

Perfeito!

É isso por hoje!

Dica - Como transferir ou recuperar o Google Authenticator

Pessoal,


Como podemos fazer para que nossas ações na internet possam ser mais seguras e como podemos fazer para provar que nós somos nós mesmos na impessoalidade da rede?

Essas sempre foram preocupações pertinentes no mundo da informática.

Em geral, as empresas acabaram desenvolvendo sistemas baseados em senhas. Só que, apesar da crescente complexidade das senhas exigidas (letras, números, caracteres especiais, etc), as pessoas acabavam esquecendo as senhas ou optando por senhas menos seguras.

Em um vazamento de mais de 1 bilhão de senhas em 2017 mostrou, segundo a empresa de segurança digital 4iQ, algo que a gente já sabia: as pessoas usam senhas inseguras como "123456", "123456789", "qwerty", "senha", "password" e "111111"!

Vários motivos explicam (ou pelo menos tentam explicar) isso:
  • os humanos, em geral, têm memória ruim
  • muitas contas digitais;
  • fadiga de segurança (no início há muita preocupação, mas com a ideia de anonimato na rede ou percepção de que sempre haverá um vazamento de dados, as pessoas relaxam e usam senhas inseguras)
Assim, foram criadas as "autenticações em duas etapas" ou "autenticações de dois fatores". Nada mais é que, após a primeira senha (a tradicional, "estática") seja utilizada uma outra senha, essa dinâmica, comprovando que você é você! Esse tipo de autenticação ou verificação é conhecido também como "MFA" ou Multi-Factor Authentication ou "2FA" Two-Factor Authentication.

Uma das primeiras estratégias utilizadas foi a utilização dos tokens de hardware, aqueles chaveiros que produzem um código numérico a cada intervalo de tempo (30 em 30 segundos, geralmente) ou outros que eram tokens via USB.



Apesar de não parecer, esses dispositivos tinham alguns problemas (risco de perda, distribuição cara e possibilidade de serem hackeados - veja aqui).

Depois veio o 2FA baseado em envio de um SMS para essa confirmação. Essa mostrou-se a opção menos segura de autenticação, uma vez que o aparelho podia ser clonado ou roubado.


Atualmente, existem três formas mais comuns de 2FA.

A primeira é a 2FA biométrica, onde impressões digitais, reconhecimento facial ou de retina são utilizados para verificação da identidade.

Outra forma é a Notificação Push para 2FA, um nome bonito para um aviso em tempo real ao usuário que uma tentativa de autenticação está ocorrendo.


A terceira opção utilizada com mais frequência é a utilização de Tokens de Software para 2FA. Temos vários exemplos desse modelo como o Google Authenticator, o Authy, o Microsoft Authenticator, apenas para citar os mais comuns.

Esse modelo, também conhecido como TOTP, baseia no download de um aplicativo 2FA no celular ou computador e o cadastro (geralmente nome de usuário e senha) para gerar um código no aplicativo. Assim como nos tokens de hardware, esses códigos têm validade geralmente por menos de um minuto e estão disponíveis em celulares, computadores, wearables e funcionam até offline.

Em resumo, as autenticações em múltiplos fatores costumam incluir:
  • algo que o usuário tem: cartão, chave, token, celular, etc
  • algo que o usuário sabe: senha, PIN, etc
  • algo que o usuário é: digital, voz, padrão de posicionamento de tecla, etc
Se você quer saber um pouco mais sobre esse assunto, dê uma lida aqui.

O modelo TOTP (Time-based One-Time Password ou senha única baseada em tempo) é um algoritmo computacional que utiliza o tempo atual como fonte para gerar uma senha única (One-Time Password). Esse sistema é uma expansão do algoritmo de senha única baseada em HMAC (HMAC-based one-time password ou HOTP), que, por sua vez, é baseado no HMAC.

HMAC (Hash-based Message Authentication Code ou código de autenticação de mensagem baseado em hash) é um tipo de código de autenticação de mensagem que envolve uma função hash criptográfica e uma chave criptográfica secreta. Assim, ao invés de usar uma chave pública e assinaturas digitais, o HMAC fornece a autenticação usando um "segredo compartilhado". Como qualquer função hash criptográfica, quanto maior o tamanho do hash de saída e do tamanho e qualidade da chave, maior a força critptográfica do HMAC (veja mais detalhes aqui).

Assim, de tempos em tempos (pelo modelo TOTP), uma senha única baseada em HMAC é criada (pelo modelo HOTP).

Ufa, vamos voltar ao assunto do título.

Em 2010 o Google criou o Google Authenticator, um software de token para implementar verificação de duas etapas (2FA) utilizando os algoritmos baseados em tempo e HMAC (TOTP e HOTP, respectivamente) e funciona tanto para serviços do Google quanto para aplicações de terceiros.

Não vou discutir aqui como começar a utilizar esse serviço em detalhes, mas em linhas gerais você deve habilitar a verificação em duas etapas na aba de Segurança da sua conta do Google, deve baixar o app do Google Authenticator para o seu telefone e, no navegador, na conta do Google, deve configurar a autorização para utilizar o app do Authenticator. No final vai ser gerado um código no Authenticator para você colocar no site e pronto. É mais ou menos isso. Veja mais aqui, caso tenha alguma dúvida.

Até aqui nada de novo no fronte. O problema era quando era preciso trocar de telefone. Os dados e a autorização do app não eram levados nativamente para o telefone novo. Era preciso gerar um QR-code no aparelho antigo. Agora, imagine fazer isso se o seu telefone fosse roubado ou perdido ou afogado ou seriamente danificado. Lascou... Ou você fazia com QR-code ou fazia um a um os serviços, na unha!

Somente em 2023 (sim, esse ano!), a função para sincronizar em nuvem surgiu!

Para isso, se você ainda tiver o seu telefone antigo, faça isso:



E siga as instruções para exportar. 

(Isso aparece no telefone antigo)

Vai ser gerado um QR-Code para ser lido no app no telefone novo.

(E aqui é para inserir no aparelho novo)


Pronto, ao escolher "Ler Código QR" no telefone novo e apontar para o velho, tá resolvido. Esse era o jeito antigo.

Agora, existe uma nova opção, essa que citamos que começou em 2023 (em abril de 2023, para ser mais exato). Isso passa pela atualização do app no telefone velho.

       
(Versão antiga)                                   (Versão nova)


Repare que surgiu uma nuvem verde no canto superior direito no app atualizar. Essa nuvem indica que os códigos estão salvos na nuvem. Pronto!

Faça isso agora para se precaver de algum problema futuro com seus códigos caso perca o acesso ao telefone. Na necessidade de atualizar o aparelho, apenas instale o app e faça a sincronização na nuvem. Muito fácil.

É isso por enquanto!