segunda-feira, 3 de maio de 2010

Linguagens de programação



No princípio criou Deus os céus e a terra. A terra era sem forma e vazia; (...) haja luz. E houve luz. (Genesis 1:1) E com a luz vieram os computadores... um salto radical demais? Nem tanto, já que o primeiro "computador" data de 4.000 a.C e a primeira linguagem computacional, de 1942. Estamos em 2010 e você lê o resultado virtual e "radical" de muita coisa que aconteceu...



Uma linguagem de programação nada mais é do que o "idioma" utilizado para dizer a uma máquina o que e quando ela deve executar a partir de uma determinada ação ou situação.



Pense no seguinte: tudo o que você faz no seu computador, seja um Desktop, Notebook, Netbook, Smartphone, foi programado antes por alguém, um profissional conhecido como programador.



Isso quer dizer que esse programador disse ao computador para fazer tal coisa de determinada forma e, também, que o PC deveria responder assim ou assado de acordo com o que fosse solicitado por você, caro usuário.



Meio confuso? Tudo bem, é assim mesmo que a coisa funciona. Prever o que o usuário irá fazer é uma árdua tarefa. Não é a toa que tudo começou lá em 1942, mais de 60 anos antes de chegarmos ao iPad...



Na hora de criar um código, isto é, programar o computador por meio de uma linguagem computacional, um programador ou vários, utilizando uma ou várias linguagens de programação, disseram ao hardware, site ou ao sistema o que ele deveria fazer, responder ou esperar a partir do que você fizesse. É o eterno composto: Entrada, processamento e Saída de Informação.



Mas como isso é possível? Afinal, dizem por aí que o computador só entende 0 ou 1! Bem, aí é que entram as particularidades das várias linguagens de programação que há por aí. Cada campo da informática, seja criar um website ou desenvolver um sistema operacional requer uma especialização em determinado "idioma" computacional.



Para programar, por exemplo, um sistema operacional, que ao pé da letra é um conjunto de ações que dizem a máquina como você irá operá-la (de operacional, percebeu?), você aprenderia um tipo de "língua" que é conhecida como linguagem de máquina.



Entretanto, se o que você quer é fazer uma página para internet, utilizará uma linguagem apropriada para a criação de um site, uma ação em um site e assim por diante. E isso só é possível pois existem várias fatias ou "dialetos" para serem escritos e que fazem determinadas ações.



Continha complicada, certo? E é bastante. Só de classificações de linguagens de programação, o tópico da Wikipédia conta com seis itens, fora os subtópicos. Cada um exemplificando como as linguagens são e quais são as suas características principais.



Para consultar esse tópico, tenha um dicionário em mãos e acesse o endereço:
http://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3%A3o



Mas como não queremos ser um dicionário das linguagens de programação, pularemos um pedaço da história e ficaremos no lugar comum.



Para aqueles que quiserem mais detalhes, o site www.levenez.com/lang possui o mapa das linguagens de programação e todas as suas ramificações desde 1954 até hoje e no www.geospat.com/hoprola exibe o mapa mundial, onde e quando todas as linguagens surgiram - o que vai facilitar sua aventura pelo mundo dos idiomas computacionais.

Os tipos de linguagem de programação são divididos em: Compiladas, de Script e Interpretadas. Para facilitar a nossa vida, primeiro vamos entender como funciona esse tipo de divisão.



Linguagens compiladas são aquelas escritas por um determinado programa e que necessitam de um software (copilador) para transformá-la em um programa que possa ser interpretado pelo computador. Esse processo divide-se desta forma:



*Código-fonte > debugador > copilador > arquivo final*



Para entender melhor, traçaremos um paralelo mais prático:



*Texto > Editor > Revisor > Texto Publicado no Yahoo!*



Mundo real: Um escritor fica até às 3 horas da manhã escrevendo um texto. Digita, escreve, estrutura, queima a pestana para agradar seus leitores e passar a mensagem final. E finalmente termina o texto que julga ser o final.



Mundo da computação: esse escritor é um programador que escreve o início de um programa copilado, ou seja, está gerando o código-fonte.



Mundo real: o escritor então envia o texto para o editor que lê, corta, reclama de cada um dos espaços dados no texto "perfeito" e devolve para o escritor dizendo que está errado, mas sem explicar o que. Ou seja, faz você reescrever quase tudo.

Mundo da computação: o programador enviou o código fonte ao software que copila o programa. Esse software tem uma etapa chamada "debugador" que testa o código fonte e indica onde estão os possíveis erros e os erros. Normalmente é nessa etapa que um programador lê aproximadamente mil linhas para descobrir que esqueceu um ponto e vírgula no final da função que ele havia imaginado.



Mundo real: enfim, o autor termina o texto e envia novamente ao editor, que diz: "não está grande coisa, tem esse parágrafo ou aquele que poderia melhorar, mas pode passar...".



