Arquivo para a Geral categoria

Documentário Hackers

Postado em Geral com as tags em Novembro 27, 2008 por theeviltux

Entrevista Richard Stallman 2002

Postado em Geral com as tags em Novembro 27, 2008 por theeviltux

Knockd

Postado em Geral com as tags , , , , , , , em Setembro 29, 2008 por theeviltux

Se você prefere não ter uma porta administrativa óbvia para o seu firewall Iptables – mas precisa de uma secreta – a ténica do port knocking é uma opção interessante que pode evitar ataques baseados em scripts. Para o administrador ambicioso e paranóico, a ferramenta mais adequada é o Knockd.

O pacote inclui dois componentes: o knock é o cliente que envia sinais de batida nas portas, enquanto o daemon knockd os recebe.

BATIDA

Para monitorar o processo, o cliente precisa somente dos números das portas nas quais deve bater e da opção -v:

knock -v 10.0.0.42 7000 8000 9000

A ferramenta responde com a saída na linha de comando.

O arquivo de configuração /etc/knockd.conf permite que o administrador do sistema especifique a ação que o daemon deve realizar ao receber uma batida válida.

EXEMPLO 1: /etc/knockd.conf

01 [options]

02 logfile=/var/log/knockd.log

03 [openSSH]

04 sequence = 7000.8000.9000

05 seq_timeout = 5

06 command = /sbin/iptables -A IPUT -s %IP -p tcp – - dport 22 -j ACCEPT

07 tcpflags = syn

08 [closeSSH]

09 sequence = 9000.8000.7000

10 seq_timeout = 5

11 command = /sbin/iptables -D INPUT -s %IP -p tcp –dport 22 -j ACCEPT

12 tcpflags = syn

CÓDIGO MORSE

Se reconhecer o sinal, o knockd abre a porta 22 para o IP correto, que passa seu próprio IP.

Ao se bater nas portas na seqüência errada, o daemon interrompe o acesso SSH. Há ainda uma outra opção – o knockd.conf – que é mais ou menos assim:

start_command = /usr/sbin/iptables -A INPUT -s %IP% -p tcp –syn –dport 22 -j ACCEPT

cmd_timeout = 10

stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp –syn –dport 22 -j ACCEPT

Depois de bater, o daemon inicia o start_command e espera um número de minutos especificados em cmd_timeout antes de executar o stop_command.

Administradores de sistema realmente paranóicos vão adorar a opção de configurar um arquivo com sequência de portas. Cada sequência expira após ser usada.

Mais informações: http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki

Apagamento de disco

Postado em Geral com as tags , , , , , em Setembro 29, 2008 por theeviltux

Se o seu objetivo é apagar todos os dados gravados no disco, ou seja, sobrescrever todos os arquivos e a estrutura de diretórios, e ainda apagar o registro de inicialização (MBR), isso engloba vários níveis de dados.

Em primeiro lugar, a parte dos dados estruturados, isto é, o sistema de arquivos. É nesse nível que ficam os arquivos e diretórios.

O segundo nível é a tabela de partições, que descreve a subdivisão do disco e engloba, em geral, os primeiros 512 bytes do disco. Esses 512 bytes têm anotações de início e fim das partições, além de informações sobre o propósito de cada partição (a chamada ID da partição) e uma marcação que dis se a partição é ou não inicializável. Essas informações são lidas pela BIOS durante a inicialização para descobrir onde está ou estão a(s) partição(ões) inicializável(is).

Quando você formata um sistema de arquivos com o comando mkfs correspondente, ele não apaga o conteúdo do sistema em questão, mas apenas cria nele uma raiz “vazia”. Com isso, programas como o Foremost são capazes de reconhecer assinaturas de sistemas de arquivos conhecidos e recuperar corretamente vários arquivos que não tenham sido danificados.

Para apagar os dados de uma partição, é preciso não somente formatá-la, mas sobrescrever todo o seu conteúdo. Na maioria dos casos, como novas instalações de um sistema, substituir todo o conteúdo por zeros é suficiente; porém, há métodos forenses capazes de recuperar o estado anterior a estes zeros. Portanto, é um pouco mais seguro usar em vez de zeros, dados aleatórios, e repetir o procedimento algumas vezes para eliminar rastrs de estados anteriores da mídia magnética. Mas note que, no caso de memórias Flash, isso não é necessário.

Vou dar alguns exemplos para a destruição completa dos dados, mas note que isso vai apagar todo o conteúdo do seu disco. Então, assegure-se de que esteja se referindo ao disco certo (/dev/sda é apenas um exemplo!).

Para destruir tabelas de partições e todos os metadados do sistema de arquivos, além de sobrescrever todos os dados do disco, pode-se usar um dos dois comandos abaixo (o segundo é mais rápido):

