quinta-feira, 17 de julho de 2008

Mentiras Sobre o Orkut

Recentemente várias pessoas têm recebido uma mensagem através do Orkut dizendo que o Orkut tem um vírus que se instala no micro de quem usa este site de relacionamento. É mentira. Não existe. É a versão reciclada do hoax do “vírus do ursinho”. É o seguinte: tem um arquivo de sistema do Windows chamado Jdbgmgr.exe que, por acaso, seu ícone é um ursinho. Um gaiato inventou esta mentira, dizendo que este arquivo é um vírus, e espalhou por aí. Rapidamente a mensagem se alastra, criando pânico em diversos usuários incautos.

Outra famosa mentira relacionada ao Orkut é a de que se você mudar o seu país de Brasil para outro país qualquer nas suas configurações, o Orkut fica mais rápido. Equivale no mundo virtual a dizer que se você colocar um balde d’água debaixo de uma lâmpada ela consome menos energia (por incrível que pareça, tem gente que acredita nisso).

Outra bastante comum é a que diz que o Orkut vai ser pago e que você precisa repassar a mensagem para vários amigos para o Orkut ser atualizado (?)... Pura balela...

Fatos como esses só provam duas coisas. Primeiro, que as pessoas passam adiante informações sem checarem a sua veracidade – muitas vezes sem sequer lerem o conteúdo da mensagem. Segundo, que tem muita gente desocupada nesse mundo para ficar inventando mentiras. Isso não ocorre só no mundo virtual. Quem nunca ouviu falar na figurinha de chiclete com decalque que tem LSD e que se você discar #90 no telefone da sua casa sua linha é clonada? Estas duas histórias também são mentiras.

Mas tem uma que não é mentira: "Li em algum canto que quando estamos logados no Orkut e entramos num site com código malicioso nossa senha pode ser vista e roubada. Verdade ou mentira?" Sim, é verdade, mas tão logo esta falha foi descoberta o Orkut corrigiu este problema. A história completa pode ser lida aqui: http://www.cocadaboa.com/archives/004126.php

Usando o Google para Pesquisar Seu Computador

