sábado, 29 de novembro de 2008

43 coisas para a minha vida

Apesar de eu achar a ideia proposta pelo site muito interessante, não estou fazendo esse post com a intenção de divulgá-lo, por tanto irei colar a descrição dada pela Wikipedia:
43 Things or 43things.com is a social networking web site that is built on the principles of tagging, rather than creating explicit interpersonal links (as seen in Friendster and Orkut). Users create accounts and then list a number of goals or hopes; these goals are parsed by a lexer and connected to other people's goals that are constructed with similar words or ideas. This concept is also known as folksonomy. (http://en.wikipedia.org/wiki/43_Things)
Um pouco mais de 1 ano atrás me registrei no 43T, e tão logo fiz a minha lista com as 43 coisas coisas que eu tinha certeza que queria para minha vida. Esses dias lembrei da tal lista e resolvi dar uma olhada, nada de resoluções idiotas de fim de ano fui dar uma olhada como quem não queria nada mesmo...

Alguns itens dessa lista insana:

Quit my job

Nem eu lembro qual era o emprego que eu tinha na epoca......

be where I should be in my life.

Onde seria isso?

be crazy for a while

Mais do que já sou normalmente?

Ainda assim alguns eram muito bons, como esse por exemplo:

Spend less time fooling around on the net and more time actually working

:)

domingo, 19 de outubro de 2008

Como funciona o DarkEden


Como prometido no meu último post sobre DarkEden, eu vou falar um pouco mais sobre as sources do DK2. Por ser meu game preferido eu gostaria de ter boas coisas para falar dos desenvolvedores do DarkEden. Infelizmente essa não é a realidade.

As sources do DarkEden foram feitas para rodar em Linux 2.4 e serem compiladas com GCC 2.95. O projeto inteiro do DarkEden não faz uso de programação orientada a objetos, tem excesso de exceptions com péssimo tratamento e a modelagem do banco de dados é uma piada.

O servidor do DarkEden é composto de 5 elementos, sendo 3 essenciais.

O primeiro é o login server que recebe o id e a senha do player, caso corretos ele gera uma chave de autenticação e passa o ip do game server desejado para o player.

Depois temos o game server, que em outros jogos também é chamado de "map server", este é responsavel por colocar online o jogo em si.

E por último mas não menos importante existe o shared server, este por sua vez é responsavel por manter a conexão entre diferentes game servers que fazem uso do mesmo banco de dados.

Ainda existem o update server e o billing server que não usados, no DK2 é utilizado o updater do NeoSteam (outro game da mesma empresa que vazou o DarkEden) e um servidor de venda de itens chamado Power Jjang que eu não tenho as sources.

Talvez no futuro eu crie um post falando sobre as sources do client do DK2.

sexta-feira, 3 de outubro de 2008

Porque eu odeio anime

Animes não são nada geniais, são simplesmente retardados. Se formos parar e pensar na anatomia de um anime, tudo se resume a faces desproporcionais (olhos grandes, pequeno ou nenhum nariz) e animações mal feitas.

Os animes são tão ruins que, se assistirmos um anime de um ponto de vista objetivo e desligarmos o som, veremos que as animações se baseiam na boca do personagem, ela abre, abre mais um pouco, ela fecha; agora repita esses 3 quadros por meia hora e você tem um anime estilo Naruto, Death Note, Neon Genesis Evangelion...

Free Image Hosting at www.ImageShack.us

Fora a deficiência da animação, o conteúdo é muito vago.

Humor imbecil e fraquíssimo; clichê comendo solto; apelação pornográfica (ou vai dizer agora que peitões e bundões é apenas uma forma de expressar a beleza? não pelos padrões asiáticos); conversações longas, massantes e sem fundamento; explicações nonsense (OMFG!11 ELE TÁ FAZENDO COCÔ PELA BOCA!! ISSO SIGNIFICA QUE OS ESPÍRITOS DO CENTRO DA TERRA VÃO FICAR EM FÚRIA!! O QUE CAUSA UM EFEITO QUE EMITE RADIAÇÃO GAMA E MATA O SEU OPONENTE DE CÂNCER!!1 OHH NOOOOESSS!!11)...

Eu poderia ficar o dia inteiro dando exemplos.

quinta-feira, 2 de outubro de 2008

Zero Online

