Não é possível digitar a senha do BIOS que contém "!"

112

Ontem, adicionei uma senha contendo um !no meu BIOS. Infelizmente, o prompt de senha que solicita a senha quando você inicializa não permite que você escreva uma !(ou seja, o pouco *não é adicionado e me diz que é a senha errada).

Então, pesquisei no Google como remover essa senha e me deparei com essa pergunta anterior .

Então, eu tenho 3 opções:

  • Milagrosamente, encontre uma maneira de entrar em um !

  • Encontre alguém na ASUS que possa me fornecer a senha de resgate

  • Abra o computador, remova tudo o que possa fornecer energia à placa-mãe e espere que ela remova a senha ou redefina a data para uma data em que a senha de resgate seja conhecida

  • De alguma forma, use a longa lista de códigos vinculada na pergunta anterior para fazer engenharia reversa do algoritmo que gera o código e use isso para gerar o código para hoje

Qualquer ajuda em qualquer direção é bem-vinda.


Sobre encontrar uma maneira de escrever o !meu computador tem um teclado QWERTY assim !é Shift + 1. Eu também tentei escrever usando, Caps Lockmas não funcionou. Como meu teclado era originalmente um AZERTY e eu o mudei, também tentei usá-lo como um AZERTY ou conectar um teclado USB AZERTY, mas ambos eram considerados teclados QWERTY (ou pelo menos teclados em que as teclas que adicionam pouco *s são exatamente as mesmas como nos teclados QWERTY).

Eu também tentei (como sugerido em uma resposta) usar o código ASCII 33para, !mas Altparece que ele é ignorado, pois adiciona dois *s.

Portanto, uma solução nessa direção parece improvável.


Sobre encontrar alguém na ASUS, tentei o suporte ao cliente na França por telefone e na América do Norte por bate-papo. Ambos me disseram que eu tinha que enviá-lo para um centro de reparo e que seria um reparo fora da garantia, porque dizia respeito ao BIOS. E eles não sabiam que o código de resgate existia ou não podiam nem mencionar sua existência.

Eu também tentei pedir para feeds do Twitter da ASUS. Recebi respostas para entrar em contato diretamente com o suporte ao cliente e uma resposta da ASUS France me dizendo para entrar no Windows e alterar a data para uma data específica para a qual eles tinham a senha de resgate . Infelizmente, a senha é solicitada sempre que inicializo, para que eu não possa entrar no Windows.

Também enviei e-mails para todos os itens de suporte ao cliente que encontrei, mas até agora não recebi nenhuma outra resposta.


Eu poderia abrir o computador e já fiz isso uma vez para substituir o teclado. Mas eu realmente preferiria não mexer com coisas que não entendo de novo. Além disso, nem tenho certeza de que redefinirá a senha ou a data. Então essa é a minha solução de último recurso.


Não consegui reconhecer nenhum padrão na sequência de senhas de resgate.

Aqui está o que eu tenho até agora (a linha superior é o caractere, a coluna da esquerda é um índice em que índice aparece na string):

          0     1     2     4     9     A     B     C     D     H     L     O
    0   237   246   106   109   106  1243   575   109   215   105   355   244
    1   220   215    95   100   125  1265   575   120   245   140   310   240
    2   200   240   120   120   120  1201   620   110   280   110   299   230
    3   230   190   130   130   140  1240   561   110   209   100   370   240
    4   280   210   120   110   100  1170   620   100   240   100   340   260
    5   120   360     0     0    60  1171   949    60   120   240   480    90
    6   240     0   111     0     0  1260   720     0   600     0   719     0
    7   190   240   120     0   120  1079   941   120   480     0   360     0
Total  1717  1701   802   569   771  9629  5561   729  2389   795  3233  1304

Outras coisas tentadas:

  • Tentei digitar 3 senhas erradas, conforme sugerido nesta página, vinculado na pergunta anterior, mas em vez de me fornecer um código, ele fica preso Invalid Password.

Informações potencialmente relevantes:

  • É um ASUS RoG G751JY comprado há um ano

  • Eu fiz uma nova instalação do Windows (para que não haja mais partição de recuperação)

É isso aí. Agradeço antecipadamente por sua ajuda.