O Google (http://www.google.com) é, sem sombra de dúvida, uma das ferramentas de busca mais populares da Internet. A grande notícia é que agora todos os usuários podem ter a tecnologia do Google instalada em sua própria máquina.

A ferramenta de busca que vem com o Windows (Iniciar, Pesquisar) é até interessante, mas além de a pesquisa demorar um tempão, quando você procura por um texto que esteja dentro dos arquivos (opção "que contenha") ela apenas lista os arquivos que têm a palavra-chave que você está procurando, sem informar em que trecho do arquivo a palavra-chave aparece. Isso pode ser um problema se a palavra-chave for uma palavra comum.

Com a ferramenta do Google você consegue encontrar todos os arquivos localizados em seu disco rígido que falem sobre um determinado assunto. A atual versão desta ferramenta procura dentro de e-mails do Outlook e Outlook Express, arquivos do Word, Excel, PowerPoint e arquivos de texto (txt), logs de chat do AOL Instant Messenger (AIM) e arquivos HTML, tanto de sites que você tenha baixado para leitura off-line quanto no histórico do Internet Explorer. Este último recurso torna essa ferramenta realmente única: imagine que você queira voltar a um site sobre um determinado assunto que você navegou há alguns dias e não se lembra mais o link dele. Basta usar a ferramenta de busca do Google em seu micro que ela achará o site para você.

Para você ter este recurso em seu micro, você precisa instalar um programa, chamado Google Desktop Search, que pode ser baixado gratuitamente em http://desktop.google.com. Após a instalação, o programa fará uma varredura no seu disco rígido para "conhecer" os seus arquivos. Esta varredura (chamada indexação) pode demorar algumas horas, especialmente se o seu disco rígido for grande e você tiver muitos arquivos de dados. Durante este processo você terá de deixar o Outlook aberto para que o programa consiga indexar os seus e-mails.

A aparente "perda de tempo" na indexação compensa. Fizemos vários testes e a ferramenta de busca nunca demorou mais do que 1 segundo (!) para encontrar os arquivos que estávamos procurando. Em alguns casos a busca retornou em 0,10 segundo. Realmente impressionante.

Após instalado, o seu micro terá o ícone do Google Desktop Search na barra de tarefas ao lado do relógio do Windows. Basta você dar um duplo clique neste ícone para iniciar a sua busca. O programa irá abrir o seu browser com um formulário de busca, similar ao do site do Google. Com este ícone presente, o programa passa a automaticamente indexar novos arquivos que são criados e sites que você visita.

O resultado da busca lista todos os arquivos encontrados em seu micro que contenham as palavras-chave procuradas. Para melhor visualização dos resultados, você pode clicar em quatro categorias existentes, emails, files, chat e web history, o que fará com que somente e-mails, arquivos (Word, Excel, PowerPoint, Texto), chat do AIM ou sites visitados, respectivamente, sejam apresentados.

Após a instalação deste programa em seu micro, ao usar o site do Google para suas pesquisas na Internet, ele passa a avisá-lo quando há arquivos em seu micro que possuem a palavra-chave pesquisada (ex: "56 results stored on your computer"), com um link para listar os arquivos que foram encontrados em seu micro.

Como o Protocolo TCP/IP Funciona

Introdução

O TCP/IP é o protocolo de rede mais usado atualmente. Neste tutorial explicaremos como este protocolo funciona em uma linguagem fácil de entender.


Mas, afinal, o que é um protocolo de rede? Um protocolo é uma linguagem usada para permitir que dois ou mais computadores se comuniquem. Assim como acontece no mundo real, se eles não falarem a mesma língua eles não podem se comunicar.


O TCP/IP não é na verdade um protocolo, mas sim um conjunto de protocolos – uma pilha de protocolos, como ele é mais chamado. Seu nome, por exemplo, já faz referência a dois protocolos diferentes, o TCP (Transmission Control Protocol, Protocolo de Controle de Transmissão) e o IP (Internet Protocol, Protocolo de Internet). Existem muitos outros protocolos que compõem a pilha TCP/IP, como o FTP, o HTTP, o SMTP e o UDP – só para citarmos alguns. Não se preocupe por enquanto pois explicaremos tudo o que você precisa saber sobre esses protocolos.


o TCP/IP tem quatro camadas. Os programas se comunicam com a camada de Aplicação. Na camada de Aplicação você encontrará os protocolos de aplicação tais como o SMTP (para e-mail), o FTP (para a transferência de arquivos) e o HTTP (para navegação web). Cada tipo de programa se comunica com um protocolo de aplicação diferente, dependendo da finalidade do programa.


Após processar a requisição do programa, o protocolo na camada de Aplicação se comunicará com um outro protocolo na camada de Transporte, normalmente o TCP. Esta camada é responsável por pegar os dados enviados pela camada superior, dividi-los em pacotes e enviá-los para a camada imediatamente inferior, a camada Internet. Além disso, durante a recepção dos dados, esta camada é responsável por colocar os pacotes recebidos da rede em ordem (já que eles podem chegar fora de ordem) e também verificam se o conteúdo dos pacotes está intacto.


Na camada Internet nós temos o IP (Internet Protocol, Protocolo Internet), que pega os pacotes recebidos da camada de Transporte e adiciona informações de endereçamento virtual, isto é, adiciona o endereço do computador que está enviando os dados e o endereço do computador que receberá os dados. Esses endereços virtuais são chamados endereços IP. Em seguida os pacotes são enviados para a camada imediatamente inferior, a camada Interface com a Rede. Nesta camada os pacotes são chamados datagramas.


A camada Interface com a Rede receberá os pacotes enviados pela camada Internet e os enviará para a rede (ou receberá os dados da rede, caso o computador esteja recebendo dados). O que está dentro desta camada dependerá do tipo de rede que seu computador estiver usando. Atualmente praticamente todos os computadores utilizam um tipo de rede chamado Ethernet (que está disponível em diferentes velocidades; as redes sem fio também são redes Ethernet) e, portanto, você deve encontrar na camada Interface com a Rede as camadas do Ethernet, que são Controle do Link Lógico (LLC), Controle de Acesso ao Meio (MAC) e Física, listadas de cima para baixo. Os pacotes transmitidos pela rede são chamados quadros.


Vamos falar agora em mais detalhes sobre as camadas e os protocolos do TCP/IP.


Camada de Aplicação


Esta camada faz a comunicação entre os programas e os protocolos de transporte. Existem vários protocolos que operam na camada de aplicação. Os mais conhecidos são o HTTP (HyperText Transfer Protocol, Protocolo de Transferência Hipertexto), o SMTP (Simple Mail Transfer Protocol, Protocolo Simples de Transferência de Correspondência), o FTP (File Transfer Protocol, Protoloco de Transferência de Arquivos), o SNMP (Simple Network Management Protocol, Protocolo Simples de Gerenciamento de Redes), o DNS (Domain Name System, Sistema de Nome de Domínio) e o Telnet. Você já deve ter ouvido falar nesses nomes antes.


Quando um programa cliente de e-mail quer baixar os e-mails que estão armazenados no servidor de e-mail, ele efetuará esse pedido para a camada de aplicação do TCP/IP, sendo atendido pelo protocolo SMTP. Quando você entra um endereço www em seu navegador para visualizar uma página na Internet, ele se comunicará com a camada de aplicação do TCP/IP, sendo atendido pelo protocolo HTTP (é por isso que as páginas da Internet começam com http://). E assim por diante.


A camada de aplicação comunica-se com a camada de transporte através de uma porta. As portas são numeradas e as aplicações padrão usam sempre uma mesma porta. Por exemplo, o protocolo SMTP utiliza sempre a porta 25, o protocolo HTTP utiliza sempre a porta 80 e o FTP as portas 20 (para transmissão de dados) e 21 (para transmissão de informações de controle).


O uso de um número de porta permite ao protocolo de transporte (tipicamente o TCP) saber qual é o tipo de conteúdo do pacote de dados (por exemplo, saber que o dado que ele está transportando é um e-mail) e, no receptor, saber para qual protocolo de aplicação ele deverá entregar o pacote de dados, já que, como estamos vendo, existem inúmeros. Assim, ao receber um pacote destinado à porta 25, o protocolo TCP irá entregá-lo ao protocolo que estiver conectado a esta porta, tipicamente o SMTP, que por sua vez entregará o dado à aplicação que o solicitou (o programa de e-mail).


Camada de Transporte


Na transmissão de dados, a camada de transporte é responsável por pegar os dados passados pela camada de aplicação e transformá-los em pacotes. O TCP (Transmission Control Protocol, Protocolo de Controle da Transmissão) é o protocolo mais usado na camada de Transporte. Na recepção de dados, o protocolo TCP pega os pacotes passados pela camada Internet e trata de colocá-los em ordem, já que os pacotes podem chegar ao destino fora de ordem, confere se os dados dentro dos pacotes estão íntegros e envia um sinal de confirmação chamado “acknowledge” (“ack”) ao transmissor, avisando que o pacote foi recebido corretamente e que os dados estão íntegros. Se nenhum sinal de confirmação (acknowledge) for recebido (ou porque o dado não chegou ao destino ou porque o TCP descobriu que o dado estava corrompido), o transmissor enviará novamente o pacote perdido.


Enquanto que o TCP reordena os pacotes e usa mecanismo de confirmação de recebimento – o que é desejável na transmissão de dados – existe um outro protocolo que opera nesta camada que não tem esses recursos. Este protocolo é o UDP (User Datagram Protocol, Protocolo de Datagrama do Usuário).


Por essa razão o TCP é considerado um protocolo confiável, enquanto que o UDP é considerado um protocolo não confiável. O UDP é tipicamente usado quando nenhum dado importante está sendo transmitido, como requisições DNS (Domain Name System, Sistema de Nome de Domínio). Como o UDP não reordena os pacotes e nem usa mecanismo de confirmação, ele é mais rápido do que o TCP.


Quando o UDP é usado, a aplicação que solicita a transmissão será a responsável por verificar se os dados recebidos estão intactos ou não e também de reordenar os pacotes recebidos, isto é, a aplicação fará o trabalho do TCP.


Durante a transmissão de dados, tanto o UDP quanto o TCP receberão os dados passados da camada de Aplicação e adicionarão a esses dados um cabeçalho. Na recepção de dados, o cabeçalho será removido antes de os dados serem enviados para a porta apropriada. Neste cabeçalho estão várias informações de controle, em particular o número da porta de origem, o número da porta de destino, um número de seqüência (para a confirmação de recebimento e mecanismos de reordenamento usado pelo TCP) e uma soma de verificação (chamada checksum ou CRC, que é um cálculo usado para verificar se o dado foi recebido intacto no destino). O cabeçalho UDP tem 8 bytes, enquanto que o cabeçalho TCP tem entre 20 e 24 bytes (dependendo se o campo opções estiver sendo ou não usado).




Camada Internet


Em redes TCP/IP cada computador é identificado com um endereço virtual único, chamado endereço IP. A camada Internet é responsável por adicionar um cabeçalho ao pacote de dados recebidos da camada de Transporte onde, entre outros dados de controle, será adicionado também o endereço IP de origem e o endereço IP de destino – isto é, o endereço IP do computador que está enviando os dados e o endereço IP do computador que deverá recebê-los.


A placa de rede de cada computador tem um endereço físico. Este endereço está gravado na memória ROM da placa de rede e é chamado endereço MAC. Dessa forma, em uma rede local se o computador A quiser enviar dados para o computador B, ele precisará saber o endereço MAC do computador B. Enquanto que em uma pequena rede local os computadores podem facilmente descobrir o endereço MAC de todos os PCs, esta não é uma tarefa tão simples em uma rede global como a Internet.


Se nenhum esquema de endereçamento virtual for usado, você precisa saber o endereço MAC do computador de destino, o que não é apenas uma tarefa complicada, mas também não ajuda no roteamento dos pacotes, já que este endereço não usa uma estrutura em árvore (em outras palavras, enquanto o endereçamento virtual usado na mesma rede terá endereços seqüenciais, com o endereçamento MAC o computador com o endereço MAC seguinte ao seu pode estar na Rússia).


Roteamento é o caminho que os dados devem usar para chegar ao destino. Quando você solicita dados de um servidor da Internet, por exemplo, este dado passa por vários locais (chamados roteadores) antes de chegar ao seu computador. Se você quiser ver com isto funciona, faça o seguinte: clique no menu Iniciar, Executar e digite Cmd. No prompt de comando digite tracert www.google.com. O resultados será o caminho entre seu computador e o servidor web do Google. Veja como os pacotes de dados passam através de diferentes roteadores antes de chegar ao destino. Cada roteador no meio do caminho é também conhecido como “salto” (“hop”).


Em todas as redes conectadas à Internet existe um dispositivo chamado roteador, que faz a ponte entre os computadores na sua rede local e a Internet. Todo roteador tem uma tabela contendo as redes conhecidas e também uma configuração chamada gateway padrão apontando para outro roteador na Internet. Quando seu computador envia um pacote de dados para a Internet, o roteador conectado à sua rede primeiro verifica se ele conhece o computador de destino – em outras palavras, o roteador verifica se o computador de destino está localizado na mesma rede ou em uma rede que ele conhece a rota. Se ele não conhecer a rota para o computador de destino, ele enviará o pacote para seu gateway padrão, que é outro roteador. Este processo é repetido até que o pacote de dados chegue ao seu destino.


Há vários protocolos que operam na camada Internet: IP (Internet Protocol, Protocolo de Internet), ICMP (Internet Control Message Protocol, Protocolo de Controle de Mensagens Internet), ARP (Address Resolution Protocol, Protocolo de Resolução de Endereços) e RARP (Reverse Address Resolution Protocol, Protocolo de Resolução de Endereços Reversos). Os pacotes de dados são enviados usando o protocolo IP, e por isso que explicaremos o seu funcionamento.


O IP pega os pacotes de dados recebidos da camada de Transporte (do protocolo TCP se você está transmitindo dados como e-mails ou arquivos) e os divide em datagramas. O datagrama é um pacote que não contém nenhum tipo de confirmação de recebimento (acknowledge), o que significa que o IP não implementa nenhum mecanismo de confirmação de recebimento, isto é, ele é um protocolo não confiável.


Você deve notar que durante a transferência de dados o protocolo TCP será usado acima da camada Internet (ou seja, acima do IP) e o TCP implementa mecanismo de confirmação de recebimento. Portanto apesar de o protocolo IP não verificar se o datagrama chegou ao destino, o protocolo TCP fará esta verificação. A conexão será então confiável, apesar do IP sozinho ser um protocolo não confiável.


Cada datagrama IP pode ter um tamanho máximo de 65.535 bytes, incluindo seu cabeçalho, que pode usar 20 ou 24 bytes, dependendo se um campo chamado “opções” for usado ou não. Dessa forma os datagramas IP podem transportar até 65.515 ou 65.511 bytes de dados. Se o pacote de dados recebidos da camada de Transporte for maior do que 65.515 ou 65.511 bytes, o protocolo IP fragmentará os pacotes em quantos datagramas forem necessários




É interessante notar que o que a camada Internet vê como sendo “dados” é o pacote completo que ela recebe da camada de Transporte, que inclui o cabeçalho TCP ou UDP. Este datagrama será enviado para a camada Interface com a Rede (se estivermos transmitindo) ou pode ter sido recebido da camada Interface com a Rede (se estivermos recebendo dados).


Como mencionamos anteriormente, o cabeçalho adicionado pelo protocolo IP inclui o endereço IP de origem, o endereço IP de destino e várias outras informações de controle.




Se você prestar atenção, nós não dissemos que o datagrama IP tem 65.535 bytes, mas ele pode ter até 65.535 bytes. Isto significa que o campo de dados do datagrama não tem um tamanho fixo. Como os datagramas serão transmitidos pela rede dentro de quadros produzidos pela camada Interface com a Rede, normalmente o sistema operacional configurará o tamanho do datagrama IP para ter o tamanho máximo da área de dados do quadro de dados usado em sua rede. O tamanho máximo do campo de dados dos quadros que são transmitidos pela rede é chamado MTU, Maximum Transfer Unit, ou Unidade de Transferência Máxima.


As redes Ethernet – que são o tipo de rede mais comum hoje em dia, incluindo sua encarnação sem fio – pode transportar até 1.500 bytes de dados, ou seja, seu MTU é de 1.500 bytes. Por isso o sistema operacional configura automaticamente o protocolo IP para criar datagramas IP com 1.500 bytes em vez de 65.535 (que não caberia no quadro). Na próxima página veremos que o seu tamanho real é de 1.497 ou 1.492 bytes, já que a camada LLC “come” 3 ou 5 bytes para adicionar seu cabeçalho.


Só para esclarecer, você pode estar confuso como uma rede pode ser classificada como TCP/IP e Ethernet ao mesmo tempo. O TCP/IP é um conjunto de protocolos que lida com as camadas 3 a 7 do modelo de referência OSI. O Ethernet é um conjunto de protocolos que lida com as camadas 1 e 2 do modelo de referência OSI – o que significa que o Ethernet se preocupa com o aspecto físico da transmissão de dados. Por isso eles se complementam, já que precisamos das sete camadas completas (ou suas equivalentes) para estabelecer uma conexão de rede. Nós explicaremos mais sobre este relacionamento na próxima página.


Outra característica que o protocolo IP permite é a fragmentação. Como mencionamos, até chegar a seu destino o datagrama IP provavelmente passará por várias outras redes no meio do caminho. Se todas as redes no caminho entre o computador transmissor e o receptor usarem o mesmo tipo de rede (por exemplo Ethernet), maravilha, já que todos os roteadores trabalharão com a mesma estrutura do quadro (isto é, o mesmo tamanho de MTU).


No entanto, se aquelas outras redes não forem redes Ethernet, elas podem usar um tamanho diferente de MTU. Se isto acontecer, o roteador que está recebendo os quadros com o MTU configurado com 1.500 bytes dividirá o datagrama IP em quantos quadros forem necessários para atravessar a rede com o tamanho de MTU menor. Ao chegar no roteador que tem sua saída conectada a uma rede Ethernet, este roteador remontará o datagrama original.




Camada Interface com a Rede


Os datagramas gerados na camada Internet serão passados para a camada Interface com a Rede, durante a transmissão de dados, ou a camada de Interface com a Rede pegará os dados da rede e os enviará para a camada de Internet, na recepção dos dados.


Esta camada é definida pelo tipo de rede física a qual seu computador está conectado. Quase sempre seu computador estará conectado a uma rede Ethernet (redes sem fio também são redes Ethernet como explicaremos).


Com dissemos na página anterior, o TCP/IP é um conjunto de protocolos que lida com as camadas 3 a 7 do modelo de referência OSI, enquanto que o Ethernet é um conjunto de protocolos que lida com as camadas 1 e 2 do modelo de referência OSI – o que significa que o Ethernet lida com os aspectos físicos da transmissão de dados. Por isso um complementa o outro, já que precisamos das sete camadas completas (ou suas equivalentes) para estabelecer uma conexão de rede.

O Ethernet tem três camadas: LLC (Controle do Link Lógico), MAC (Controle de Acesso ao Meio) e Física. O LLC e o MAC correspondem, juntas, a segunda camada do modelo de referência OSI.


A camada LLC é a responsável por adicionar informações de que protocolo na camada Internet foi o responsável por gerar os dados. Dessa forma, durante a recepção de dados da rede esta camada no computador receptor tem que saber que protocolo da camada de Internet ele deve entregar os dados. Esta camada é definida pelo protocolo IEEE 802.2.


A camada de Controle de Acesso ao Meio (MAC) é a responsável por montar o quadro que será enviado para a rede. Esta camada é responsável por adicionar o endereço MAC de origem e de destino – como explicamos anteriormente, o endereço MAC é um endereço físico de uma placa de rede. Os quadros que são destinados a outras redes utilizarão o endereço MAC do roteador da rede como endereço de destino. Esta camada é definida pelo protocolo IEEE 802.3, se uma rede com cabos estiver sendo usada, ou pelo protocolo IEEE 802.11, se uma rede sem fio estiver sendo usada.


A camada Física é a responsável por converter o quadro gerado pela camada MAC em sinais elétricos (se for uma rede cabeada) ou eletromagnéticos (se for uma rede sem fio). Esta camada é também definida pelo protocolo IEEE 802.3, se for uma rede com cabos estiver sendo usada, ou pelo IEEE 802.11, se uma rede sem fio estiver sendo usada.


As camadas LLC e MAC adicionam suas informações de cabeçalho ao datagrama recebido da camada Internet. Portanto uma estrutura completa de quadros gerados por essas duas camadas pode ser vista na Figura 7. Note que os cabeçalhos adicionados pelas camadas superiores são vistos como “dados” pela camada LLC. A mesma coisa acontece com o cabeçalho inserido pela camada LLC, que será visto como dado pela camada MAC.


A camada LLC adiciona um cabeçalho de 3 ou 5 bytes e seus datagrama tem um tamanho total máximo de 1.500 bytes, deixando um máximo de 1.497 ou 1.492 bytes para dados. A camada MAC adiciona um cabeçalho de 22 bytes e um CRC (soma dos dados para identificação de erros) de 4 bytes ao final do datagrama recebido da camada LLC, formando o quadro Ethernet. Portanto o tamanho máximo de um quadro Ethernet é de 1.526 bytes.





Hacker

Ser um Hacker

Para ser um hacker você precisa antes de mais nada se familiarizar com uma máquina (de preferência um micro computador). Depois precisa ter conhecimento em redes, programação(linguagem C e Assembly é preferencial) e um pouco de arquitetura de um computador ou uma outra máquina. Não esqueça de ser humilde e pesquisar muito, para isso temos uma grande ferramenta o Google.
Preste atenção, eu vejo por aí muitas pessoas que tem um conhecimento básico e querem, procuram ser hacker, bom mas o erro delas é o de pensar que são melhores que todos
e que sabem tudo(eu mesmo fui assim por 1 ou 2 semanas, mas eu pesquisava muito e deixei de ser um "
Lammer"(Otário).), porém na verdade eles são os chamados script-kiddies, em média são crianças com 12 à 16 anos que descobrem uma pequena parcela do mundo hacker,
cibernético, que pegam as famosas "receitas de bolo"(códigos criados por um hacker, mas são chamados assim porque os kiddies pegam e fazem mal uso deles.).

Espero que sejam diferentes desses, e estudem muito. Eu comecei estudando linguagens web, HTML, Java Script, PHP, CSS, depois ou agora estou migrando para linguagem C e depois Assembly.




EM BREVE POSTAREI CONTEÚDOS INTERESSANTES.
ATUALIZAREI DIARIAMENTE.