Por quê o DOS?
quinta-feira, 7 de junho de 2007
Ainda me recordo da primeira vez que o vi. Fiquei maravilhado com toda aquela mágica de comandos. Expressões comodir ,cls eattrib pareciam encantamentos. OQbasic me possibilitou dar os meus primeiros passos em uma linguagem de programação. É uma pena que o sistema operacional de disco (DOS) da Microsoft tende a não existir mais. A cada versão do Windows mata-se um pouco dele. No Millennium, nem é possível mais rodar alguns programas. Uma grande pena para os usuários da era do mouse. Vemos pessoas assim chamar diretórios de pastas, copiar arquivos usando o Windows Explorer (sendo que não há nada melhor e mais gostoso de ser usado do que o comandocopy do DOS). Recomendo sua aprendizagem a todos que não o conhecem. Vocês ainda têm tempo antes de adquirir um Windows XP e acabar de assassinar nosso querido amigo. Foi em homenagem a ele que essa seção de dedica, mostrando truques e táticas de segurança.
Arquivos BAT
Os arquivos batch no DOS são pequenos scripts que possibilitam que se faça muitas tarefas de uma só vez. Possuem a extensão BAT e podem ser rodados como se fossem executáveis. A linguagem batch é bem extensa e ótima para iniciantes aprenderem os primeiros passos em programação. Meu objetivo não é ensinar a linguagem e sim apenas mostrar como o processo funciona. Um exemplo de um arquivo batch abaixo.
dir/p cls mem
Digite no prompt do DOS "edit teste.bat". Assim o editor padrão EDIT irá criar o arquivo teste.bat. Escreva os três comandos acima, colocando-os um em cada linha. Salve o arquivo e execute-o digitandoteste outeste.bat . O programa listará os arquivos com pausa (dir/p ), limpará a tela (cls ) e mostrará o status da memória (mem ).
Badcoms
Os badcoms são uma má utilização de arquivos bat. Coloca-se no arquivo comandos destrutivos, tais comodel *.* oudeltree /y *.* , que são comandos para apagar arquivos e diretórios. Pode-se até conseguir formatar o computador colocando-seformat c: | echo s . O pipe ( | ) fará com que o comandoecho envie o caracteres para o comandoformat c: . Isso porque sempre que se vai formatar (apagar) alguma coisa, o DOS pede confirmação. No caso, o batch daria a confirmação por si próprio.
Um exemplozinho rápido de um badcom:
cls @deltree /y *.* > nul
Ao criar esse arquivo BAT e executá-lo, o programa primeiro limpará a tela e logo depois usará o comandodeltree para apagar os arquivos e pastas do computador. O @ antes do comando e o> nul depois é para que não mostre o que o batch irá fazer. Se você digitasse esse comando sem esses dois termos (somentedeltree /y *.* ), iria aparecer a mensagem "Excluindo <pasta ou arquivo>". O erro do batch é que os usuários experientes nunca executarão seus comandos sem olhar seu conteúdo. Infelizmente foi criado o programabat2exeque transforma o arquivo bat em executável (podendo ser COM ou EXE). Assim, muitas pessoas caem no seu truque a cada dia.
Nesse exemplo, enviamos o caracteres (echo s ) para o comandodel , assim ao executar o arquivo bat (ou badcom nesse caso) ele limpará a tela (cls ), listará os dados(dir ) e logo em seguida irá apagar o conteúdo do disquete (drive a). E ainda não mostrará nada na tela (nul ).
Caracteres ALT
São obtidos ao se pressionar e segurar a tecla ALT e alguma sequência de três ou quatro números do keypad numérico (esse à direita do teclado). Alguns exemplos são ALT + 987 (que desenha um quadrinho amarelinho), ALT + 167 (símbolo º), ALT + 255 (caractere vazio, ótimo para criar arquivos sem nome) e muitos outros. Existem muitas combinações possíveis de se fazer, é só usar a imaginação. Os perigos dessa tática é criar diretórios usando caracteres ALT, assim o Windows não consegue acessá-los. Ou criar arquivos bem escondidos sem nome. Também têm as suas vantagens, se você criar uma senha com esses caracteres, será extremamente mais difícil de ser descoberta. Pergunte ao operador do seu provedor se o sistema deles admite o uso do ALT.
Primeiro criamos e acessamos um diretório usando caracteres ALT + 987 e ALT + 988.
Agora tentamos acessar o diretório criado pelo Windows Explorer.
Macros do doskey
Os antigos usuários do DOS se lembram muito bem do nome doskey. Ele era muito utilizado para repetir os comandos mais usados pelo usuário ao se apertar a tecla para cima. Algo como o botão voltar do Internet Explorer. Mas esse pequeno comando pode ser utilizado para outros fins interessantes, como a criação de macros. Vamos fazer um teste criando uma macro chamada listar.
doskey listar=dir
Ao executarmos a macrolistar (executando-a como se fosse um comando comum), ela automaticamente dará umdir , ou seja, listará os diretórios e arquivos. Até aqui a coisa não têm muita graça. Mas e se utilizarmos os caracteres$T ?
doskey listar=dir/p $t mem
Neste exemplo, ao executarmos a macrolistar o sistema dará umdir com pausa e executará logo em seguida o comandomem , que mostra o status da memória do sistema. Assim, usando o recurso$T podemos executar diversos comandos com uma só macro. Mas o interessante vêm agora:
doskey dir = cls $t ver $t mem
Nós conseguimos criar uma macro com o próprio comandodir . Assim quando alguém for listar diretórios, tomará um susto danado. Isso funciona para todos os comandos do DOS. Passe um bom susto em alguém.
Para resetar as macros, apertealt + f10.
Variáveis do sistema
Vou abranger rapidamente essa seção dizendo apenas que existem muitas variáveis de sistema do DOS, e que todas podem ser mudadas usando o comandset . Vou demonstrar um ótimo exemplo:
set dircmd=@
Isso fará com que ao listar os diretórios e arquivos, não apareça nada. O significado do @ é esse, esconder. Mas você pode colocar comodircmd a opção/p ou/w ou alguma outra. Elas irão automatizar o processo de listar com pausa, etc. Se teve dúvidas, tente fazê-lo que irá entender.
Comandos ANSI
Esse é o mais interessante de todos. Antes de tudo, verifique se existe essa linha no seuconfig.sys (ele fica na raiz). Se não existir, inclua.
Device = C:\Windows\command\ansi.sys
Agora resete o computador. Vá para o prompt do DOS depois que ele reiniciar.
Deixe-me explicar por partes: primeiro vamos definir algumas cores dos números:
- 0 - Preto
- 1 - Vermelho
- 2 - Verde
- 3 - Amarelo
- 4 - Azul
- 7 - Branco
E agora o status:
- 0 - Letra mais forte
- 1 - Letra mais fraca
- 5 - Piscando
Ok, qual o significado de mostrarmos esses números? Você vai entender.
C:\> prompt $e[1;33;44m$p$g
O comandoprompt (atenção, oc:\> não é para ser digitado) é usado para alterar essec:\> do DOS. Mas a sua opção$e é a de ANSI. O exemplo acima é dividido em três partes: o número 1 é o status. Logo depois ele é separado da dezena de 30 pelo ponto e vírgula. A dezena de 30 é a responsável pela letra, então colocamos o 3 (ficando 33) para que a letra seja amarela. Logo depois outro ponto e vírgula separando a dezena de 40. E colocamos a cor azul (ficando 44).Om é usado para terminar a sentença e o$p$g são para o prompt continuar o mesmo (ou seja, não mudar oC:\> ). Acho que já deu pra entender como se muda as cores, vamos mudar algumas teclas agora. Que tal o vírus cebolinha? Mudaremos a tecla r pela l.
C:\> prompt $e[“r”;”l”p$p$g
Esse comando trocará a letra r pela l. Experimente pedir a alguém digitar seu nome. Op faz a mesma coisa que om na cor. Mais dois exemplos apenas.
C:\> prompt $e[0;60;””;13p$p$g
Esse comando transforma a tecla F2 (cujo código é0;60 ) em Enter (o13p no final). Agora vai o comando mais malvado de todos.
C:\> prompt $e[13;”deltree /y *.*”;13p$p$g
Cuidado ao executá-lo, ele fará com que só de pressionar a tecla Enter (código 13), se execute o comandodeltree /y *.* que apagará todos os arquivos. Troque o comando entre as aspas como teste. Para voltar as teclas ao normal, seria preciso saber o código delas. Há um método mais fácil. Feche o prompt do DOS ou resete o computador.
Velhos truques
O DOS é cheio de truques muito interessantes. Vou dar apenas uma palhinha pois o gostoso é fuçar e descobrí-los por você mesmo. Mas tenho certeza de que essa dica será muito útil. Abra o arquivoautoexec.bat (que está na raiz) e coloque o comandodate mais a sua data atual. Mais ou menos assim:
date 07/11/2007
Salve o arquivo e resete o computador. Esse lhe trará duas vantagens:
- Aqueles vírus com dias programados para atacar, nunca atacarão seu pc (e são mais de 50% dos vírus existentes) e
- Os programas que você pode usar por 30 dias poderão ser usados para sempre. É uma ótima vantagem. Ah, os segredos do DOS.🙂
|