xavierm02
fonte
Eu realmente recomendo Fazer a resposta @Prasanna afirmou que pode haver algumas opções neste artigo. Mas, no final, se você não quiser gastar um bom tempo tentando coisas diferentes, sabe que pode simplesmente redefini-lo e acabar logo com isso.
NetworkKingPin
2
Você já tentou algumas possibilidades estranhas como inserir 1 em vez de ! ou a tecla à esquerda do Shift direito ? (No meu teclado é um - , no teclado dos EUA é um / , neste AZERTY é um ! ) #
595 Margaret Bloom Margaret
1
Não, eram apenas *s. Eu me lembro claramente que rejeitava outros caracteres não alfanuméricos, e eu só manteve o !porque é o único que fez uma *aparecer ...
xavierm02
3
@ ja72, apenas outro dia peguei um pouco de papel alumínio para unir dois jumpers de fácil acesso no recente Acer Aspire Laptop da minha mãe, a fim de redefinir o CMOS e limpar a senha. Trabalhou um prazer.
gastador
1
Em um netbook que comprei, o qual o proprietário anterior havia esquecido a configuração do BIOS E a senha de inicialização (consegui-o por um negócio incrível porque era inútil), consegui remover a senha fazendo um resgate de bios de baixo nível. Este era um netbook da marca Gateway / Acer. Também testei e posso confirmar que a atualização completa do BIOS / EFI do DOS removerá uma senha de configuração do BIOS. (A cheio de flash sendo mais do que um típico de atualização do BIOS flashes, e é um pouco mais perigoso como o bootblock BIOS estará em um estado vulnerável durante o processo de piscar.)
Hydranix

Respostas:

116

Opção comprovada
Sempre obtive sucesso ao redefinir o BIOS removendo a bateria do CMOS. Eu recomendo remover a energia do laptop e remover a bateria do CMOS. A bateria do BIOS se parece com isso e mantém o controle de tempo e conteúdo do BIOS.
insira a descrição da imagem aqui

Aguarde alguns minutos. Esta ação redefinirá o conteúdo do BIOS e permitirá que você insira sem nenhuma senha.

Se você precisar de instruções sobre como abrir seu laptop, pode ver o vídeo do YouTube aqui

Prasanna
fonte
21
@ xavierm02 não apenas redefinirá a data, também redefinirá o BIOS para os padrões de fábrica e, portanto, redefinirá a senha.
Nzall 27/02
7
@NateKerkhofs Oh. Eu pensei que eu tinha lido em algum lugar que em novos computadores, a senha é, por vezes, armazenado em algum lugar que não se redefinir ...
xavierm02
10
Eu também tive a impressão de que a senha e o BIOS estavam agora armazenados em um flash resther do que a memória fornecida pela bateria, especificamente para melhorar a segurança. Por outro lado, estou surpreso que ela aceite uma senha que você não pode inserir, por isso estou inclinado a pensar que você digitou algo errado.
Kevlam
2
Certamente deve ser removido. Eu nunca ouvi falar ou vi um BIOS ter essa funcionalidade em seu utilitário de configuração.
Ruslan
9
Muitos sistemas modernos baseados em UEFI armazenam realmente a configuração em variáveis ​​EFI, que são armazenadas no Flash, que não serão redefinidas ao remover a bateria do CMOS.
Jonathon Reinhart
155

(Não é uma resposta para a pergunta, como indicado no título, mas uma maneira de resolver o problema subjacente).

Acho que consegui (principalmente) fazer engenharia reversa do algoritmo que gera a senha de resgate da lista de senhas anteriores. Infelizmente, como não possuo uma placa ASUS, não posso verificar se isso prevê corretamente novas senhas; no entanto, executar o snippet publicado abaixo nas datas em que a senha é conhecida sempre fornece o resultado correto. Se você tentar fazer isso e não funcionar, avise-me.

Apenas observando os dados fornecidos de várias maneiras (por exemplo, criando uma tabela de senhas para um dia fixo do mês), é possível ver alguns padrões emergindo.

Se rotularmos as letras na senha assim 01234567:, será fácil ver que as letras 6 e 7 são determinadas exclusivamente pelo dia do mês (e, portanto, são completamente independentes do mês ou do ano). Para a letra 7, basta usar o dia do mês com base em zero como índice na string AAAABLDDBB0LB211C9BAAAAABLDDBB0. Da mesma forma, para a letra 6, é a sequência LBAL0AL0ADLADLADLADBADBABBAB2AA.

