Tuesday, October 25, 2005

Completando o topico sobre o minix.

Achei o historico e perfeito flameware Linus x Tanenbaum.

Repare que a diferente visão entre o Linus e o Tanenbaum é o principal responsavel por o Linux ter ganho tanto espaço e o Linus ter se tornado um "quase milionario" enquanto o Minix ainda é um sistema operacional de geeks e o Tanenbaum continua como professor + editor de livros :-)

http://people.fluidsignal.com/~luferbu/misc/Linus_vs_Tanenbaum.html

Não vou por esse post no blog do deathstar, pois senao daqui a pouco o gugu come meu cotoco

Monday, October 24, 2005

Microsoft Command Shell

Demorou, mas a Microsoft lancou a "MCH".. ficou DO C*RALHO!!!

Tem um guide sobre o assunto: http://arstechnica.com/guides/other/msh.ars/1 muito bem feito e extenso, perceba a sintax SQL LIKE e estruturas Perlhash like.

Demorou mais saiu e pra variar.. muito bem feita!
MINIX V3 RELEASED!!!

Demais, o Senhor Andy Tanenbaum lançou oficialmente o Minix v3.

Agora temos realmente em nossas mãos um sistema operacional verdadeiramente "Microkernel based" . Isso me faz lembrar da vez que o Tanenbaum falou para o Linus em plena comp.os.minix "Se você fosse meu aluno, receberia apenas um 7 pelo seu sistema operacional"

Mal posso esperar para por a mão no livro "Operating Systems Design and Implementation" terceira edição :-)))

Tuesday, October 18, 2005

Boas praticas em desenvolvimento WEB

No site do W3C tem um bom documento descrevendo boas praticas no desenvolvimento web.

Um ponto importante citado é quando utilizar GET e POST em FORMs WEB.Resumindo: Para ações de consulta USE GET, para qualquer ação que seja diferente de consulta, use POST. Detalhe: Por mais que em alguns sistemas se resuma a um SELECT, a autenticação não é uma consulta.

Monday, October 10, 2005

Melhorias no MySQL


Até que enfim o MySQL está virando um banco de dados de gente grande!
A versão 5.0 do mysql traz algumas features interessantes como por exemplo SSL, Trigger SQL e Stored Procedures.
Por que utilizar Stored Procedure ? Dois motivos. Primeiro é mais rapido, não do ponto de vista computacional, uma vez que não há codigo compilado, entretanto é mais rápido do pontode vista de rede, pois caso sua procedure envolva verificação e ações (validação,insert, drop e etc) isso tudo será executado no banco de dados.Outro motivo importante é do ponto de vista de segurança, pois quanto menos expormos do nosso banco e inteligencia de nosso sistema para o mundo, menor a superficie de ataque possivel de ser explorada.
Por exemplo, caso alguem tenha acesso ao codigo de acesso ao banco de dados é melhor que esta pessoa visualize CALL sp_DoUpdate(registro) do que : DROP IF EXISTS TB_BLABLA;CREATE TABLE TB_BLABLA(...);
Infelizmente as informações na documentação está meio fraca, mas fuçando achei algumas coisas interessantes:
Penei para achar as Stored Procedures criadas por mim. Depois de muita cabeçada achei como listar as stored procedures existentes, assim como mostrar o codigo delas. Pode ser interessante utilizar tais comandos via SQL Injection em algum Pen-test (set evil_bit = on ;-)
Para listar:SELECT * FROM mysql.proc; (Eu consigo listar o codigo tb, entretanto o proximo comando o output é melhor)
Para visualizar o codigo utilizado para dar criar a procedure:show CREATE PROCEDURE sp_MinhaProcedure;
É isso :-)