Mundo da computação: o programador conseguiu terminar o código-fonte e passar pelo debug. Apesar de ainda conter alguns alertas de possíveis erros, já funciona mesmo sem ter sido gerado ainda. O próximo passo é gerar esse arquivo final para então distribuí-lo aos seus clientes.



Mundo real: o editor envia o texto do autor para o revisor, que o interpreta do jeito dele e reescreve quase tudo nas palavras que acredita ter o mesmo significado. Ou seja, transforma em algo diferente do original, mas que no final, é a mesma coisa. Então devolve ao editor que envia para o publicador, que coloca o texto no Yahoo!. ;-)



Mundo da computação: finalmente o programador consegue o arquivo final: ele foi debugado e copilado em um arquivo de distribuição, normalmente um .EXE, um .DAT, um .COM ou outro tipo de extensão de arquivo que só poderá ser lido pela máquina - mas que é capaz de executar exatamente o que o programador desejava desde o princípio.



Mundo real: então, o pessoal do Yahoo! pega um pedaço do texto e põe na página principal.



Mundo da computação: o programador compacta o arquivo em um instalador e envia para seus clientes.



E assim é gerado um arquivo compilado.



Abaixo, algumas linguagens de programação que são tipicamente compiladas:



* Ada
* ALGOL
* BASIC
* C
* C++
* CLEO
* COBOL
* Cobra
* Common Lisp
* D
* Delphi
* Eiffel
* Fortran
* JOVIAL
* LabVIEW
* Lush
* ML
* Objective-C
* Ocaml
* Pascal
* Sather
* Ubercode
* Urq
* Visual Basic
* Visual Foxpro
* Visual Prolog







*Linguagens de script* são aquelas escritas em um determinado programa que já está pronto para ser executado no computador do usuário.



*Código-fonte > Aplicação > Execução*



No paralelo:



*Texto para o Blog > Blog Amador > Leitores.*



Essas são as linguagens mais utilizadas no que é chamado de frontend. É um código que o programador escreve e que um interpretador executa.

Normalmente quando você entra em um site que faz um cálculo ou uma ação, ele é totalmente desenvolvido em uma linguagem de script.



Abaixo, algumas linguagens de programação que são tipicamente usadas como script (mas não necessariamente apenas de script):



* ActionScript (utilizada no flash)
* BASIC (utilizado nos códigos de macros do Microsoft Word, por exemplo).
* C e derivados
* Euphoria
* JavaScript
* Lua (brasileiro)
* PHP
* Python
* Ruby
* Tcl



*Linguagens Interpretadas* são aquelas escritas em um determinado programa e que necessitam de um interpretador (engine) para transformá-la em uma ação executável que, por sua vez, requer ajuda de códigos copilados para que seja interpretado pelo computador.



*Código Fonte > Aplicação > Acessórios para execução > Execução.*



No mundo real:



*Texto para Blog Profissional > Revisor/Co-autor > Blog > Texto para Leitores.*



As linguagens interpretadas são aquelas que precisam de módulos criados por outras aplicações e que, para serem executadas, precisam de ajuda antes de criarem uma ação.



Funciona como se o nosso autor fosse obrigado a ter o aval do chefe para publicar o texto que ele tanto acreditava que estava perfeito.



Nesse caso, entenda, que não existe a obrigatoriedade mas a necessidade de uma segunda "opinião" para manter um padrão fiel a um estilo determinado.



Abaixo, algumas linguagens que são tipicamente interpretadas e que podem possuir implementações compiladas:



* ActionScript
* APL
* ASP
* BASIC
* Bistro
* C#
* CYBOL
* DMDScript
* E4X
* ECMAScript
* Euphoria
* F-Script
* Forth
* Icon
* Inform
* J
* Java
* JavaScript
* Lisp
* Logo
* Lua
* MUMPS
* PHP
* Python
* R
* Ruby
* S
* Scheme
* Smalltalk
* Squeak
* VisualAge
* VisualWorks
* Tcl





Esperamos que esse passeio pelas linguagens de programação tenha aberto um novo horizonte para você. Não é fácil criar um overview técnico sem entrar no "tequiniquês". O mundo da programação é muito vasto: vai de códigos imensos e complexos a até a mais simples ação executada pelo seu mouse ou navegador nesta página.



Para cada uma das coisas que acontecem a partir do momento que você aperta o botão ligar da sua máquina, linguagens diferentes são utilizadas. Uma responsável pelas cores, outra pelos movimentos e outra pela exibição do texto que você acabou de ler, por exemplo. Nesta página, muito provavelmente você tenha scripts, linguagens interpretadas como o HTML e mais algumas de referência que vão buscar em outros sites informações desenvolvidas de forma completamente diferentes.



