Author Archive

Consertando o Rails 3 no Snow Leopard

Dica rápida para quem está usando o Rails 3 no Snow Leopard, com o rvm.

Possivelmente, ao rodar rails s você irá se deparar com um erro parecido com esse:

➜  demo_app git:(master) ✗ rails s
/Users/ppvanzella/.rvm/gems/ruby-1.9.2-p0/gems/sqlite3-ruby-1.3.1/lib/sqlite3/sqlite3_native.bundle: [BUG] Segmentation fault
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
[1]    99112 abort      rails s

Isto acontece porque o rails está com o caminho para o system ruby hardcoded, e tenta executar então com o ruby 1.8.7-p174 que veio com o Snow Leopard, e não com o 1.9.2-p0 que você deve ter instalado pelo rvm.
Para arrumar, edite:

sudo mvim /usr/bin/rails

(vim porque sou marrento)
E troque a primeira linha, que começa com

#!/System/…

Por

#!/usr/bin/env ruby

Salve e seja feliz.

:wq

Media Centre com XBMC no Ubuntu em um ASRock ION330-HT

Eu sempre quis um Media Centre (ou Media Center se você falar inglês de caipira americano), desde os tempos remotos em que uma conexão de 300kbps era incrivelmente rápida e um filme inteiro em SD, nojentamente comprimido para caber em 700MB, podia ser baixado em apenas uma noite.

Por vários anos eu pesquisei, experimentei com programas diferentes, mas nunca montei uma máquina dedicada a este propósito até agora. Eis que me apareceu uma chance de ir ao Paraguai e de lá trazer hardware a um preço mais justo. Comecei então a pesquisar minhas alternativas.

Eu sabia que queria:

  • Vídeo em 1080p pela HDMI, decodificação em hardware
  • Áudio 5.1, de preferência pela HDMI também
  • Rodar Linux
  • Ter Gigabit Ethernet (mais sobre isso em breve)
  • Que fosse pequeno e silencioso
  • Que fosse relativamente barato
  • Que consumisse pouca energia

Há várias placas Micro-ITX no mercado que atendem alguns, senão todos esses requisitos, mas cases são caras e ainda usaria uma fonte de PC. Acabei optando pelo ASRock ION330-HT.

O meu é o preto

Paguei 350 dólares nele, mais 50% sobre o excedente dos 300 dólares, 375 dólares ao todo. E digo que vale cada centavo! Acabou sendo muito mais barato que montar uma máquina do zero, além de mais prático.

É uma máquina pequena, 19,5 x 7 x 18,6 cm e alimentada por uma fonte de 60W igual a de muitos netbooks. Some ao lado do PS3. Mesmo assim, tem um hardware incrivelmente bom: É um Atom Dual Core @1.6GHz com Hyper Threading, o sistema reporta 4 CPUs, além de uma NVidia ION, que dá conta de decodificar o vídeo.

Ele veio com 2GB de RAM e um HD de 320GB, mas troquei ambos. Coloquei 4GB de RAM e troquei o HD dele pelo de 60GB do PS3, já que não teria nenhum arquivo de mídia no Media Centre.

Todos os meus arquivos de mídia estão em um NAS, sobre o qual postarei assim que fizer uma case decente pra ele. Por enquanto ele está praticamente do avesso.

Mordor

One does not simply SSH into Mordor.

A instalação não foi muito difícil. Instalei o Ubuntu Server 10.04, adicionei o PPA do XBMC, instalei os drivers da NVidia (e a libvdpau pra decodificar x264 na GPU) e os drivers do controle remoto e praticamente tudo saiu funcionando perfeito. Para um detalhe ou outro, segui algumas dicas deste guia.

O melhor do XBMC é a possibilidade de customização. Há algumas interfaces simplesmente lindas para ele, como a Aeon, que é a que estou usando. Por ser aberta, há vários forks dela, então escolha a que achar melhor.

Uma das coisas mais legais desta skin é que ela pode mostrar a sinopse do filme, da série e do episódio:

Basta ter os metadados salvos junto do filme ou episódio de série. Para automatizar isso há o Ember Media Manager, que infelizmente só roda no Windows. O Sick-Beard faz isto automaticamente para os episódios baixados.

Outra vantagem de ter metadados completos é poder pesquisar por ator, diretor ou gênero. Mas como digitar com um controle remoto normal (e o que vem no ASRock não é especialmente bom), um mini teclado Bluetooth fica bem. Ainda não comprei o meu, mas farei em breve.