cat /dev/urandom > /dev/sda

dd if=/dev/urandom of=/dev/sda bs=1024k

O programa Wipe, por sua vez, deve gerar um resultado ainda mais confiável, pois grava dados aleatórios várias vezes no disco – porém, ele também demora bem mais.

Considerando-se que também é importante apagar o disco inteiro, e não apenas uma partição, é importante se lembrar dos primeiros 512 bytes do disco, pois contém a MBR. Apague-a, juntamente com a tabela de partições, com o comando:

dd if=/dev/zero of=/dev/sda bs=512 count=1

Além disso, como vamos usar números aleatórios, o processo de apagamento do disco inteiro pode ser intenso para a CPU, o que, somando ao grande tamanho dos discos rígidos atuais, certamente tornará o procedimento demorado.

Se o seu objetivo for manter as partições e livrar-se da MBR, recomendo ferramentas como o install-mbr ou ms-sys, capazes de produzir MBR’s vazias ou que iniciam a partir de uma única partição.

Um wallpaper diferente em cada área de trabalho

Postado em Geral com as tags , , , , em Setembro 29, 2008 por theeviltux

Vamos lá, pessoal: mais uma dica rápida para customização do seu desktop GNU/Linux.

Vou demonstrar como instalar um programa chamado Wallpapoz.

O que ele faz?

Com este aplicativo, você pode setar seu desktop para trocar automaticamente de wallpaper em um determinado período de tempo, dentro de uma lista de imagens que você mesmo definiu, ou (e o mais bacana) ele permite que você adicione um wallpaper diferente para cada área de trabalho sua!

Mãos à obra. Baixe o pacote aqui:

Abra um terminal e descompacte-o. Entre na pasta criada, logo depois:

$ tar -xzf wallpapoz-0.4.tar.gz
$ cd wallpapoz-0.4

Instale o programa (como root):

# python setup.py install

Pronto… ele mesmo vai checar as dependências. Faltou alguma? Pegue aqui:

Se usa Debian ou Ubuntu, os pacotes estão em seus repositórios, bastando usar o APT.

Bom, vamos ao que interessa…. O programa consiste em duas partes:

1) Wallpapoz: que é o GUI onde você vai configurar o programa, escolhendo as funções e wallpapers que deseja;

2) Daemon_wallpapoz: o programa propriamente dito, ou seja, aquele que vai rodar exatamente o que você configurou no GUI anterior.

Vamos lá? Chame-o pelo terminal:

$ wallpapoz

E vai ter este GUI na sua tela.

No meu caso, eu tenho 4 áreas de trabalho. Se eu quiser trocar o wallpaper da número 3, basta clicar nela (você vai ver o endereço da atual), e depois em “Add Files”. Indique o caminho para o papel de parede que eu quero e pronto. Basta clicar com o botão direito no antigo e deletá-lo.

Note que para as alterações entrarem em vigor, eu tenho que clicar em “Restart”!

Se você quiser trocar os papéis de parede em determinado intervalo de tempo, vá em “Preferences” e mande ver.

Gostou do desktop? Clique em “Save” antes de sair.

Para automatizar o processo após cada reboot, basta colocar o programa “daemon_wallpapoz” em Preferências –> Sessões –> Programas iniciais do menu no seu Gnome.

Vírus no Linux? Vida curta e difícil.

Postado em Geral com as tags , , , , em Setembro 29, 2008 por theeviltux

Por que é que vírus de Linux não é mais do que um assunto para rodas de ciberpapo?  Por que é que os vírus para Linux não nos afetam do jeito que os vírus para produtos Microsoft afetam, a usuários do Windows em particular, e aos cibernautas em geral?

Existem várias razões porque o assunto vírus-de-Linux é abobrinha. Quase todas elas já familiares para quem usa o kernel, quase todas elas ainda desprezadas por quem gosta de ser enganado (tagarelando abobrinhas tipo “é menos atacado porque é menos usado”). Mas há uma razão, muito importante, que estudiosos da evolução biológica podem apreciar. Antes, porém, devemos saber porque o Linux não dá mole para vírus.

Para que um vírus infecte um programa executável num sistema com kernel Linux, numa distro GNU/Linux (Debian, Slackware, RedHat, Suse, Ubuntu, Kurumin, Mandriva, etc.) por exemplo, o executável precisa estar em arquivo com permissão de escrita para o usuário que esteja ativando o vírus. Tal situação é incomum. Numa instalação desktop, via de regra os arquivos executáveis têm como dono (owner) o administrador do sistema (root), e rodam em processo de usuário comum. Ou seja, a partir de uma conta não-privilegiada.