Por isso, há uma eterna batalha entre navegadores, padronizações e formatos entendíveis em qualquer plataforma. Imagine o trabalhão que é fazer um código chinês, funcionar bem com um alemão e outro brasileiro do nordeste e outro do sul.



Esse é o mundo da informática que você não vê, mas que com certeza, está ai no seu computador e aqui no meu. ;-)





Ah! E se você quiser entender um pouco das diferenças das linguagens, na Wikipédia, existe uma página com códigos em várias linguagens que executam exatamente a mesma coisa. O endereço é: http://pt.wikipedia.org/wiki/Sintaxe_de_linguagens_de_programa%C3%A7%C3%A3o
Read More

Banco Mundial vai promover concurso para desenvolvedores


Ao liberar o acesso público a seus bancos de dados, entidade incentiva a criação de aplicativos que apoiem ações para superação da pobreza.

O Banco Mundial planeja lançar um concurso para incentivar desenvolvedores a criar aplicações que possam ser usadas para medir o progresso dos países em desenvolvimento.

A competição, chamada "Apps for Development", é parte da iniciativa do Banco Mundial de abrir seus bancos de dados gratuitamente a todos os indivíduos. Dessa forma, as pessoas poderão usar as informações "para criar novas análises, ferramentas e soluções para problemas globais", disse o presidente do Banco Mundial, Robert Zoellick.

Até então, apenas assinantes tinham acesso às informações, que incluem expectativa de vida e índices de mortalidade infantil de diversos países. Os dados estarão disponíveis em árabe, francês e espanhol, além do inglês.

No concurso, o Banco Mundial desafia os desenvolvedores a usar os dados para criar "ferramentas, aplicações e mash-ups" para agentes de desenvolvimento. Elas deverão "tornar mais fácil para usuários de dados sobre desenvolvimento tomar melhores decisões e elaborar melhores políticas para superar a pobreza", disse Zoellick.

A base de dados do Banco Mundial pode ser acessada em data.worldbank.org.
Read More

Os 10 mandamentos para quem usa computadores públicos


Se você utiliza computadores em qualquer ponto público de acesso deve tomar cuidado para não ser uma vítima de malwares. Confira aqui dicas quentes para evitar inconvenientes.

Que a internet foi uma das tecnologias mais difundidas e com maior impacto na vida de boa parte da população mundial, já é considerado senso comum. Atualmente, um número maior de pessoas conecta-se diariamente à rede global.

O acesso público da internet, como em lan-houses ou telecentros, é muito interessante para o crescimento cultural da sociedade, pois proporcionou a inclusão digital das classes sociais menos favorecidas financeiramente.

Por outro lado, esse compartilhamento de computadores faz com que os usuários corram sérios riscos quanto à integridade de seus dados, principalmente pela ação de malwares instalados em máquinas comunitárias.

Se você utiliza esse tipo de acesso à web, fique atento! Confira aqui
dicas quentes para se proteger contra ataques de pessoas mal-intencionadas e navegue com tranquilidade por esse território sem limites.

O BOOM DA INTERNET

A internet não é uma tecnologia tão nova quanto muitos pensam, ela surgiu na década de 60 durante a Guerra Fria e tinha finalidade bélica. Sua utilização comercial só aconteceu em meados dos anos 90.

Entretanto, a rede mundial de computadores ganha força somente a partir da virada do século IX para o XX, quando as classes A e B começaram a adquirir as caríssimas máquinas e serviços de telefonia.

De 2005 a 2007 é que a internet cai nas graças da maioria da população, as classes C, D e E. Essa parcela da sociedade obteve contato com a web principalmente pela criação de lan-houses, telecentros, cybercafés, bibliotecas digitais, entre outros.

De acordo com pesquisa do Centro de Estudos sobre as Tecnologias da Informação e Comunicação (CETIC), no ano de 2007 a maioria dos acessos à internet, próximo aos 49%, ocorriam através de pontos públicos.

Segundo o mesmo instituto, em seu levantamento mais recente, esse contexto tem mudado. A taxa de acesso em locais comunitários caiu para 40% no ano passado. Porém, ainda é uma quantidade muito significativa.

OS PERIGOS AO COMPARTILHAR O COMPUTADOR

O uso da internet sempre oferece riscos ao usuário, independentemente de onde esteja. Cautela e atenção nos sites por que transita, que tipo de softwares instala na máquina e a forma como cede dados a serviços são essenciais para a saúde da sua “vida virtual”.