Ainda não está tudo pronto, não consigo rodar DVDs nele e ainda pretendo atualizar para o Dharma, a nova versão do XBMC, mas no geral estou muito feliz com ele. Não testei áudio 5.1 porque estou sem um reciever pra isso, então estou remuxando o áudio on-the-fly para estéreo e nunca vi a máquina engasgar.

[Mais fotos do Aeon]

[Página do ASRock ION330HT]

[Página do XBMC]

Se quiserem detalhes em qualquer parte do setup, peçam aí nos comentários que faço um post sobre isso. Dicas são especialmente bem-vindas.

Sobre a Quebra da Criptografia da GSM e Porque Devemos Nos Preocupar

Há uma linha tênue entre a paranóia e a total disconexão com a realidade. E eu sou míope.

Essa semana um pesquisador independente soltou o Kraken, programa para decriptar conversas na rede GSM, além de rainbow tables para fazê-lo em tempo hábil.

Quebrar a criptografia da GSM (chamada A5/1) não é tão novidade assim; há cerca de 10 anos papers são publicados sobre isso.

O problema agora é a facilidade de acesso aos meios de decriptar. Enquanto antes a quebra deveria ser feita offline (primeiro captura a conversa, depois decripta), agora ela pode ser feita com um delay mínimo, na casa dos poucos segundos e em equipamentos disponíveis para qualquer um.

Agora, eu não acredito que isso se torne tão popular como os ataques a wifi se tornaram. Não é todo mundo que tem seus 1400 dólares pra dar numa USRP, além de outro tanto para investir num computador capaz de rodar o Kraken, que precisa de um quad-core com 3GB de RAM no mínimo.

USRP, para quem nunca ouviu falar, significa Universal Software Radio Peripheral, e pode ser utilizado para um número de fins legítimos. É um dos meus sonhos de consumo, por sinal.

O projeto OpenBTS, por exemplo, utiliza USRPs junto do Asterisk para criar uma rede GSM local. A legalidade de fazê-lo no Brasil é uma incógnita pra mim.

O problema reside neste monte de governozinhos ditatoriais (inclusive aqueles que pretendem ser no futuro) que tem dinheiro pra isso. Não sei quanto a vocês, mas eu não confio no governo.

“Quem não deve, não teme”, você me diz, com toda a sabedoria de quem repete um bordão de sua avó. Pois é, mas devendo, temendo ou não, eu simplesmente não quero ter minhas conversas ouvidas. Ninguém mais tem que saber que liguei para minha mãe e pedi bolacha Trakinas além de mim e ela.

Este pensamento leva a um conformismo abre margem para mais e mais invasões de privacidade e mais controle sobre nós. Não estou aqui advogando a anarquia e a paranóia, mas sem uma boa dose de rebelião e um pé atrás nós não sairemos do lugar, ou, pior ainda, regrediremos.

Há um bom motivo para ser necessário autorização para grampear telefones e quebrar sigilos bancários: controlar o abuso do poder. Claro que já existia meios de se grampear telefones e fazer escutas na GSM há alguns anos, mas pelo menos era mais difícil. Com a facilidade de se fazer isto no fundo do quintal temos também a facilidade em fazê-lo ilegalmente.

E mesmo que nosso governo fosse totalmente confiável e vivamos num mundo utópico onde ninguém seria caçado por motivos puramente políticos, ainda temos que nos preocupar com o crime organizado, com a quadrilha planejando seqüestrar o gerente do banco e tendo agora mais uma ferramenta à disposição.

Infelizmente ficaremos nesta situação por um bom tempo, já que é inviável trocar o algoritmo de criptografia de todas as redes GSM do mundo. Seriam 4.3 milhões de aparelhos que parariam de funcionar. Uma implementação nova seria lenta e cara, e sem pressão dos consumidores as empresas de telecom não farão nada.

Mesmo com pressão, aliás, porque há países onde se implementa o A5/2, um algoritmo deliberadamente mais fraco, ou ainda nem há criptografia alguma. Tudo isso por leis locais e pressão de governos para facilitar a vida deles aos espionar os cidadãos. Um algoritmo mais forte nos próximos anos é tão provável quanto o Papai Noel comer Coelho da Páscoa Assado para comemorar um Sabbath.

Script para converter de FLAC para ALAC

Edit: Me tapei de nojo e escrevi em bash. Rola aí pra baixo pra pegar o código que funciona e mantém as tags (eu espero)