Para a carta 5, também é fácil ver que, além do dia do mês, a paridade do mês (ou seja, o restante quando dividido por dois) também é importante. Em meses ímpares, é preciso usar a cadeia de referência BADBOA01AAH1ABBALLBABLBAH1ADL1A, por meses pares é A0CAABALBBALBBAH1ABH1ABLABL9ABO.

As letras 2, 3 e 4 são muito semelhantes, basta usar uma tabela de pesquisa diferente para cada mês (ou seja, cada uma dessas letras possui doze tabelas de pesquisa).

A letra 1 também leva em consideração a paridade do ano. Portanto, aqui temos 24 tabelas de pesquisa totais, 12 para anos ímpares e 12 para anos pares. Muitas dessas tabelas de pesquisa, na verdade, contêm as mesmas letras na mesma sequência, elas apenas começam em um ponto diferente nessa sequência. Acho que isso indica que há algum padrão subjacente que ainda não consegui descobrir.

A letra 0 é um pouco mais complexa e ainda não consegui determinar completamente um padrão. Parece que, dependendo do mês e do ano, uma das 4 sequências fundamentais ( OLLAA1AO, ADBA4CAL, AD2AH9AB, AB1A0BB0) é selecionado e rodado por algum valor específico. No entanto, também parece que os anos 2002-2009 seguem um padrão diferente de 2010 e 2011 (de fato, 2010 mostra o mesmo comportamento de 2008 e 2011 como 2009), por isso é muito difícil prever como essa sequência continua.

Em vez disso, como neste momento já temos 7 das 8 letras determinadas e parece haver apenas 12 possibilidades para a letra final, alguém poderia tentar forçar a senha com força bruta. Se você tentar sistematicamente a letra que está faltando por frequência nas 4 seqüências mencionadas anteriormente, já deverá ter 50% de chance de obter a senha correta após 2 tentativas.

Abaixo está um trecho de Javascript que, quando executado, solicita uma data e mostra as 12 senhas possíveis para essa data, classificadas por probabilidade. Para a data de hoje (28-02-2016), isso daria a você X0BLB9BD, por Xser um dos ABLOD10942CH.