O agravante na utilização de locais públicos de acesso é que você não tem controle da segurança da máquina, como antivírus, anti-spywares e firewall, bem como os cuidados dos outros usuários com aplicativos maliciosos. A exposição aos malwares é, sem dúvida, muito mais sensível e a vulnerabilidade fica evidente.
Os ataques mais comuns dos visitantes indesejados são o roubo de senhas, invasão de perfis em redes sociais ou serviços online e, o mais crítico, violação de contas bancárias. A ação desses vermes virtuais é camuflada - muito bem, diga-se de passagem - através de links, emails e até mesmo sites “fakes”. É uma armadilha mortal para usuários iniciantes e inexperientes.

OS 10 MANDAMENTOS DO USUÁRIO PÚBLICO

Se pararmos para avaliar o quanto estamos suscetíveis a ataques enquanto navegamos, nem o faríamos. Calma caro usuário, não há perigo algum que não seja amenizado - para não dizer extinguido - se tomadas as devidas precauções ao usar computadores públicos. Muito pior que se arriscar na internet é ficar sem ela.
Não sabe o que fazer para evitar problemas ao surfar pela web? Sem ideias para escapar das garras dos invasores digitais e suas armadilhas? Deixe a preocupação de lado, esse também é um dos motivos de ajudar você a conhecer cada dia um pouco mais sobre tecnologia.

História, informações e riscos à parte, vamos ao que interessa: as dicas mais quentes do momento para tornar sua navegação tranquila. Seguem os mandamentos para qualquer usuário de locais compartilhados de acesso à internet:

1º - Nunca acessarás seu Internet Banking: esse tipo de serviço online é muito visado por crackers, portanto, não acesse-os. Jamais. Será que ficou claro?!

2º - Não cobiçarás produtos na internet: evite ao máximo adquirir itens pela web, isso significa que somente realize compras ou transações online em casos de urgência!

3º - Não divulgarás dados em vão: ao usar computadores compartilhados não dissemine informações pessoais - como número de cartão de crédito, nome de usuário e senha de serviços e coisas do gênero -, seja por Messenger, email ou qualquer outro meio de comunicação online. Mantenha tais informações em sigilo nesses ambientes, a não ser que seja, extremamente, necessário tal repasse.

4º - Trocarás as senhas com assiduidade: se você usa locais públicos de acesso com frequência, troque suas senhas, no mínimo, uma vez por semana.

5º - De forma alguma salvarás suas senhas: essa é mais uma instrução enfática, NUNCA salve senhas em máquinas comunitárias. Outra boa dica é digitar uma senha errada por uma ou duas vezes, isso inibe a ação de keyloggers - aplicativos que registram o que é digitado por todo o computador. Evite, também, criar senhas óbvias, como “12345”, seu nome ou data de nascimento.

6º - Sairás de todos os serviços acessados: sempre que fizer login em um serviço ou site lembre-se de realizar o logoff em todos eles.

7º - Não seguirás os caminhos do próximo: em vez de clicar nos endereços sugeridos pelo browser, baseado no histórico de navegações anteriores, digite o endereço dos sites que pretende acessar.

8º - Atentarás por onde andas: procure serviços que possuam sistemas de acesso seguros. Para identificar se um site contém esse tipo de ferramenta basta olhar no canto direito inferior do navegador e verificar a existência de um cadeado como símbolo. Fique atento aos aspectos das páginas, se estão bem estruturadas – geralmente crackers não se empenham em elaborar sites fakes com qualidade.

9º - Não deixarás enganar-te por desconhecido: cuidado com links e arquivos de desconhecidos, não acredite em tudo que vê e lê na internet. Ao fazer download de programas ou documentos, antes de abri-los, faça um escaneamento com o antivírus.

10º - Deverás apagar seus rastros: ao terminar sua navegação, não se esqueça de limpar todos os registros deixados. Limpe o histórico do browser, apague os caches (saiba aqui como proceder) e exclua os cookies. Confira neste artigo mais informações de como limpar os dados dos navegadores.

Todo cuidado é bem-vindo para garantir que você continue utilizando essa poderosa ferramenta, chamada internet, sem sofrer qualquer problema ou prejuízo. As dicas deste artigo também servem para você usar em casa, segurança nunca é demais.
Read More

Windows 7 passa o Vista em porcentagem de mercado


Rapidamente o Windows 7 chegou a 14,8% do mercado internacional, ultrapassando o seu antecessor, o Vista.

A Janco liberou recentemente os dados da sua pesquisa sobre navegadores e sistemas operacionais no mercado, que revela que o Windows 7 tem tido um crescimento assombroso.

Menos de 7 meses depois do lançamento, o mais recente sistema operacional da Microsoft alcançou cerca de 15% do mercado, ultrapassando o seu antecessor. “O último sistema operacional que foi tão bem aceito pelo mercado como o Windows 7 foi o Windows XP”, ressalta o CEO da Janco, Victor Janulaitis, de acordo com o site PR Newswire.