Com a USENET, conexão boa e um NAS recém montado (mais sobre isso num post futuro), resolvi refazer minha coleção musical toda em Lossless. O maior problema é que eu ouço música majoritariamente no meu iPod ou no iTunes no macbook, e eles não tocam FLAC, que é o padrão para músicas lossless.

O jeito é converter pra Apple Lossless (ALAC). Claro que eu podia fazer isso na mão, copiar os arquivos do NAS, rodar o Max neles, copiar de volta pro NAS, etc. Mas, não, eu resolvi seguir a risca a primeira lei dos programadores, que diz que

Se uma tarefa demanda um tempo x, um programador gastará um tempo ex para escrever um programa que executará a tarefa em um tempo 1/x

E foi o que eu fiz.

Sem mais, baixem ele aí:

http://gist.github.com/423161

Vou deixar o link do github mesmo para o caso de eu atualizar o script.

Dá pra executar ele manualmente, passando o endereço completo da pasta que contém FLACs, ou colocá-lo na pasta de scripts do SABnzbd+ e rodá-lo automaticamente após cada download de música.

Ainda deve ter uma série de bugs, não falha com tanta graça quanto deveria, mas, hey, funciona.

Precisa do ffmpeg compilado com suporte a ALAC, ruby (escrevi no 1.8.7) com a gem MediaInfo instalada, além do próprio MediaInfo.

edit: O ffmpeg não vem com suporte a ALAC no FreeBSD.

Se tiverem sugestões, nada melhor que enfiar a mão no código. Tá no github pra isso, seus vagabundos!

NOVO CÓDIGO:

flac2alac.sh

