É com prazer que anuncio a possibilidade de integrar o facebook ao forum. Estamos sempre buscando formas de melhorar o site. Administração

    Entenda os arquivos .DLL do Windows

    Compartilhe
    avatar
    badchrono
    LV 9
    LV 9

    Mensagens : 334
    Data de inscrição : 09/10/2009

    Ficha do personagem
    RPG: 20

    Entenda os arquivos .DLL do Windows

    Mensagem por badchrono em Sex Abr 15, 2011 9:25 am

    Componentes importantes do funcionamento do sistema, DLLs são frequentemente fontes de dor de cabeça. Para que elas servem?

    Uma recente onda de ataques trouxe atenção aos arquivos DLL do Windows. Estes arquivos podem ser enigmáticos para muita gente, afinal, ao contrário de arquivos como DOC ou JPG, DLLs não estão geralmente associados a nenhum programa e não podem ser vistos e editados. Ainda assim, quem usa o Windows já se deparou mais de uma vez com eles: mensagens como “kernel32.dll não está respondendo” ou “um arquivo .dll necessário não foi encontrado” evidenciam a sua onipresença.

    E onipresença não é nenhum exagero: o Windows é composto por centenas desses arquivos, e sem eles, o sistema não funciona. DLLs são vitais para praticamente tudo: são eles os responsáveis por exibir as janelas dos programas, conectar o computador à internet, salvar e carregar arquivos… todos os aplicativos que rodam no Windows dependem deles para realizar as suas tarefas, de uma maneira ou de outra.

    E para entender como eles fazem todo esse trabalho, podemos traçar um paralelo com uma fábrica. Nesta fábrica chamada Windows, as DLLs seriam os oompa-loompas – lembra-se dos assistente do Willy Wonka?

    Para isso, digamos que você abre um aplicativo – o Word, por exemplo. Um programa como este seria uma seção da fábrica, no caso, a responsável por gerar documentos. Os funcionários do “setor de Word” são altamente especializados: eles geram as páginas, formatam as fontes, corrigem o texto e tudo mais que Willy Wonka gosta em seus documentos.

    Mas como muitos engenheiros, o Word não sabe fazer tarefas simples: por exemplo, ir buscar um arquivo no disco-rígido do computador. Neste caso, ele precisa pedir como uma criança mimada, para um empregado fazer isso. É aí que entra o arquivo DLL, que faz todo o trabalho sujo: a mando do aplicativo, ele abre a janela onde você seleciona o arquivo (já reparou como essas janelas são quase sempre iguais? Pois é porque se trata do mesmo oompa-loompa.), pega o documento que você indicar e entrega, de mão beijada, para quem pediu – no caso, o Word.

    Esta, e muitas outras janelas familiares no Windows, estão dentro do arquivo Comdlg32.dll. Mas não são só janelas que estão em DLLs: os programas também usam destes serviços para criar sons, se conectar à internet, salvar arquivos… praticamente tudo que o computador pode fazer é realizado por um DLL para os aplicativos.

    E um olhar minucioso mostra que a presença destes arquivos vai além. Ao se despir um programa como o Word descobrimos que ele também tem uma coleção de suas próprias DLLs. Muitas vezes, o arquivo executável (.EXE) faz pouco além de convocar as DLLs que efetivamente fazem todo o trabalho – quem não conhece um chefe assim?

    O próprio Windows é, em grande parte, uma coleção destes arquivos. Até porque a principal função de um sistema operacional é servir de base para que aplicações possam funcionar sem se preocupar com detalhes – exatamente da mesma maneira que Willy Wonka quer que o chocolate seja inspecionado sem ter que remar ele mesmo, os programadores querem que o trabalho sujo seja feito sem ele mesmo lidar com detalhes do sistema.

    Assim, estes arquivos ajudam a formar a base do sistema, permitindo que os aplicativos façam seu serviço especializado sem se preocupar com detalhes das tarefas rotineiras. Ah, e a origem do nome DLL? É abreviatura de “Dynamic-link library”, ou “biblioteca de ligação dinâmica”, uma expressão que remete à maneira como esses arquivos são vinculados ao aplicativo que lhes dará as ordens. Coisa de gerente, digo, programador.

    DLLs de renome

    kernel32.dll: Já pelo nome se vê sua importância, pois “kernel” é uma expressão que pode ser traduzida como “núcleo”. Isto indica a posição central no sistema deste DLL que realiza as tarefas mais importantes, como salvar arquivos e gerenciar o uso da memória RAM pelo computador.

    comdlg32.dll: Dlg é de diálogo. Quem usa o Windows, de fato, já conversou muito com este arquivo, que guarda as janelas padronizadas para salvar e abrir arquivos. E nem sempre a conversa é amigável: aquelas mensagens de erro também costumam ser entregues por ele.

    user32.dll: Este está a seu serviço. É ele quem cuida dos menus que aparecem na tela, do papel de parede e do ponteiro do mouse. E é ele quem segura a tesoura e a cola na hora do Ctrl-C Ctrl-V, pois é o responsável pela área de transferência do Windows.

    O ataque da injeção de DLL

    Em agosto de 2010, a Microsoft divulgou alerta quanto a uma nova forma de vírus, que se esconde na forma de DLLs. Este ataque é curioso, pois o usuário não precisa abrir o arquivo propriamente infectado – basta abrir outro arquivo, na mesma pasta, para ser infectado.

    Isto não é uma falha do Windows, mas sim de alguns programas que empregam DLLs em suas tarefas. Acontece que ao tentar abrir o arquivo, o programa pode procurar DLLs para ajudar na tarefa. Mas se ao convocar o ajudante o programa não verifica se está chamando no lugar certo um DLL “pirata” pode se passar pelo original e com isso conseguir acesso ao computador. Normalmente o DLL fica na mesma pasta do arquivo inocente, pois muitos programas procuram ali primeiro.

    Na internet, uma maneira comum de ser atacado é com serviços de WebDAV e SMB, que permitem o acesso de pastas na internet como se fossem do computador. Pendrives também podem provocar a infecção, mesmo que os arquivos dentro dele estejam abrindo normalmente, e o vírus nunca seja tocado pelo usuário. De novo, basta abrir um arquivo na mesma pasta.

    A correção do bug depende de cada programador, que deve alterar seu programa para evitar a confusão. Para amenizar a situação, a Microsoft liberou alguns programas que evitam o comportamento inadequado do software. Mas estas soluções, por interferir no funcionamento de outros aplicativos, são complexas e devem ser usadas somente por administradores de rede experientes.

    Fonte: http://admin.geek.com.br/posts/15738-entenda-os-arquivos-dll-do-windows

      Data/hora atual: Sex Maio 26, 2017 3:34 am