As boas notícias em relação ao sistema operacional contrastam com as estatísticas do Internet Explorer que, apesar de ainda ser o navegador mais utilizado, com 67,73% do mercado, perdeu muitos usuários e está no mesmo patamar que estava em 1998, destaca o site Beta News.

Esse resultado, ressalta a Janco, pode se dever ao fato dos usuários do Windows Vista e Windows 7 serem mais propensos a instalarem dois navegadores na mesma máquina, e os utilizarem em momentos diferentes. Especula-se também que a obrigatoriedade de sugerir outros navegadores além do Internet Explorer nas versões europeias do Windows tenha afetado a dominância do IE no mercado.
Read More

Internet Explorer 9 não vai suportar vídeos em Flash


O novo navegador da Microsoft vai executar apenas vídeos em HTML5 com codec H.264.

A Microsoft anunciou na última sexta-feira que decidiu que a próxima versão do Internet Explorer não irá suportar vídeos em Flash, dando preferência à execuções em HTML5 com o codec H.264. A notícia chega logo após muitas discussões na imprensa entre Steve Jobs e a Adobe, deixando claro que o formato tem grandes chances de se tornar popular.

No entanto, o site The Register ressalta que a escolha do formato H.264 em detrimento de outros formatos, como por exemplo o Ogg Theora, pode dever-se ao fato de a Microsoft tem coautoria do formato, e recebe alguns direitos sobre o seu uso.

Os partidários do formato Ogg classificaram a declaração da Microsoft como FUD (medo, incerteza e dúvida, sigla em inglês), expressando que é preciso perceber o risco de uma escolha tão particular, explica o site Information Week.

A discussão pode se estender ainda mais nos próximos meses, quando a Google deverá lançar seu formato de vídeo open source, o VP8, conquistado com a aquisição da empresa On2.

Mais detalhes sobre a decisão da Microsoft podem ser obtidos no blog oficial do Internet Explorer pelo atalho bit.ly/d6w8lb
Read More

Como está a saúde do seu HD?


Software faz varredura e identifica possíveis problemas no disco

O HD é uma das partes mais importantes do seu computador. Só quem já perdeu um sabe o valor que ele tem... E você tem idéia de como anda a saúde do seu disco? Esse programa aqui talvez te ajude. É o GSmartControl.

O uso do GSmart é bastante simples. Depois de baixado e instalado, o programa reconhece automaticamente o seu HD. Basta clicar nele e começar a descobrir os detalhes do seu disco. O programa realiza um diagnóstico das principais propriedades do equipamento. São feitos diversos testes, a fim de checar cada função do HD. Aqui você pode saber quais são as falhas mais impactantes e até prever quando elas podem ocorrer novamente.

O software funciona com HDs de modelos ATA, conhecidos como PATA e SATA. O sistema consegue avisar sempre que uma situação fora do normal acontece no disco. Imediatamente o usuário é alertado sobre o problema e o nível crítico que ele apresenta. Ainda que ele não resolva as falhas, a aplicação oferece um bom monitoramento para o o usuário.

Se quiser aproveitar a nossa dica e saber se seu computador está precisando de um pouco mais de atenção, acesse o link que está logo abaixo desse texto e faça agora o download do programa. É de graça!

GSmartControl
Read More

Recomendação e busca: quem prevalecerá?



O debate corre solto na internet, desde a última sexta-feira, quando o Mashable publicou artigo de Yuli Ziv, fundadora e diretora executiva da Style Coalition, rede online de editores independentes de moda e estilo, apontando cinco motivos pelos quais, na opinião dela, o Google não dominará a próxima década.

Embora concorde com o fato de que dificilmente o Google continuará dominante _ afinal, a história da tecnologia está repleta de exemplos nesse sentido _ discordo de muitos dos motivos apontados por Yuli para tal. Em especial, o de que as recomendações de conteúdo prevalecerão sobre as buscas.

Na minha opinião, serão recursos complementares. E tanto Facebook quanto a Google _ e eu não arriscaria a deixar a Micsrosoft de fora _ têm todas as condições de promover as mudanças estrtuturais necessárias para que este cenário aconteça, combinando tecnologias usadas hoje para descobrir e partilhar conteúdos, com outras, ainda em gestação, para catalogá-los de forma cada vez mais inteligente, possibilitando a construção de complexas bases de conhecimento, personalizadas.

Aliás, cabe aqui abrir um parêntese. As ferramentas de busca e de recomendação foram tema de dois dos melhores estudos recém premiados na The World Wide Web Conference 2010, realizada semana passada em Raleigh, Carolina do Norte, para debater o futuro da rede. A WWWC reúne os principais pensadores da Web para revelar pesquisas de ponta e apontar tendências para a Internet e a própria Web. Fecha parêntese.