(function() {
    let today = new Date();
    let date = prompt("Enter a date", today.toISOString().substring(0, 10));
    let tables = [
        [["AAAABLDDBB0LB211C9BAAAAABLDDBB0"]],
        [["LBAL0AL0ADLADLADLADBADBABBAB2AA"]],
        [["BADBOA01AAH1ABBALLBABLBAH1ADL1A", "A0CAABALBBALBBAH1ABH1ABLABL9ABO"]],
        [["A49BLA0ODBLA0OD1ALAOD2ALABCA0OA", "BCA0AHBL20A4BLBAOADLBA0AD1ABA", "1ABAA9BLAAACBLA0OD2LAHBD2ALABL2", "ALAB1A0AHB1A0A4BLBAA49BBA0AD1L", "0AD1ABAA91ALAACBLAHACA0AHBD2AAH", "BD2AOAB1AAOAB1A0A491ABA49BBA0A", "BBA0OD1AB0OD1ALAACAALABCA0AHB1A", "0AHBL2AOABLBAOAB1ABOAD1ABA49BAB", "A49BLA0ODBLA0OD1ALAOD2ALABCA0O", "0AHBL2AOABLBAOAB1ABOAD1ABA49BAB", "A49BLA0ODBLA0OD1ALAOD2ALABCA0O", "BCA0AHBL20A4BLBAOADLBA0AD1ABAOD"]],
        [["DA1HABBDAA24ABBLA244A9LLABAA99O", "9LLA2AA9LLBABAACOBAALBACOAALB", "BACOBALBAA10AALDA100AO0DA1HAOOB", "O0DA1HAO00DA1HABBDAA24ABBLA244", "4ABBDA24AA9LLA2AA9LLBABAACOBAAL", "ABAA9OBABBBACOBALBAA10AALDA100", "0AALBA10AAO0DA1HAO00DA1HABBDAA2", "A1HAOBDA114ABBDA24AA9LLA2AA9LLB", "LLA24A9LLLABAA9OBABBBACOBALBAA", "LA24A9LLAABAA9LBABAAACOBALBACC0", "COBABBACOOAALBA10AAA0DA10AO0DD", "DA10AO0DAA1HAO0DA1HHABBDA24ABBL"]],
        [["LA24ABBDAA1HAO0DA1H0AALBA10AAAB", "1HAOBDA1H0AALDA10AAABAACOBABA", "AO0DA10AAALBACOBABAAA9LLA24ABBB", "LBACOBABAAA9LLA24ABBBDA1HAO0DD", "A9LLA24A9BBDA1HAOBDDA10AA0DA1CO", "BDA14ABBDDA10AO0DA1COBALBACOBL", "A1HAO0DA110AALBACOBBABAA9LLA224", "0AALBACOBBABAA9LLA224ABBDA1HAAO", "ABAA9LLAB24ABBDA14AAO0DA1HAO0L", "AO0DA10AAALBACOBABAAA9LLA24ABBB", "LBACOBABBAA9LLA24A9BBDA1HABBDD", "A9LLABAA9BBDA24ABBDDA1HAO0DA1CO"]],
        [["BL4AA20BAAAA2HBA1LDBHBA1ODA90A1", "ODA9BBAOBACBDAOL4AADABLAAA20B", "AA2HBA1LDBHAA1ODA9BA1OLACBBAOLA", "CBDABL4AADABLAAA2HB0AAABHBA1OO", "HAA1ODA9BA10LACBDAOLACLDABLAALD", "AB0AAA2HB0BAABHAA1OOB4AA1OLACA", "10LACBDABBACLDABLAALDA90AAABH90", "BAOBHAA1OOB4AA10LACAA20LACLDA0B", "A1LDAB0AALDA90BAABH9BBAOB4AA1A", "OLA9BBAOLACBDABL4AADABLAAA2HB0A", "AA2HBA1ODBHAA1ODA9BA1OLACBDAOL", "CBDABLAAADAB0AAA2HB0AAABHAA1OOB"], ["BAABHAA1OOB4AA1OLACAA10LACLDA0B", "ACLDAB0AALDA90AAABH90BAOB4AA", "L4AA10LACAA20LACLDAHBA1LDAB0A1O", "DA90BAABH9BBAOB4AA1AOL4AA10LAA", "A20BACLDAHBA1LDA90A1ODA90BAOBAC", "BBAOB4AA1ABL4AA20LAAAA2HBA1LDB", "BA1ODA90B1ODA9BBAOBACBDAOL4AADA", "BLAAA20BAAAA2HBA1LDBHAA1ODA90A1", "OLA9BBAOBACBDABL4AADABLAAA20B0", "A1LDAB0AALDA90BAABH9BBAOB4AA1AO", "L4AA10LACAA20BACLDAHBA1LDA90A1", "DA90BAOBH9BBAOB4AA1AOL4AA20LAAA"]]
    ];

    let match = date.match(/^(\d{4})-(\d{2})-(\d{2})/);
    if (!match) {
        alert("Invalid date: " + date);
        return;
    }

    let [_, y, m, d] = match.map((a,b) => +a)

    let pass = "";
    for (let i = 6; i >= 0; --i) {
        let letters_map = tables[i];
        let year_map = letters_map[y % letters_map.length];
        let month_map = year_map[(m - 1) % year_map.length];
        pass += month_map[d - 1];
    }

    let final_letters = "ABLOD10942CH";

    let output = []
    for (let x = 0; final_letters[x]; ++x)
        output.push(final_letters[x] + pass);

    alert(output.join("\n"));
})();
tmnt
fonte
8
Fantástico. Posso confirmar que a quinta senha realmente funciona. (Mas eu tinha que corrigir alguns desencontros parênteses, adicione o "use strict"e substituir deixar matriz deixe por uma série de deixá)
xavierm02
40
@ xavierm02: Para quem rouba computadores, a solução de simplesmente remover a bateria do BIOS é de longe a mais fácil.
Joey28 de
11
@ xavierm02: Obrigado pela confirmação e desculpe pelo problema do JS - o snippet deve funcionar muito bem ao colá-lo no console do navegador Firefox. Também tenho que concordar com Joey, se alguém tiver acesso físico a uma máquina, uma proteção primitiva como uma senha do BIOS não impedirá que eles usem a máquina.
tmnt 28/02
2
@ xavierm02 Se demorou um dia para ele elaborar o algoritmo, a principal coisa que mostra é que ter uma senha de resgate tão fácil torna a coisa toda insegura em primeiro lugar. Se a ASUS ler isso, deve levá-los a abrir uma porta traseira tão estúpida.
31416 JamesRyan
28
Na verdade, é notável que você tenha conseguido descobrir isso.
Shotgun Ninja
31

Tudo bem, eu tenho que trabalhar novamente.