Além do que, quanto menos experiente for o usuário, menos provável que tenha ele mesmo feito a instalação do executável, e portanto, que seja o owner do arquivo correspondente. Assim, os usuários de Linux que menos entendem dos perigos de infecção viral são os que têm pastas pessoais (diretório home) menos férteis para isso.

Prosseguindo, ainda que um vírus consiga infectar um programa executável, sua missão de proliferar-se esbarra em dificuldades das quais os limites nas permissões do dono do arquivo infectado são apenas o começo (para neófitos, em sistemas com um só usuário, esses limites podem desaparecer se a conta root for usada descuidadamente). As dificuldades continuam nos programas para conectividade, por serem esses no Linux construídos conservadoramente, sem os recursos de macros em alto nível que têm permitido, por exemplo, a recentes vírus de Windows propagarem-se tão rapidamente.

Esse conservadorismo não é uma característica do Linux, mas reflete diretamente importantes diferenças na base de usuários de plataformas livres e proprietárias. Diferenças na forma como essas bases atuam no processo de desenvolvimento, e na forma como a robustez e a popularidade dos programas é afetada por essa atuação, através dos respectivos modelos de licença e de negócio. Na forma, por exemplo, em que vacinas atuam. As lições aprendidas pela observação do que acontece no outro modelo servem, no modelo colaborativo, para vacinar não o software em si, mas o processo e a estratégia de desenvolvimento dos softwares livres, livres inclusive das estratégias de negócio de interessados que lhes sejam confiltantes.

Aplicativos e sistemas baseados em Linux são quase todos de código fonte aberto. Devido à quase totalidade desse mercado estar acostumado à disponibilidade do código-fonte, produtos distribuídos apenas em formato executável são ali raros, e encontram mais dificuldade para firmar presença. Isso tem dois efeitos no ecosistema viral, se considerarmos que a propagação ocorre em formato executável. Primeiro, programas com código fonte aberto são lugares difíceis para vírus se esconderem. Segundo, a (re)instalação por compilação do código-fonte corta completamente um dos principais vetores de propagação dos vírus.

Cada um desses obstáculos representa uma barreira significativa. Porém, é quando essas barreiras atuam em conjunto que a vida do vírus se complica. Um vírus de computador, da mesma forma que o biológico, precisa de uma taxa de reprodução maior do que a taxa de erradicação (morte), para se proliferar. Na plataforma Linux, cada um desses obstáculos reduz significativamente a taxa de reprodução. E se a taxa de reprodução cai abaixo do nível necessário para substituir a população erradicada, o vírus está condenado à extinção, nesse ambiente — mesmo antes das notícias alarmistas sobre o potencial de dano às vítimas.

A razão pela qual nunca vimos uma epidemia de verdade com vírus de Linux é simplesmente porque nenhum vírus conseguiu, até hoje, prosperar no ambiente que o Linux propicia. Os que já surgiram com esse alvo não são mais do que curiosidades técnicas (Staog foi o primeiro deles, e o único observado à solta, até 2005, foi o Bliss). A realidade é que não existe vírus viável para Linux.

Isso, é claro, não significa que nunca possa haver uma epidemia viral envolvendo o Linux. Por outro lado, isso significa que o vírus precisaria ser muito inovador e bem arquitetado para ter sucesso prosperando nesse ecosistema (do Linux), que é hostil para código furtivo. E também, que outros especialistas possam entender a questão de maneira diferente (para outra perspectiva sobre o tema, tente esse artigo).

Manpages em Português

Postado em Geral com as tags , , , , , , em Setembro 29, 2008 por theeviltux

Um outro recurso muito legal que o Linux nos disponibiliza e é de grande auxilio aos usuários são as man pages.

Só que as mesmas se encontram em inglês, mas como os usuários sempre contribuem, hoje já possui tradução para pt_BR de uma boa parte deste recurso.

Então para todos os usuários .deb deixo esta dica. Para instalar as man pages em português segue o comando:

# aptitude install manpages-pt
# aptitude install manpages-pt-dev

Plugins 3D para o Impress

Postado em Geral com as tags , , , , , , , em Setembro 29, 2008 por theeviltux

“Tá… esse papo de linux encheu e agora preciso impressionar minha chefia com um “powerpoint” bem maluco! Como fazê-lo?”

Não mande dinheiro ainda!! Com o Impress do OpenOffice 2.5, você cria apresentações com transições em 3D de seus slides. Assim seu chefe não vai perguntar o que está mostrando e sim COMO você fez isso?

Simplesmente abra o terminal e digite:

sudo apt-get install openoffice.org-ogltrans

E depois de instalado, você terá 14 novos efeitos de transição no OpenOffice Impress. Alguns efeitos se parecem com os do Compiz.

DIRECTX 9.c

Postado em Geral com as tags , , , , em Setembro 29, 2008 por theeviltux