Ao afirmar que as recomendações de conteúdo prevalecerão sobre as buscas, Yuli parte do princípio de que haverá uma geração de internautas que se contentará em receber, de bandeja, informações filtradas por amigos e sistemas, conhecedores de seus interesses e preferências. Ou seja, em vez de tomar a iniciativa, iniciar o movimento da busca, essa geração se limitará simplesmente receber oportunidades, sem esforço, pulando etapas. E cita como exemplo de ferramentas que já estariam proporcionando essa mudança de comportamento o Facebook e o Twitter.

“(…) Assumindo que você tenha criado uma rede de pessoas com interesses semelhantes, você pode nunca ter que procurar o conteúdo novamente”, diz ela.

Esquece que, tanto no Twitter quanto no Facebook, recebemos de nossos amigos e seguidores recomendações de conteúdo que não necessariamente são do nosso interesse.

Redes sociais como o Twitter estão sim, nos proporcionando a possibilidade de agirmos cada vez mais como curadores de conteúdo e permitindo personalizações instatantâneas. Mas também _ e tenho dito isso om freqüência – abrindo novas possibilidades de conhecimento, geradas a partir da interação direta ou indireta com pessoas fora do nosso círculo de amizade: seguidores de amigos, amigos de amigos…

Se a mudança comportamental for da magnitude prevista por Yuli, a ponto de abandonarmos a curiosidade e o movimento da busca para descobrir as coisas apenas através de nossas redes sociais focadas em interessem em comum, podemos estar correndo o risco de nos tornamos ilhas de unanimidade, de baixo pensamento crítico, sem espaço para reflexão ou dúvida.

O que, por ironia, pode acabar nos levando a um individualismo sem individualidade, sem identidade, como afirma Miguel Reale Júnior em excelente artigo publicado sábado, 01 de Maio, no Estado de São Paulo, gerando um paradoxo.

Estaremos aceitando ser produto do que fomos e fizemos, e também a instauração do império do instante, sem perspectiva ou interesse por passado e futuro, apenas pelo presente.

“Podemos criar uma sociedade em rede e mais eficiente, conectando pessoas que pensam igual”, diz ela.

Podemos, sem dúvida. Mas sem abrir mão da diversidade. Caso contrário estaremos diante de um cenário assustador. Prefiro a sabedoria de Nelson Rodigues, para quem toda unanimidade é burra! E a eterna construção de hipóteses, de onde nasce a busca.
Read More

Conheça os diferentes tipos de vulnerabilidades e ataques de hackers


Segurança da informação pode ser um assunto complicado. São muitos termos diferentes. Para elucidar um pouco como ataques e vulnerabilidades funcionam, preparamos para voçê um “dicionário” em uma linguagem simples para que você possa entender o funcionamento de algumas brechas e saber como hackers ganham acesso não autorizado a diversos sistemas. Confira.

Se você tem alguma dúvida sobre segurança da informação (antivírus, invasões, cibercrime, roubo de dados etc.), vá até o fim da reportagem e utilize a seção de comentários.

Buffer overflow

É quando “dado vira código”. Programas de computador processam dados a todo o momento. Por exemplo, um programa de mensagem instantânea processa dados quando recebe uma mensagem. Um processador de texto processa dados quando você digita ou quando insere uma imagem. Um reprodutor de mídia processa dados quando você abre um arquivo MP3 e assim por diante.

Para processar tudo isso, os programas precisam reservar um espaço de memória para armazenar os dados a serem processados. Um hacker pode fazer com que o programa reserve menos espaço de memória do que o necessário e tente colocar os dados naquele espaço mesmo assim. O resultado é um problema grave, pois aquilo que não couber vai “vazar” no resto da memória.

Há diversos truques que os hackers usam para fazer com que os dados acabem caindo em um espaço de memória usado por códigos. Código é aquilo que o CPU do computador vai processar, ou seja, é programa. Com isso, os dados se transformam em código. E código pode fazer qualquer coisa no sistema. É o tipo de brecha mais grave que existe nos programas de computador. Tecnologias como Prevenção de Execução de Dados (DEP) tentam prevenir justamente que esse tipo de erro resulte em dado se transformar em código executável, como o próprio nome sugere.

Se você não consegue visualizar o problema, é o mesmo que acontece quando você coloca mais água do que cabe em uma garrafa. O líquido cai onde não devia. O “líquido”, nesse caso, são dados. E ele espirra e cai na “garrafa” dos códigos, que vai ser levada pelo processador.

Brechas que permitem que arquivos de dados como imagens, vídeos e texto instalem vírus no PC são geralmente buffer overflows.

Clickjacking

Uma página maliciosa pode fazer o navegador carregar páginas legítimas de modo invisível. Botões nessa página maliciosa na verdade escondem botões na página verdadeira. Se o usuário clicar no botão, na verdade o botão na página carregada “por baixo” é que será clicado. Com isso, é possível, por exemplo, que alguém envie mensagens no Twitter ou envie links no Facebook ou no Twitter como se fosse você.