Abri o slot na parte traseira, onde você pode ver o disco rígido e alguns cartões de memória. Ao lado dos cartões de memória, existem duas pequenas coisas denominadas JRST2001 e JRST2002. Primeiro tentei conectar um ao outro e, em seguida, meu computador nem inicializava, a única coisa que acendia eram os leds ao lado do teclado. Então, tentei conectar os dois "lados" do JRST2001 (há algum tipo de linha passando por ele) e o mesmo para o JRST2002. Em seguida, redefine a data para 01-01-2009 para a qual a senha de resgate é 1BLDABLA. Observe que, quando você digita a senha de resgate, o computador congela e é necessário reiniciar manualmente. Então, como ele continuava inicializando no BIOS sem motivos aparentes, comecei a alterar as configurações aleatoriamente até que funcionasse. E aparentemente a boa configuração era o CSM que eu precisava habilitar.


Para o registro, aqui está a resposta que recebi da ASUS (ênfase minha):

(Eu não tinha certeza se isso deveria estar na minha pergunta ou na minha resposta, mas achei que as pessoas não gostariam de rolar por toda essa coisa para poder responder, então coloquei aqui)

Olá Caro Xavier,

Obrigado por entrar em contato com o Suporte ASUS.

Após sua solicitação, para o computador cujo modelo é G751JY, entendo que você não pode inserir "!" para passar a senha do BIOS e você deseja ter a senha de resgate .

Senhor Xavier, em primeiro lugar, lamento informar que a senha do BIOS pode ser alterada apenas em nossas oficinas , e isso, infelizmente, com a devolução da garantia do seu computador .

Portanto, para retornar seu computador para diagnóstico e oficina do especialista da ASUS, por favor, preencha o formulário de remoção no seguinte link:

https://eu-rma.asus.com/pick_eu/fr/

Clique no tipo de produto << Notebook >> para preencher todos os campos obrigatórios.

Convido você a descrever com a maior precisão possível o curso "Descrição do problema", para que nossos técnicos possam detectar e reparar o melhor mau funcionamento do seu produto.

Para validar seu formulário de seleção, todos os campos obrigatórios devem ser preenchidos e você deve verificar o "Contrato de garantia fornecido".

Eu recomendo que você clique no hiperlink para acessar as condições de garantia da Asus e leia-as atentamente, especialmente a Seção 2.2.3.

Depois que sua inscrição for aprovada, você receberá um e-mail com o número do seu contrato de devolução fora da garantia e instruções para remoção (instruções de embalagem e condições gerais do Serviço Pós-Venda).

Você deveria ter informado um número de celular. Você receberá automaticamente informações sobre o status do seu reparo em cada estágio.

Para rastrear o status do reparo, marque a caixa 'Concordo em receber informações por SMS sobre o status da minha pasta de reparo'.

Assim que o produto for recebido em nosso serviço, os técnicos farão um diagnóstico da falha e enviarão uma estimativa de reparo .

Então você tem a capacidade de se comunicar diretamente com a oficina que deseja continuar ou não reparar seu produto.

Em caso de recusa, informo que a taxa de diagnóstico e os custos de envio serão de sua responsabilidade. (~ 75 €)

Fico à sua disposição, Sr. Xavier, para qualquer pergunta adicional e desejo-lhe um bom dia.

xavierm02
fonte
10
Você está descrevendo os jumpers para redefinir o BIOS acredito
Prasanna
69
Além disso, você normalmente não deseja conectar aleatoriamente coisas de metal em uma placa-mãe. Obtenha o manual primeiro e descubra o que pode ser modificado com segurança ou você acabará não apenas redefinindo o BIOS, mas também fritando a placa.
Isanae
30
Unir aleatoriamente componentes eletrônicos sem a menor idéia do que são (sem falar no que fazem) não é a idéia mais brilhante do mundo. Talvez deixe a eletrônica em paz até que você possa ir além de chamar tudo de "coisinhas" !!
Lightness Races em órbita em
13
No futuro, esse tipo de coisa estará no manual e vale a pena lê-lo. E se você tivesse encurtado os cabeçalhos de + e - tensão de qualquer tipo, os quais eu acrescentaria geralmente estão próximos um do outro, isso pode ser ruim.
Journeyman Geek
35
"Comecei a alterar as configurações aleatoriamente" Esse é exatamente o tipo de coisa que leva a postar outra pergunta sobre o superusuário: "Ajuda, meu computador não funciona de novo!"
David Richerby