Configurando o WINE
Este guia foi feito com uma configuração limpa e a funcionar numa resolução de 1024×768 num ambiente virtual.(Virtual Desktop)

$ winecfg
Isto é Opcional : No Wine Configuration -> Graphics -> Emulate a Virtual Desktop -> 1024×768
Depois da pasta ” .wine ” ter sido criada a ferramenta de configuração será iniciada e pode definir o ambiente virtual, e os gráficos que desejar. Este é um bom momento para definir o driver de audio na aba (TAB) de Audio.

De seguida é necessário configurar vários DLL’s nativos do Windows, mscoree.dll e streamci.dll para a pasta ~/.wine/drive_c/windows/system32, a partir de uma instalação do Windows ou fazendo download AQUI e AQUI, e configurar como nativos.

No Wine Configuration -> Libraries -> New override for librarie -> mscoree -> ADD
Repetir para o streamci
Também é preciso definir um grande número de DLL’s nativos do Windows para a instalação funcionar correctamente. Aqui está a lista completa dos dlls que precisam ser definidos.

[Software\\Wine\\DllOverrides] 1195992268
“d3d8″=”builtin”
“d3d9″=”builtin”
“d3dim”=”native”
“d3drm”=”native”
“d3dx8″=”native”
“d3dxof”=”native”
“dciman32″=”native”
“ddrawex”=”native”
“devenum”=”native”
“dinput”=”builtin”
“dinput8″=”builtin”
“dmband”=”native”
“dmcompos”=”native”
“dmime”=”native”
“dmloader”=”native”
“dmscript”=”native”
“dmstyle”=”native”
“dmsynth”=”native”
“dmusic”=”native”
“dmusic32″=”native”
“dnsapi”=”native”
“dplay”=”native”
“dplayx”=”native”
“dpnaddr”=”native”
“dpnet”=”native”
“dpnhpast”=”native”
“dpnlobby”=”native”
“dsound”=”builtin”
“dswave”=”native”
“dxdiagn”=”native”
“mscoree”=”native”
“msdmo”=”native”
“qcap”=”native”
“quartz”=”native”
“streamci”=”native”

Pode definir todos os dlls em winecfg sob a aba “Libraries” ou apenas definir o primeiro DLL “d3d8″, e em seguida, editar o ficheiro ~/.wine/user.reg, encontrar a secção DLL override [Software\\Wine\\DllOverrides] e copiar a lista acima de dlls para a mesma.

Instalar o DirectX
Download DirectX 9.0c de Novembro, Aqui .

O directx_nov2007_redist.exe irá extrair os arquivos para um directório da sua escolha.

# wine directx_nov2007_redist.exe

Agora é só escolher a pasta para onde querem instalar o DirectX, e correr o “DXSETUP.EXE” que está na pasta que escolheu.

# wine DXSETUP.EXE

Vai ter de executar a instalação uma segunda vez. Se não o fizer, ira receber um erro de rede e o dplay não ira funcionar correctamente.

Agora vamos correr o dxdiag.exe

# cd ~/.wine/drive_c/windows/system32
# wine dxdiag.exe

Podemos agora testar ddraw, ddraw 3D, D3D8, D3D9

Direct Sound test:

Agora é necessário instalar o gm.dls para testar o “Direct Music”, este driver vai para ~/.wine/drive_c/windows/system32/drivers

Irá notar em system32, que d3dx9_24.dll até d3dx9_36.dll estão agora instalados, estes realmente ajudam quando executa um jogo que precisam destes dlls.

Agora tem a opção de executar a maioria dos dlls em DirectX nativas ou incorporado, por exemplo, se tem um jogo que falha pelo Wine na lib quartz.dll, pode testar o jogo com os nativos Windows DLL para ver se isso vai melhorar a situação.

É de relembrar que, d3d8, d3d9 e ddraw, funciona apenas como incorporado, e na maioria dos casos, deve tentar usar incorporado dsound e dinput.

Gimp

Postado em Geral com as tags , , , , em Setembro 29, 2008 por theeviltux

Para quem gosta do GIMP mas não consegue ou não conhece todo o seu poder, o link abaixo são de vídeo aulas do próprio.
Estão em formato VCD, ou seja, podem ser assistidos por um DVD player compatível.
E também foram preparados em eMovix. Significa que vc nem precisa ter sistema operacional instalado no computador. Basta gravar em CD as imagens ISO e dar boot pelo CD.

http://wiki.cyaneus.net/cdteca/index.php?n=VideoAulas.EMovix-VCDGIMP

E pra quem quer mais recursos no seu GIMP, o link abaixo tem um top de 40 plugins bem legais.
Lembrando. Alguns dos plugins podem ser encontrados nos repositórios (via synaptic)

http://www.techzilo.com/gimp-plugins/