O ataque é possível porque o usuário faz login nesses sites e geralmente fica logado enquanto navega por outras páginas.

Condição de corrida

O que acontece quando dois usuários tentam comprar a última unidade da mesma mercadoria em um site de comércio eletrônico? Se o evento realmente ocorrer ao mesmo tempo, ambos os usuários podem acabar recebendo a mensagem de que o item está disponível, embora só um cliente possa ser atendido. Esse tipo de erro é chamado de condição de corrida.

Condições de corrida costumam resultar em dados corrompidos. Em alguns casos, uma condição de corrida pode resultar em problemas de segurança. Por exemplo, um jogo de computador tinha um problema em que uma condição de corrida fazia com que o sistema antipirataria do jogo multiplayer não funcionasse corretamente.

Cross-site Scripting (XSS)

Trata-se de uma falha em sites web. XSS permite que um indivíduo malicioso execute código Javascript no site alvo no contexto do usuário. Em muitos casos, é uma falha sem graves consequências. Em outros, pode permitir roubo de credenciais de acesso ou até execução de comando em nome de um administrador.

XSS persistente é aquele existente em itens de formulário (como recados no Orkut). XSS não persistente depende de itens variáveis que não são armazenados pelo site (como um termo de busca).

XSS ficou em segundo lugar no top 10 da OWASP para 2010, uma lista que busca identificar quais são as brechas mais graves em sites de internet.

Cross-site Request Forgery (XSRF)
Semelhante ao clickjacking, porém mais grave. O XSRF não depende que o usuário clique em um link, pois o site alvo tem uma falha que permite ao criminoso executar o comando diretamente. Ataques de XSRF são muitos simples de serem realizados, porque podem estar escondidos em um carregamento de imagem. Por exemplo, recados em redes sociais que permitem imagens ou posts em fóruns podem criar um ataque XSRF a sites que tiverem a vulnerabilidades.

XSRF ficou em quinto lugar no top 10 da OWASP da 2010, uma lista com os tipos de brechas considerados mais graves em sites de internet.

Denial of Service

Ver negação de serviço.

Directory Traversal

É quando um site ou aplicativo lê algum arquivo do servidor ou do computador, mas permite que o usuário identifique qual o arquivo será lido. O programa ou site deveria realizar uma verificação para saber se o usuário tem permissão para ler aquele arquivo, mas não o faz, permitindo que o arquivo seja lido.

A falha recebe esse nome porque, na maioria dos casos, o programa ou site quer ler apenas arquivos de um determinado diretório, mas permite que o usuário coloque ../ no caminho do arquivo. ../ ou ..\ significa “diretório acima”. Com “../” suficientes, o programa estará lendo arquivos na raiz do disco.

Tente acessar o arquivo “C:\Arquivos de Programas\..\”, por exemplo.

O site de uma operadora de telefonia brasileira apresentou uma brecha desse tipo que permitia ler o arquivo do servidor onde eram armazenadas as senhas de acesso.

Drive-by download

“Drive-by download” é um tipo de ataque em que uma página web tenta fazer com que o usuário baixe arquivos de uma forma “simplificada” ou diferente da padrão. Normalmente, a página maliciosa faz isso utilizando brechas no navegador do internauta.

Outros tipos de “drive-by download” são applets do Java elevados, ClickOnce e ActiveX. Todos permitem a execução de programas no PC com apenas um clique do usuário, quando o normal seriam pelo menos dois (um para o download, outro para executar o programa) ou três (um adicional para confirmar a execução de software, que existe em navegadores atuais).

ActiveX é pouco usado por criminosos, porque recebeu modificações. Vários cliques são necessários para instalar um ActiveX em versões atuais do Internet Explorer.

Elevação de Privilégio

Acontece quando um programa consegue ler arquivos ou executar comandos sem autorização adequada. São falhas que existem em componentes importantes do sistema operacional.

O Windows teve uma falha muito grave desse tipo que recebeu o nome de “shatter”. O problema foi resolvido no Windows Vista, mas programas que dependem do comportamento que permitia o ataque shatter apresentam um funcionamento diferente; o Windows exibe um aviso e depois a área de trabalho some para proteger o PC da possível exploração da falha.

Envenenamento do cache DNS

Ataque complexo que consiste em enviar uma resposta falsa para um servidor de DNS. Depende de uma série de fatores.

Man in the Middle (MITM)

Dá-se o nome de “man in the middle” (“homem no meio”) a um ataque em que o hacker fica entre a conexão do usuário com o site legítimo que ele quer acessar. Com isso, ele consegue alterar ou ler as informações que o usuário envia.