#!/bin/sh
ffmpeg  -i “$1″ -acodec alac “`basename “$1″ .flac`.m4a” \
-metadata title=\”"$(metaflac –show-tag=TITLE “$1″ | sed ‘s/title=//g’)”\” \
-metadata author=\”"$(metaflac –show-tag=ARTIST “$1″ | sed ‘s/artist=//g’)”\” \
-metadata album=\”"$(metaflac –show-tag=ALBUM “$1″ | sed ‘s/album=//g’)”\” \
-metadata year=\”"$(metaflac –show-tag=DATE “$1″ | sed ‘s/date=//g’)”\” \
-metadata track=\”"$(metaflac –show-tag=TRACKNUMBER “$1″ | sed ‘s/tracknumber=//g’)”\” \
-metadata genre=\”"$(metaflac –show-tag=GENRE “$1″ | sed ‘s/genre=//g’)”\”

process_music_dir.sh

#!bin/sh
cd “$1″
find “$1″ -type f | grep .flac | sed -e “s,[^.],\’&,” -e “s,\$,\’,” | xargs -I {} sh /root/SABScripts/flac2alac.sh {}
find “$1″ -type f | grep .m4a  | sed -e “s,[^.],\’&,” -e “s,\$,\’,” | xargs -I {} mv {} “/mnt/Media/iTunes/Automatically Add to iTunes”
cd -
rm -rf “$1″

O que tu farás sábado à noite?

Venha e conheça algumas das figuras mais icônicas da internet brasileira!

O Pequeno (Grande) Manual da USENET

Decidi, para o bem de vocês, quebrar as Regras 1 e 2 e explicar a USENET e tudo o que se pode fazer com ela. Bem, quase tudo.

First things first,

O que é a USENET?

Pirate

Here be pirates

Bem, amiguinhos, vocês que são noobs e acham que não havia computadores antes do Google provavelmente não sabem que havia redes antes da Internet. E é lá em 1979 que nossa história começa.

Na época, redes eram lentas, grandes mainframes dominavam, homens eram homens e programavam em ASM e Pokémon ainda era um delírio na mente de um garoto japonês. O conceito de email como é conhecido hoje não existia, pois não havia domínios da internet, logo, listas de discussão também não existiam.

Eis que alguém resolveu criar um sistema para tal. Uma pessoa postaria uma mensagem em um ou mais newsgroups e quem quisesse ler e responder tinha livre acesso para tal, desde que pudesse se conectar a um servidor de relay. Os servidores eram interconectados, permitindo que, embora nem todos tivessem todos os artigos de todos os newsgroups, a experiência fosse transparente para o usuário final. Tão transparente quanto uma conexão de 8 bauds permitia, isso é.

Estrutura

Como que se identificam os newsgroups, então?, você me pergunta. Pelo nome, oras. Eles são divididos em uma árvore sem um nodo principal (puristas vão dizer que são diversas árvores, mas eu os mando à merda). Por exemplo, todos as listas sobre ciências deveriam estar no “sci.”. Por exemplo, discussões sobre matemática acontecem no sci.math.

Eis que, um belo dia, alguém resolveu que queria discutir sobre algo totalmente aleatório. Aí surgiu a árvore alt, a mais interessante para vários propósitos.

BINÁRIOS!!!111oneoneone

Binário

Binário, né?

No jargão, um binário é qualquer ‘blob’ (definir jargão com jargão: eu pratico). Uma imagem, uma música, um filme. Arquivos que não são puro texto. E eles ficam na árvore alt.binaries.

Mas a USENET é uma rede antiga, não foi projetada para essas coisas. Servidores têm de replicar conteúdo, mas se alguns bits se perderem numa mensagem de texto não há muito problema. A mensagem ainda está lá. Com binários a história já é outra.

Alternativas foram criadas e vocês usam a maioria delas hoje em dia e nem sabem porque diabos. Para prevenir maiores perdas, divide-se o arquivo em várias partes, de modo a facilitar a recuperação, e cria-se arquivos de paridade.

Sabe quando tu baixa aquele torrent e vem 435 .rar, um .svf e um .par2? Aquele arquivo veio direto da USENET e foi baixado de maneira old school. Já chego lá.

A idéia é a seguinte: o servidor A vai replicar o conteúdo do servidor B, mas o protocolo não é muito tolerante a falhas (ou tolerante demais, dependendo do ponto de vista), e partes dos artigos podem se perder no meio do caminho. Melhor que se perca um arquivo de 10MB do que um de 700, certo? Mais fácil de baixar denovo o arquivo problemático (que pode ter sido re-replicado). Mais fácil ainda é consertar dito arquivo, e para isto serve o par2. Através de um algoritmo macabro ou simples magia negra, ele consegue, muitas vezes, descobrir o quê há de errado com um arquivo rar e recuperá-lo. Coisa linda.

Mas fazer isso na mão é terrível. Aí que entra os newsreaders modernos.

Sendo moderninho

Hipster

Por favor, não seja moderninho ASSIM

Vamos começar um pouco antes. Imagine você que há quatrocentas pessoas enviando arquivos para um certo grupo ao mesmo tempo. As partes chegam entrelaçadas, um pedaço de um arquivo, depois um de outro, depois talvez uns 3 de outro, e por aí vai. Catar as partes de um arquivo grande seria infernal.

Para isto criou-se um padrão, o NZB. Ele é um arquivinho, análogo a um .torrent, que é gerado após o envio dos arquivos para um newsgroup apontando a localização de todas as partes dele. Isso permite também a indexação destes mesmos arquivos por sites, exatamente igual aos trackers de torrent.

Um cliente moderno vai abrir este .nzb e baixar automaticamente todas as partes do arquivo, verificar se precisam ser reparadas e reparar caso seja necessário, extrair tudo e te dizer “Tá tudo pronto, chefinho, quer um café?”.

E há vários clientes que suportam este padrão e vários sites que indexam. Dois clientes chamam mais a atenção, o SABnzbd+ e o Unison.

O SABnzbd+ é escrito em python e roda até em uma batata-doce, se você pedir com jeitinho. Ele é feio, só tem uma interface web, mas faz o que se propõe e o faz muito bem.

SABnzbd+

Isto pode ou não ser meu.

Este aqui está rodando no Ubuntu, mas controlo pela rede se preciso, ou até mesmo pelo iPhone.

Ele pode ser baixado AQUI e é totalmente grátis.

Ele não serve para navegar na USENET, somente para baixar de lá. Para isto é necessário um site indexador. Já chego lá.

A instalação em cada sistema é diferente, não vou detalhar aqui, mas o site é bem bom, tem uma wiki detalhada. Dê uma conferida.

A outra opção é o Unison, da Panic!

Este é pago, custa 30 dólares e só funciona no OSX, mas é o cliente mais elegante para se navegar pela USENET. Não só de binários viverá o homem, já dizia o poeta (ou seria o profeta?).

Unison

Veja bem de quem é a mensagem

A USENET ainda é utilizada para seu propósito original. Aí em cima, por exemplo, eu estou lendo a linux.kernel, a lista de discussão oficial do desenvolvimento do kernel do linux.

Alternativa de pobre: Google Groups.

O Google indexa muito da USENET e o faz de graça, mas a árvore alt. não está lá. Nada de pirataria desse jeito, mas os grupos de texto podem ser acessados, em sua marioria.

Servidores

Pra acessar essa maravilha toda, tu vais precisar de acesso a um servidor, e isto não é de graça. Sim, amiguinhos, a USENET é paga. Alguém tem que manter estes servidores e o único jeito de ganhar dinheiro é cobrando diretamente dos usuários.

Por sorte, não é caro. Eu recomendo a Supernews, que custa uns 10 dólares por mês e aceita Paypal sem compromisso nenhum.

Outras opções são a Giganews, que tem a maior retenção de todas mas é uma das mais caras e a Blocknews, que vende por tráfego. Caso esteja em dúvida, com a Blocknews dá para comprar 5GB por $2,75 e ver se gosta da idéia. Mas eu iria direto para a Supernews.

Há algumas coisas a se manter em mente quanto a esses servidores: Retenção, Número máximo de Conexões e suporte a SSL.

Retenção é a idade de um post quando ele é deletado do servidor. Com a quantidade de informações postadas na USENET diariamente, é impossível manter tudo, então após alguns meses o post é deletado. A média está em uns 400 dias, o que é bem bom. Muitas coisas são repostadas com freqüência, então não é exatamente um problema mesmo para coisas mais velhas.

Número máximo de conexões é exatamente isso, quantas conexões simultâneas do mesmo IP são permitidas. Não sei de nenhum servidor que permite conexões de mais de um IP, então nada de compartilhar contas. Mais conexões simultâneas = mais chances de baixar na velocidade máxima da sua conexão.

Suporte a SSL é a capacidade do servidor de manter conexões encriptadas. Provedores de internet podem ser malvados e reduzir a velocidade do teu acesso à USENET do mesmo jeito que fazem com torrent. Se tu encriptares o tráfego, eles não vão saber o quê tu tá fazendo e não vão te capar a conexão.

Na Supernews eu já atingi 11MBps (isto é onze megabytes por segundo, também conhecido como oitenta e oito megabits por segundo, numa conexão que obviamente não é a da minha casa) com 30 conexões simultâneas e SSL.

Segurança

Eu sou muito paranóico, então acredite em mim que eu pesquisei demais e posso te dizer com tranqüilidade que é seguro baixar da USENET. O único jeito de descobrirem o quê tu tá baixando é se tu contares (desde que uses SSL). Vai firme, os servidores não mantém logs. Agora, se você começar a enviar conteúdo…

Sites indexadores

A USENET é um lugar enorme e selvagem. Acredite em mim. Procurar qualquer coisa lá é enlouquecedor. Para resolver isto há sites que indexam o conteúdo e geram nzbs prontos para serem adicionados ao seu cliente. Os melhores são:

TVNZB.com: Só séries de TV, anda com o servidor meio instável. Grátis.

NZBs(dot)ORG: De tudo, mal categorizado, mas com uma engine de busca bem decente. Requer registro, mas é grátis.

Newzbin: O antigo gigante que recentemente se meteu em brigas contra a MPAA e foi obrigado a desativar as categorias de TV e filmes, mas as outras continuam ativas. Costumava ser invite-only e pago, ainda por cima, agora está aberto e grátis.

NZBMatrix: Feio que dói, mas o melhor atualmente. Custa algumas libras para cadastrar, mas só se paga uma vez.

Sou preguiçoso, quero tudo automático

Boa notícia é que eu também sou e já testei praticamente todas as maneiras de automatizar minha vida.

Quem acompanha muitas séries de TV sabe como é complicado baixar todas elas, ficar lembrando do dia que tem episódio novo, se tem essa semana ou não. Mas há uma solução!

O Sick-Beard é outra dessas maravilhas escritas em Python que roda até em uma banana, com vaselina suficiente.

Sick-Beard

Não me pergunte o porquê do nome.

Novamente, a instalação depende de cada sistema, então dê uma olhada na Wiki deles.

Esta maravilha faz tudo pra ti: consulta o TVRage para descobrir quando tem episódio novo, procura nos indexadores e bota a baixar no SABnzbd+ pra ti. Tem como fazer ele funcionar com outros clientes, mas ele brilha mesmo com o SAB.

Se tu quiseres, ele baixa os episódios antigos da série, move os arquivos, renomeia e organiza, adiciona sinopse, thumbnail do episódio e pôster da temporada e avisa o XBMC ou o Boxee que tem episódio novo.

Além disso, ele pode baixar o episódio no primeiro formato que aparecer, e, caso não seja 720p, baixar a versão 720p assim que ela estiver disponível e substituir na coleção.

Sensacional.

Muito bonito, mas qual a vantagem disso sobre torrent, ou por que devo pagar se torrents são grátis?

As coisas saem primeiro na USENET, já que os grupos que lançam no torrent precisam distribuir entre si os arquivos primeiro para ter seeds. Além disso, tu não estás preso ao inferno de arquivos sem seeds, a velocidade é constante e, provavelmente o máximo da tua conexão.

E já falei que as coisas saem antes lá? Quase toda esta temporada de Chuck estava aparecendo na USENET cerca de 12 horas antes de passar na TV americana. Vazava de dentro da emissora, suponho, e em 720p.

Vai lá, instala o SABnzbd+ e assina um mês ou dois da Supernews. Tu nunca mais vais querer usar torrent na vida.

E, não, não tenho medo de falar sobre isso, eu acabo comprando os DVDs ou BluRays dos filmes e séries que baixo, minha consciência está tão limpa quanto os esgotos de Paris. OH WAIT-

Passwords 101: Salgando as senhas

Você sabe como é, são senhas para tudo. Twitter, gmail, etc, etc, etc. Como você gerencia essas senhas?

Muito provavelmente você não consegue lembrar de oitocentas senhas diferentes, todas Crypto-Strenght, então você tem categorias de senhas, ou, pior, uma senha para tudo.

CadeadoParada para definição:

Crypto-Strenght é relativo a uma senha que é considerada segura pelos padrões criptográficos para proteger chaves de dados confidenciais. Normalmente são pelo menos 64 caracteres ASCII aleatórios, algo proibitivamente lento para ser quebrado por força bruta.

Não sei quanto a vocês, mas eu não consigo me lembrar sequer de uma senha dessas.

Como rapidamente torna-se inviável manter uma senha para cada serviço, cai-se em duas alternativas: repetir senhas ou usar um gerenciador de senhas, como o KeePass ou o 1Password. Nesses gerenciadores você cadastra as senhas num banco de dados encriptado e usa uma senha-mestra para acessar o banco. Pessoalmente eu não usaria isso para guardar o número do meu sapato.

O que nos deixa com a outra opção: repetir senhas.

A princípio não parece uma idéia tão ruim. Se a senha for boa, não será descoberta, certo? Errado. Dificilmente alguém se preocupará em quebrar uma senha online por força bruta ou até mesmo por um ataque de dicionário. A menos que alguém queria a tua conta em específico, sabe-se lá porque, não é prático tentar um ataque contra uma conta em um serviço.

O que acontecerá em 95% dos casos (caso você seja uma pessoa inteligente que não caia em Phishings) é que um sistema provar-se-á vulnerável e seu banco de dados exposto.

Se quem projetou o sistema tem um par de neurônios funcionais, não armazenou as senhas no banco de dados, mas sim um hash delas.

Mais uma definição:

Hash é um algorítmo que gera uma saída padronizada em tamanho e formato para uma entrada, sem que duas saídas sejam iguais para duas entradas diferentes ou que uma entrada possa gerar mais de uma saída. É uma relação bijetora, para quem gosta de matemática.

Este hash não pode ser quebrado, é um caminho somente de ida. Quando você se loga no sistema, é computado o hash da senha fornecida. Caso seja igual ao hash guardado, sua senha está certa e Bob é teu tio.

Mas há um problema aí. Os algoritmos de hash são bastante conhecidos e há muitas rainbow tables disponíveis, o que facilita tremendamente que senhas sejam descobertas, mesmo que somente tendo os hashes.

ARCOIRUDefinição!:

Uma rainbow table é uma tabela que relaciona strings com seus hashes, fazendo assim uma troca de processamento por memória. Como uma string sempre gerará a mesma saída de hash, milhões dessas são computadas e salvas em simples arquivos de texto. Pesquisa num arquivo, principalmente se ordenado, é tremendamente mais rápida que o cálculo de um hash.

Isto viabiliza força bruta ou ataques de dicionário novamente. Pior ainda, se a sua senha é realmente comum, uma simples busca no Google pelo hash poderá retornar a senha original. Faça o teste, procure por 286755fad04869ca523320acce0dc6a4 no Google. Vai lá, eu te espero.

286755fad04869ca523320acce0dc6a4 é um hash MD5(1), o mais utilizado para guardar senhas em bancos de dados. Este hash corresponde à string “password“.

Então você não está a salvo, é possível que sua senha seja comprometida. Talvez você não se importe que a sua conta no Fórum de Jardinagem e Criação de Orquídeas seja comprometida, mas quando ela é a mesma do seu gmail, do seu paypal… As coisas ficam mais feias. E prepare-se para o pior, pois sempre há um lugarzinho no mercado negro para listas de logins e senhas que serão testadas de maneira automatizada contra serviços conhecidos.

Então, o que pode ser feito? Simples: salgue sua senha.

SaleiroO que é salgar a senha?, você avidamente me pergunta. E, como me é característico, te respondo:

Salgar a senha ou no original Password Salting é um processo que altera a senha de maneira previsível, de modo a frustrar tentativas de pesquisa em rainbow tables.

Não ficou claro? Vou dar um exemplo melhor. Veja isto:

➜  ~  echo “password” | md5
286755fad04869ca523320acce0dc6a4
➜  ~  echo “password:ebay” | md5
e04874b8857c401265f6b0592a469c21

Estamos aqui gerando o hash MD5(1) de duas strings, password e password:ebay. A segunda é a nossa senha salgada. Nós adicionamos um sal à senha original. Não entendeu o propósito? Procure pelo segundo hash (e04874b8857c401265f6b0592a469c21) no Google.
Nós transformamos uma senha péssima em algo ligeiramente aceitável ao concatenar uma nova string (:ebay) à original.

Seria impossível gerar rainbow tables que contivessem senhas com sal, principalmente porque onde e como o sal é colocado na senha é totalmente arbitrário, e o único modo de quebrar esta senha (a menos que haja uma falha no algoritmo do MD5) é por pura força bruta. Se alguém quebrar a tua senha deste jeito ele provavelmente merece acesso às tuas coisas.

É fácil aplicar esta técnica à sua vida digital de maneira quase não intrusiva. Digamos que você tenha categorias de senhas: uma senha para os sites de pouca importância, uma para os sites mais usados e uma para as coisas realmente importantes. Ao invés de simplesmente repetir essas senhas entre sites, adicione a elas, por exemplo, o nome do site a qual elas pertencem. Por exemplo:
Sua senha de pouca importância é “mamaemeama”. No Fórum de Jardinagem e Criação de Orquídeas ela será “mamaemeama:fdjecdo”. No cadastro da promoção do Domingão do Faustão ela será “mamaemeama:pDdF”.

Crie um padrão para seus sais de modo a serem automaticamente lembrados para cada site.

Tendo categorias, também pode ser interessante colocar o sal em outros lugares da senha. Sua senha de média importância pode ser “EdgarAlanP0e”, porque você foi um adolescente trevoso. Com sal, talvez ela seja “Edgar#Twitter#AlanP0e”.

Então é isso, crianças, botem sal nessas senhas!

[Sem revisão]
[Fontes: Eu, eu mesmo e tudo o que sei.]

Instalando a versão upstream do Kismet no Ubuntu

Seguindo a regra de postar absolutamente qualquer coisa aqui, estas são as instruções de como compilar a versão mais nova do Kismet no Ubuntu.

Porque compilar o Kismet? Porque a versão que vem com o Ubuntu é muito velha e a versão mais nova tem MUITAS features interessantes.

Vamos ao que interessa. Baixe o tarball em http://www.kismetwireless.net/ e descompacte-o. Se você não sabe fazer isso, aqui não é teu lugar.

Pra compilar no ubuntu você precisa de dois pacotes além do build-essential: O libncurses-dev e o libnl-dev. O Kismet te avisa no ./configure qual pacote está faltando.

Compilar é fácil, make dep, make, sudo make install. Mas os plugins não compilam, soltando um

PLUGIN: plugin-autowep/
/bin/sh: pushd: not found
(…)
/bin/sh: popd: not found

PLUGIN: plugin-autowep//bin/sh: pushd: not foundmake[1]: Entering directory `/OMITIDO’make[1]: Nothing to be done for `all’.make[1]: Leaving directory `/OMITIDO’/bin/sh: popd: not found

Isso é fácil de arrumar. Dê um:

sed -i ‘s/\/bin\/sh/\/bin\/bash/g’ *.*

Em cada diretório de plugin-

E rode make plugins denovo. Pronto!

Sobre a BRINCADEIRA do Orkut Ouro

ATENÇÃO: ORKUT OURO É UMA BRINCADEIRA

Aparentemente muitos levaram a sério a brincadeira do Orkut Ouro.

Orkut Ouro foi uma BRINCADEIRA. Não existe Orkut Ouro.

Tudo começou como uma brincadeira, que nem as muitas do estilo Facebook Gold e 4Chan Gold como estas:

A brincadeira era simples. Convidamos todos os nossos amigos a adicionar imagens que diziam que requeriam uma conta num fictício “Orkut Ouro” para serem visualizadas. A intenção disso era simplesmente causar confusão entre nosso círculo de amigos, um trote inofensivo. Ninguem teve conta no orkut nem sequer dinheiro roubado por causa da brincadeira

Obviamente nada disto é verdade. É tudo uma grande brincadeira.

Pedir usuário e senha foi apenas uma experiência com Engenharia Social, provando meu fato de que as pessoas não se importam com seus dados, desde que o prêmio pareça ser bom.

Em momento algum eu abri um email que aparentasse conter uma senha, ou dos que abri por engano, não utilizei uma senha sequer. Deletei absolutamente todos os emails que vieram com contato para obter Orkut Ouro e não fiz nada dos dados.

Denovo: ORKUT OURO É UMA BRINCADEIRA. Não leve a sério, não dê seus dados para quem quer que seja.

A brincadeira continua até que o Google peça para eu parar, momento no qual absolutamente tudo que estiver sob meu controle será removido, caso assim eles desejem. Meu objetivo não é causar mal a ninguém.

Se você se sentiu ofendido com a brincadeira, peço minhas sinceras desculpas e peço que me mande um email para que eu possa me desculpar pessoalmente. É o mínimo que posso fazer.

A brincadeira saiu de controle, talvez o erro tenha sido meu ao pedir senhas, era totalmente desnecessário. Mas, novamente, garanto que não as utilizei em momento algum.

Novas contas Orkut Ouro

ATENÇÃO: Orkut Ouro é uma PIADA. Não me mandem emails, não existe Orkut Ouro, isso já foi longe demais.

A partir de hoje muitos usuários do Orkut começaram a ver em fotos de álbuns e mesmo em fotos de perfil e comunidades a seguinte imagem:

Orkut Ouro

Mas o quê é o Orkut Ouro?

Orkut Ouro é o serviço Premium do Orkut que dá direito a uma série de funcionalidades novas, além de acesso aos betas (com direito a convites) antes de todo mundo. Algumas dessas funcionalidades são:

  • Ver a lista completa de quem visitou o seu perfil, quantas vezes e quais páginas dele viu, mesmo que essa pessoa tenha desabilitado a opção de visitantes recentes e não tenha Orkut Ouro.
  • Ver todas as fotos, recados e vídeos de todos os usuários do Orkut que não têm Orkut Ouro, mesmo que estejam com cadeado.
  • Nunca ser bloqueado por ninguém que não tem Orkut Ouro.
  • Entrar em qualquer comunidade moderada, a menos que o dono também tenha Orkut Ouro. Neste caso, você será o primeiro da fila de moderação para ser aprovado.
  • Álbum de fotos sem censura.
  • Google maps em tempo real, com GPS.
  • Visualizar mensagens, recados, comentários, fotos e depoimentos de usuários Orkut Ouro.
  • E muito mais por vir!

Como obtenho acesso?

Orkut Ouro é um serviço beta e pago. Para isso é necessário um convite de alguém que já o possua e o pagamento de uma assinatura. Você pode testar o serviço por 7 dias totalmente de graça. Para se inscrever, mande um email para

ppvanzella@ppvanzella.com

com os seguintes dados:

  • Nome completo, como escrito no perfil do orkut
  • email do cadastro no orkut
  • nome de 3 comunidades e dois amigos da sua lista

ATENÇÃO: A senha não é mais necessária para o convite.

Estes dados são necessários para verificarmos a autenticidade da sua conta. Até 3 dias úteis após o envio deste email seu período de testes do Orkut Ouro começará e você receberá um email com instruções de pagamento. Caso o mesmo não seja efetivado em até 7 dias úteis, sua conta voltará para o Novo Orkut sem custo algum.

Estamos trabalhando muito no Orkut Ouro, espero que você goste!

UPDATE 2: Meu grande amigo Cardoso deixou um link interessantíssimo. Sugiro à todos a leitura.

 
SEO Powered by Platinum SEO from Techblissonline