Recentemente consegui os arquivos do servidor do Zero Online (http://zo.91.com). Mesmo não me interessando por esse tipo de jogo baseado em desenhos animados orientais, por ter a possibilidade de abrir um server resolvi checar esse jogo.

Zero Online - Test Server

Zero Online é o game mais novo da TQ Digital, mesma empresa desenvolvedora do Conquer Online e Eudemons. O Zero basicamente nada mais é do que uma mistura do Eudemons com Transformers (http://en.wikipedia.org/wiki/Transformers).

Devo dizer que me interessei muito pelo potencial do Zero.

:)

segunda-feira, 29 de setembro de 2008

Uma ida ao Detran de Teresópolis


Hoje fui no Detran dar entrada na minha primeira CNH e realmente esse país não muda nada mesmo. Segunda-feira 29 de setembro de 2008, em pleno século XXI eu encontro o mesmo orgão incompetente de sempre.

Além da agencia do Detran de Teresópolis ficar fora da cidade, acredite ou não, fica nos fundos de um mercado. Junto com o que encontramos em qualquer repartição pública (computadores dos anos 80, máquinas de escrever e etc...) vi um prédio reformado pela metade ou em obras ainda. O senhor que estava atrás de mim na fila reclamava que tinha tido sua carteira caçada por ultrapassar o limite de infrações permitidas, feito o curso de reciclagem, porém o Detran aparentemente tinha perdido sua habilitação.

No dia 23 estarei retornando ao Detran para uma nova aventura... Renovar meu RG.

sábado, 27 de setembro de 2008

SQL Injection for Dummies


Cheguei a conclusão que o maior problema das pessoas que se metem a aprender SQL Injection é não saber o que é SQL e muito menos o que é o SQL Injection. Nesse post eu não vou e nem quero me aprofundar em nada, irei apenar passar uma visão geral sobre o assunto.

De acordo com a Wikipedia o SQL significa:
"Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, é uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). Muitas das características originais do SQL foram inspiradas na álgebra relacional."
Se você não entendeu ou ficou com preguiça de pesquisar, posso resumir que o SQL é um sistema de banco de dados utilizado em larga escala.

Quando você entrou nesse blog, para esse post ser exibido o seguinte processo teve que ocorrer:


Você requeriu esta pagina ao servidor web que consultou o servidor SQL os dados desse post.

SQL Injection, como o nome já diz, constitui você injetar comandos de SQL na consulta. Considere o seguinte script PHP vulneravel a SQL Injection:


Em lugar nenhum nesse script de autenticação vemos o input do usuario ser tratado, sendo assim se o usuario entrar com o input no campo login "admin'/*" e senha vazia a consulta passa a ser:

SELECT * FROM users WHERE username='admin'/*' and password=''

Como você já deve saber /* é um comentario, tudo que vier depois dele é ignorado pelo servidor, sendo assim o servidor só verificou se o nome de usuario existe e autenticou o usuario.

Parece simples mas não é, nenhum programador é bobo de deixar um login sem verificação (ok.. alguns são.... continuando), obviamente SQL Injection pode ser feito não apenas em scripts de logins mas em qualquer coisa aonde entra o input do usuario na consulta.

Para proteger um script contra esse tipo de ataque basta verificar o input do usuario contra caracteres especiais que o seu SQL server possa interpretar. No PHP a maneira mais facil de fazer isso é passando o input pela função mysql_real_escape_string.

No meu próximo livro "SQL Injection for Lamers" irei passar algumas receitas de bolo, pode não parecer mas para escrever este artigo levei um tempo consideravel. Se você se interessou por este livro ele esta disponivel nas melhores livrarias e no site da editora O'Really.

domingo, 14 de setembro de 2008

DarkEden 2006 - 2008


Em 2006 decepcionado com a péssima qualidade do serviço oferecido pela Softon (http://www.softon.co.kr), resolvi montar meu próprio servidor de DarkEden (http://www.darkeden.com).

Mas como eu faria isso?

Com que arquivos eu montaria o meu DarkEden?

Passei alguns dias pesquisando e não achei em lugar nenhum informações sobre como montar um servidor de DarkEden. Depois de algum tempo por acidente achei um post de um chinês em um forum dizendo que tinha as sources do antigo DarkEden chinês, o T2DK (http://www.t2dk.com) e que precisava de ajuda com elas.

Eu é claro me disponibilizei, infelizmente passamos meses tentando colocar aquelas sources para funcionar mas sem sucesso. Decidimos então liberar as sources, assim se todos tivessem acesso a elas, talvez alguem fosse capaz de consertar elas. Até montamos um projeto Open Source chamado Open DarkEden (http://opendarkeden.com). Porém isso não aconteceu.

Um dia como outro qualquer esse ano, eu consegui as sources do DK2 (http://www.dk2.com.cn), não só as sources do game server, mas como também do client, das tools necessarias para editar os arquivos externos do client (*.inf, *.spk e etc..) e até as imagens do site do DK2 salvas em formato *.psd.

Em um próximo post eu conto sobre o meu trabalho com as sources do DK2.