Ataques de “homem no meio” são usados para inutilizar dicas de proteção como aquela que sugere digitar uma senha errada em sites falsos de banco. Se o site falso ficar entre o site legítimo e o usuário, uma senha errada vai retornar erro como no site legítimo.

Negação de Serviço

Um hacker tenta sobrecarregar o computador com informações ou conexões inúteis para impedir que as conexões verdadeiras sejam processadas.

Se acontecesse no mundo real, um ataque de negação de serviço seria como encher uma loja de pessoas que não vão comprar nenhum produto para impedir que os clientes de verdade possam entrar.

Também é chamado de negação de serviço um tipo de problema em programas que permite a um invasor travar o software facilmente.

Pharming

Redirecionar um site para outro. Depende de algum outro ataque, normalmente envenenamento de cache DNS ou alteração do arquivo hosts da vítima.

Existe também o ataque de drive-by pharming. É o uso de erros de configurações em modems ADSL e roteadores para alterar a configuração de servidores DNS a partir de uma página web por meio de ataques de XSRF e clickjacking.

Phishing

Fraude virtual que chega por e-mail. Tenta convencer o usuário de que ele precisa preencher um formulário com seus dados ou clicar em um determinado link para baixar um arquivo. O arquivo, é claro, será um vírus. E o site, se acessado, roubará todos os dados digitados.

Variações incluem Vishing (golpes por telefone; o ‘v’ é de voz) e fraudes nigerianas.

Remote File Inclusion/Injection (RFI)

Uma vulnerabilidade gravíssima em sites. Páginas de internet costumam resultar de um conjunto de arquivos diferentes. Por exemplo, o cabeçalho, o menu e o rodapé são armazenados em arquivos separados e, quando a página é construída pelo servidor, esses arquivos são colocados juntos e enviados como um só ao navegador do internauta.

Quando o site é vulnerável a um ataque de RFI, o indivíduo malicioso pode indicar algum arquivo para ser incluído remotamente, ou seja, de fora do servidor e sob seu próprio controle. O que acontece é o mesmo do buffer overflow – hacker pode executar comandos no servidor, permitindo a invasão completa do equipamento.

Sniffing
Grampo eletrônico. É quando o hacker pod ever tudo o que está trafegando na rede. É um verbo: “snifar”, “snifou”, “snifando”.

Spoof
Spoof é fingir ou falsificar. Também é verbo. “Spoofado”, “spoofar”. MAC, ARP e IP spoof são os mais comuns, e trata-se de, respectivamente, forjar endereços MAC, ARP e IP falsos.

O MAC Spoof é muito fácil de fazer e, às vezes, é necessário por causa de alguma incompatibilidade da rede. MAC (Media Access Control) é o endereço físico dos equipamentos de rede, como modems, roteadores e placas. Alguns equipamentos têm no painel de administração uma opção que permite alterar o endereço MAC para qualquer outro.

IP Spoof é o uso de um IP falsificado. Na maioria das vezes só pode ser realizado via UDP, porque o protocolo TCP faz uma verificação (chamada de handshake). É o IP Spoof que permite ataques como o envenenamento de cache do DNS.

ARP Spoof ou ARP poisoning permite ataques de homem no meio ou sniffing porque muda a maneira como uma rede direciona suas conexões.

SQL Injection

Outra brecha em sites de internet. SQL é a linguagem usada por bancos de dados para realizar consultas e alterar dados. Um ataque de SQL Injection permite que o hacker altere de forma maliciosa os comandos que são passados ao banco de dados. Com isso, é possível ler ou alterar dados que normalmente não poderiam ser lidos e alterados. Em muitos casos, é possível ler ou alterar as senhas que estão armazenadas no banco de dados, o que resulta em uma invasão completa do site.
Se algum termo ainda não ficou claro ou você leu sobre algum outro tipo de ataque que não foi explicado, deixe sua observação na seção de comentários.
Read More
Mello Comunicação Visual

* Banner

* Fachadas

* Plotter recorte ( adesivos personalizados )

* Convites, papel arroz personalizado.

* Papel adesivo e fotográfico.

* Assessoria

* Desenvolvemos Site e Blogs perssonalizados

* Software perssonalizados

* Formatação

* Instalação de programas e Sistemas Operacionais

* Implementação de rede ( cabeada / Wirelles )

* Instalação de hardware e software

* Limpeza

* Recuperação de dados

* Manutenção em geral

* Contrato de Manutenção de Micros

* Escolas
* Empresas
* Escritórios
* Residências


Rapidez,eficiencia,qualidade e tecnologia.

Profissional capacitado para melhor lhe atender e cuidar da vida útil do seu PC

Email - manu.tencaodepc@hotmail.com
caxamello@hotmail.com
Twitter.com/Alex_Melllo

Tel - 73 8804 5310
73 9125 4509