SlideShare uma empresa Scribd logo
DESENVOLVIMENTO DE EXPLOITS
Nara Barros da Cruz Silva¹
Resumo: Este trabalho procurou explicar e demonstrar de forma pratica como
funcionam os ataques a sistemas, os exploits, como é realizado o trabalho dos
pentesters e como são feitos os pentests, quando e como ocorrem os
bufferoverflows, códigos que demonstrem os processos e fatos reais
comprovantes da gravidade das vulnerabilidades dos sistemas.
Palavras-chave: Exploit, bufferoverflow, pentest, malware.
Introdução
As falhas nos sistemas são fatores críticos de sucesso para que as invasões
acontecam, facilitam o trabalho de engenharia social e até mesmo dão indicios
de como podem ser desenvolvidos exploits que consigam através das mesmas,
capturar todo um sistema e suas informações, mesmo que confidenciais,
existem inumeros tipos de falhas que facilitam tais capturas, são elas:
- Falhas de projeto: Ocorrem de acordo com as más especificações do projeto,
que resulta no não funcionamento.
- Falhas nas instalações: Ocorrem em maquinas e equipamentos que possuem
manutenções não efetuadas corretamente ou periodicamente.
- Falhas de pessoal: Erros cometidos pelos funcionarios, falta de execução de
alguma etapa do projeto, erros cotidianos causados pelos funcionarios
envolvidos.
- Falhas de fornecedores: Não cumprimentos de prazos de execuções, serviços
e resultados do projeto.
- Falhas de clientes: Mal uso dos serviços, produtos e sistemas.
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
De acordo com as falhas já predispostas, pode-se entender algumas das
principais razões que facilitam o trabalho dos exploits²
Existe também a caracterização das diferenças entre defeitos, erros e falhas,
que são, respectivamente, imperfeições dos sistemas, falhas instantaneas e
retornos inesperados.
Para lidar com sistemas, falhas e interrupções sem avisos prévios, é
recomendavel o uso assiduo de planos de contingencia, que são eles um tipo
de plano preventivo, preditivo e reativo, portadores de uma estrututura
estrategica e operativa que exercerá controle em uma situação de emergencia,
minimizando as consequencias negativas, o plano propõe uma série de
procedimentos alternativos em relação ao funcionamento de uma organização,
sempre que qualquer das suas funções usuais se prejudica por uma
contingencia externa ou interna.
Como tratar das falhas dos sistemas:
Sistemas de ambientes virtuais, fisicos, dependentes de software ou hardware
podem falhar a qualquer instante, retornando resultados incorretos, pausas
inesperadas, falhas arbitrarias e bizantinas
“Em um ambiente de alta disponibilidade
deve-se evitar o Single Point Of Failure
(SPOF) ou Ponto Único de Falha. Ter um
único componente aumenta
consideravelmente o risco de se obter um
problema e o SPOF é um paradigma a ser
evitado a todo custo. Cada servidor deve ter
um subsistema redundante para cada
componente, no caso do servidor principal
falhar ou parar de responder às solicitações.
Os subsistemas críticos entram em
funcionamento de forma a acatar os
requerimentos dos clientes, até o momento
em que o servidor principal volte a
responder (Asterisk e Alta Disponibilidade,
2008). “
No contexto de ataques cibernéticos, tem-se observado que a grande maioria
dos profissionais de Segurança da Informação das empresas, trabalha para a
prevenção a partir de uma ótica defensiva e somente tomam alguma ação após
as vulnerabilidades serem exploradas e relatadas. Quando se trabalha a partir
de uma ótica ofensiva visualiza-se ser possível descobrir as vulnerabilidades
de forma proativa, por meio do uso de ferramentas que os atacantes
normalmente utilizam para descobrir vulnerabilidades em suas redes.
O profissional ou a empresa que adotam esse conceito para criar a defesa de
sua rede fazem com que essa atividade seja mais efetiva e com isso diminui
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
consideravelmente os riscos da parada do negócio da empresa como, por
exemplo, um sistema importante ou até um site de vendas.
Tolerancia a falhas/Dependabilidade…
O termo em questão “Tolerancia a falhas” foi criado por Avizienis no ano de
1967, após isso, foi amplamente utilizado em pesquisas academicas que dizem
respeito a sistemas suscetiveis a erros, falhas e panes.
O termo dependabilidade é uma tradução do inglês “dependability”, que diz a
respeito da qualidade do serviço
“Dependabilidade é a propriedade que
define a capacidade dos sistemas
computacionais de prestar um serviço
que se pode justificadamente confiar.
Entre os atributos estão:
confiabilidade, segurança (safety),
disponibilidade e mantenabilidade.”
Fonte:
https://aprender.ead.unb.br/enrol/index
.php?id=2107
PENTEST
O Teste de Intrusão (do inglês "penetration test" ou pentest"), também traduzido
como "Teste de Penetração", é um método que avalia a segurança de um
sistema de uma maquina ou de uma rede corporativa, simulando um ataque de
uma fonte duvidosa. O processo envolve uma análise nas atividades do
sistema, que envolvem a busca de alguma vulnerabilidade em potencial que
possa ser resultado de uma má configuração do sistema. Todas as análises
submetidas pelos testes escolhidos são apresentadas no sistema, junto com
uma avaliação do seu impacto e muitas vezes com uma proposta de resolução
ou de uma solução técnica.
Etapas de um PENTEST:
O pentest inicia com a fase de pré-compromisso, a qual envolve conversar com
o cliente sobre os objetivos do penteste, definir o escopo (a extensão e os
parâmetros do teste), e assim por diante. Quando um pentester e o cliente
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
acordam sobre o escopo, o formato do relatório e outros tópicos, os testes
começam.
Na fase de coleta de informações, o pentester busca por informações
disponíveis sobre o cliente e identifica formas para se conectar aos sistemas.
Na fase de modelagem das ameaças, um pentester utiliza as informações para
determinar para o cliente se isto permite uque haja uma invasão no sistema.
Esta avaliação permite o pentester desenvolver um plano de ação e um método
de ataque.
Antes do pentester poder iniciar os ataques aos sistemas, ele irá realizar uma
análise de vulnerabilidade. Nesta fase, ele tentará descobrir vulnerabilidades
nos sistemas que podem ser úteis na fase de exploração.
A última fase é a emissão do relatório, onde o pentester resume o que foi
encontrado, tanto na visão executiva, como na técnica e predispõe o todo em
um resumo.
Quem são os pentesters…
Os pentesters são analistas que verificam sistemas com o intuito de minimizar
ou anular as possibilidades de ataques aos mesmos, avaliando os erros,
simulando invasões, entre outros procedimentos que resultam na maior
segurança, credibilidade, integridade e confiabilidade dos sistema, de modo
que, funcione corretamente sem possibilidade de perda de dados, informações
confidenciais e a utilização em si.
Os pentesters trabalham em equipes que realizam as seguintes etapas:
-Reconhecimento: A equipe realiza o levantamento das informações disponiveis
e já captadas sobre a organização em questão, tais como os serviços
prestados, os gestores, gerentes, diretores, todos os responsaveis legais e
assegurados pelo projeto em si, entre outros detalhes coletados.
-Varredura: É realizada uma varredura do que está na rede, como range de IP,
quais os servidores presentes, quais sistemas operacionais são utilizados,
quais portas abertas, etc.
-Obtenção de acesso e exploração: Com tudo que já foi identificado e definido,
o pentester fará a exploração de cada item em busca das vulnerabilidades
existentes, com o uso de exploits, identificará quais serviços estão
vulneraveis e que tipo de informação pode ser obtida.
Seguem algumas ferramentas utilizadas pelos Pentesters:
O Shodan é um rastreador de qualquer dispositivo conectado a internet,
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
fornecedor de detalhes comprometedores, é capaz de encontrar webcans,
roteadores, telefones, servidores, entre outros sistemas em todo o mundo.
O Metasploit é o framework destinado a encontrar vulnerabilidades de
seguranças conhecidas, formula grandes estrategias para a exploração dos
sistemas, é baseado no sistema Ubuntu.
É uma das melhores ferramentas para scanner de vulnerabilidades web,
analisa e captura todo o trafego de protocolos da rede.
A ferramenta mais utilizada para realizar varredura na rede e encontrar quais
dispositivos estão conectados e quais portas estão abertas, realizando
automaticamente uma auditoria na rede.
O que são exploits...
Exploit é basicamente um código desenvolvido uma linguagem específica para
seu objetivo e de acordo com seu alvo, que ao se aproveitar de uma falha do
software alvo causar um comportamento acidental ou imprevisto na execução
do software ou hardware. Os alvos podem ser tanto em computadores quanto
em outros aparelhos eletrônicos, até mesmo um marca-passo pode ser um
possível alvo.
Codificado avaliar uma possível vulnerabilidade ou para fins maléficos, um
exploit pode dar ao atacanteo controle parcial ou total de um sistema,
permitindo o acesso ao dispositivo seja um computador ou qualquer outro
dispositivo.
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
Diferente de outros malwares, os exploits não necessita que o usuário clique
em um determinado link ou faça o download para a execução de algum
arquivo. Sua execução pode ser local ou remota, e em ambas as situações
após a sua execução o atacante ganhará o que é conhecido com shell, que é
uma forma de interagir com o dispositivo que executava o software atacado.
Após o atacante ganhar o shell, acesso privilegiado de admin ou root, é
possível interagir com o dispositivo normalmente, e assim acessar arquivos,
obter senhas, espionar a atividade dos usuário de uma rede, roubar dados
bancários, etc.
"Os exploits podem ser
desenvolvidos em diversas
linguagens de programação, as
mais utilizadas são: C, perl e
python para sistemas e
programas e php para sites, a
escolha da linguagem para
criação de um exploit irá
depender da facilidade e
conhecimento do programador
em uma determinada
linguagem, além de levar em
consideração o quanto ela
pode ser utilizada para a
exploração da vulnerabilidade."
Fonte:
http://www.mundodoshackers.c
om.br/termos-hacker-exploits
Zeroday
O exploit zeroday ou dia de zero, é um exploit para uma falha desconhecida ou
não divulgada. Um código zeroday possui alto valor no mercado e há grandes
empresas que compram estes exploits bem como a falha catalogada, já que ter
a dianteira no mercado de segurança da informação pode causar grande
impacto na estratégia do negócio, por colocá-lo em grande risco.
"Falhas do tipo zero-day
referem-se brechas de
segurança que atingem
softwares. Trata-se de uma
vulnerabilidade de segurança
desconhecida do público e do
próprio desenvolvedor de um
programa. Isso significa que, a
partir do momento em que a
falha é detectada, o fabricante
do software tem efetivamente
“zero dias” para produzir uma
atualização que corrija o
problema, impedindo a
exploração por criminosos
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
antes disso. “ Fonte: Blog
TechTudo
Buffer
Em programação, buffer é uma variável (também conhecida como array ou
vetor), um local definido dentro da memória que armazena uma quantidade X
de bytes. À exemplo, um buffer que tenha capacidade de armazenar 10 bytes,
só armazena 9 caracteres (cada caracter sendo 1 byte) já que o último precisa
ser o caracter nulo para o programa saber que a palavra termina ali.
Então esse código em C estaria correto:
char buffer[10] = {'S', 'E', 'G', 'U', 'R', 'A', 'N', 'Ç', 'A', '0'};
Uma variável denominada buffer que tem 10 bytes de capacidade de
armazenamento recebe uma palavra de 9 caracteres finalizando com o ('0').
A partir do momento que se armazena mais que 10 caracteres, ocorre o buffer
overflow! A variável copia somente os 10 primeiros caracteres e o resto
estoura, ou transborda, já que não comporta mais.
E o resto da sequência após o 10º byte não é descartado, ele sobrescreve o
que estiver na memória após a varíavel.
Estouro de pilha
Um estouro de pilha é um erro de programação que ocorre no momento em
que o programa tenta alocar mais memória na pilha de chamada do que o que
há disponivel para o processo, é um erro que faz com que a execução do
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
sistema seja interrompida imediatamente, e usualmente é o maior erro de
projeto.
A pilha é a seção de memória que é designada para armazenar as funções do
programa, seus tamanhos, detalhes, e técnicas são variaveis de acordo com a
linguagem de programação que está sendo utilizada, o compilador, o sistema
operacional, o tipo de processador, entre outros detalhes que o programador
deve se atentar.
Bufferoverflow
O bufferoverflow é um outro tipo de vulnerabilidade... Na programação, o buffer
é uma variavel que armazena bytes, e quando a quantidade ultrapassa o limite,
há o transbordamento de dados, denominado bufferoverflow.
Um bufferoverflow ou transbordamento de dados ocorre quando determinado
programa excede o uso de memoria pre determinado pelo sistema operacional,
essas falhas são reaproveitadas para executar codigos capazes de controlar o
computador, o fato ocorre a partir do conhecimento de programação e da
noção de arquitetura do sistema. De acordo com os fatores já mencionados,
estouro de buffer e arquitetura do sistema, o estouro ocorre baseado no
processador, onde a vulnerabilidade é explorada e o aplicativo executado, seja
ele de 32 ou 64 bits, sendo um programa desenhado e pré definido para
estipular um tamanho maximo para dados recebidos, garantindo que esses
valores não sejam superados.
“Buffer overflow é quando de
alguma maneira é inserido
mais dados de entrada do que
esperado pelo seu programa,
isso causa um estouro de
memória comprometendo a
execução do programa, isso
permite sobrescrever a
memória que permite utilizar de
endereços para execução de
códigos arbitrarios pelo SO.”
Fonte: Blog Stack Overflow
De acordo com a imagem a seguir, é demonstrado didaticamente o estouro de
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
buffer:
Existem três tipos mais conhecidos de ataques a vulnerabilidades utilizando do
buffer overflow:
• Buffer overflow baseado em pilha: É a técnica de exploração mais simples,
funciona a partir da alteração do estado da pilha durante a execução do programa
para direcionar a execução para o código malicioso contido no buffer estourado
• Buffer overflow baseado em heap: Mais difícil de explorar, por causa da
disciplina de acesso à heap (blocos não contíguos, fragmentação interna). Deve-
se estourar o buffer armazenado na área da heap em direção ao endereço de
retorno na pilha, para direcionar a execução para o código malicioso que se
encontra no buffer estourado;
• Buffer overflow de retorno à libc: Alteram o fluxo de execução pelo estouro
de algum buffer na pilha ou heap, para algum trecho de código armazenado no
segmento de texto do programa. Tipicamente este trecho de código é alguma
chamada de função comumente utilizada da biblioteca padrão libc, como as
chamadas de execução arbitrária de comandos (funções da família exec(3)). Este
tipo de ataque tem sido comum após a inclusão de patches nos sistemas
operacionais que impedem a execução de código na pilha, heap ou região de
dados.
Segue uma demonstração de código que realiza tais procedimentos:
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[]){
char buffer1[8] = {'B','U','F','F','E','R','1','0'};
char buffer2[8] = {'B','U','F','F','E','R','2','0'};
printf("n[ANTES] Buffer2 contem: %sn",buffer2);
printf("[ANTES] Buffer1 contem: %snn",buffer1);
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
strcpy(buffer2,argv[1]);
printf("[DEPOIS] Buffer2 contem: %sn",buffer2);
printf("[DEPOIS] Buffer1 contem: %snn",buffer1);
return 0;
}
OWASP
O Owasp é uma organização mundial sem fins lucrativos, focada em melhorar
somente a segurança do software, tornando-a visivel, para que os usuarios e
organizações possam ter tomadas de decisões mais bem tratadas e
informadas. A Owasp emite ferramentas de software e documentação
baseadas no conhecimento prévio e pleno sobre a segurança de aplicativos, e
todas as pessoas, organizações, usuarios, equipes podem usufruir dos dados,
pois todos os materiais estão disponiveis sob uma licença de software livre e
aberta, predispostos no blog OWASP “www.owasp.org”
“Open Web Application Security
Project (OWASP) é uma
comunidade aberta, dedicada a
capacitar as organizações a
desenvolver, adquirir e manter
aplicações confiáveis. No
OWASP se pode encontrar,
grátis e de forma aberta.”
Fonte: Owasp.org
Casos de ataques:
"A vulnerabilidade no Skype foi testada copiando e colando um arquivo de
imagem especialmente criado na caixa de mensagens do software. Quando a
imagem foi detectada na área de transferência dos dois PCs e transferida, o
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
buffer overflow ocorre causando os erros no software que podem ser
explorados pelo atacante.
A vulnerabilidade pode ser explorada remotamente e localmente. Outro detalhe
é que ela pode ser explorada mesmo em contas de usuário sem privilégios
administrativos."
Fonte: R7 Noticias
"É 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."
Fonte: G1, o portal de noticias da Globo.
"Em vídeo, ele aparece explicando o passo a passo de uma invasão desse tipo
– analisar sistemas operacionais ou softwares instalados em busca de falhas e,
uma vez que uma delas é encontrada, desenvolver um programa que possa
explorá-las. Em alguns casos, a brecha é tão simples que apenas poucos
minutos de programação são necessários para realizar a invasão, como no
caso do vídeo, em que o vetor usado conta com apenas 65 linhas de código.
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
No caso da exibição, a vulnerabilidade utilizada por Geohot foi um
“transbordamento de dados”, ou “buffer overflow”. Trata-se de um caso de
violação de segurança causada por um aplicativo que escreve dados acima do
limite imposto para armazenamento temporário na memória. Isso pode causar
desde problemas como travamentos ou comportamento irregular até brechas
como a exposta, e é uma falha mais comum do que se imagina."
Fonte: CanalTech
“O ataque hacker recentemente sofrido pela Sony Pictures vai deixar marcas
profundas nos registros históricos da empresa. Além dos filmes inéditos que
foram distribuidos gratuitamente para toda internet, muitas informações
confidencias também foram vazadas, preocupando muitos os “chefões” e todos
os outros funcionários da companhia. Porém, essa investida sofrida pela
subsidiária da japonesa Sony pode ser muito maior do que todos
imaginávamos.“
Fonte: TecMundo
Segundo Singel até mesmo um usuário
cuidadoso, que mantém anti-vírus
atualizado e
preocupa-se com o acesso a páginas
suspeitas, pode tornar-se vítima de um
ataque como esse.
Esse mesmo indivíduo, quando acessou em
setembro de 2006, um blog hospedado pelo
HostGator (Grande provedor na Califórnia),
foi direcionado para um site que explorava
um
bug no antigo formato de imagem da
Microsoft e teve um malware instalado em
sua máquina(SINGEL, 2007).
CONCLUSÃO
Os erros de buffer estão contidos nas capacidades de armazenamento
(memórias) dos sistemas, quando exploradas a fim do estouro de buffer, são
inseridos nos mesmos mais caracteres ou informações do que a capacidade
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
real, a fim de paralisar o sistema, findando a sua execução a fim de deixa-lo
vulneravel e livre para ataques, explorações, extrações de dados, variaveis,
funções e todo tipo de capacidade interna do mesmo. Essa vulnerabilidade é
conhecida como buffer overflow.
A maioria das vulnerabilidades de buffer overflow acontece devido a erros do
programador, quando o mesmo não verificava com antecedência os limites do
buffer ao utilizá-lo. Um exemplo de código vulnerável pode ser visto abaixo:
“#include
#include
int main( int argc, char **argv )
{ char buf[5]; strcpy( buf, arg[1] );
return 0; }“
O programador de sistemas deve se manter sempre atento a erros comuns e
evita-los, por exemplo, comandos que podem gerar o erro de bufferoverflow,
como strcpy, que deve ser substituído por strncpy, entre outros do mesmo
segmento. A partir do instante que se inicia um projeto executável, deve se
tomar todo cuidado possível para que o mesmo não esteja vulnerável a
ataques do gênero, o cuidado se deve desde as variáveis declaradas até a
interface.
Os exploits são conjuntos de variáveis executáveis que retornam em pequenos
sistemas capazes de explorar vulnerabilidades como as mencionadas no
artigo, como estouro de buffer, entre outros defeitos encontrados no software
que podem ser tratados como uma falha capaz de aderir a outro sistema
executável que abstrai dados, informações e valores reais contidos.
A partir das vulnerabilidades predispostas, do conhecimento prévio a respeito
de exploits, explorações, linguagens de programação, tem-se o pentest e os
pentesters, que são desginados para estudar as vulnerabilidades, conhece-las,
prever os tipos de exploits que são capazes de se adentrarem em falhas
potenciais e então trabalhar para a segurança defensiva, onde previne-se
possíveis ataques e assegura-se sistemas confidenciais, dados, informações,
empresas, organizações e afasta-se hackers e programadores do sistema em
questão.
DEVELOPMENT OF EXPLOITS
Abstract: This work tries to explain and to demonstrate in a practical way how
the system attacks, the exploits, how the work of the pentesters and how the
pentests are done, when and how bufferoverflows occur, codes that
demonstrate the actual processes and facts that prove the seriousness of
system vulnerabilities.
Keywords: Exploit, bufferoverflow, pentest, malware.
Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho
orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica
do Centro Universitário de Bauru no ano de 2017.
REFERENCIAS
“Saiba o que são falhas de segurança 'dia zero' e como se proteger delas.” G1,
O portal de noticias da Globo.
<http://g1.globo.com/Noticias/Tecnologia/0,,MUL1128175-6174,00-
SAIBA+O+QUE+SAO+FALHAS+DE+SEGURANCA+DIA+ZERO+E+COMO+S
E+PROTEGER+DELAS.html>
“7 Ferramentas poderosas utilizadas por pentesters profissionais.”
OnebitCode.com
<http://onebitcode.com/7-ferramentas-poderosas-utilizadas-por-pentesters-
profissionais/>
“Conheça os diferentes tipos de vulnerabilidades e ataques de hackers.” G1, o
portal de noticas da Globo
<http://g1.globo.com/tecnologia/noticia/2010/05/conheca-os-diferentes-tipos-
de-vulnerabilidades-e-ataques-de-hackers.html >
“Hacker do iPhone mostra como funciona uma invasão de computadores”
CanalTech
<https://canaltech.com.br/hacker/hacker-do-iphone-mostra-como-funciona-
uma-invasao-de-computadores-73441/>
“Termos Hakcers e Exploits” Mundo dos Hackers
<http://www.mundodoshackers.com.br/termos-hacker-exploits>
Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software
elaborados por hackers que tiram proveito de uma vulnerabilidade.
A ENGENHARIA SOCIAL VISTA DO NOSSO COTIDIANO
Nara Barros da Cruz Silva1
Resumo: Este trabalho procurou identificar as consequências mais importantes da
engenharia social, como é aplicada, em quais casos é utilizada, como é feita no
nosso dia a dia e uma básica prevenção à respeito. A concepção de engenharia
social deu origem a uma série de invasões, ataques a sistemas, empresas e até
grandes organizações. Até os dias atuais onde a segurança é grandemente visada e
a população conscientizada à respeito, pode-se verificar um alto índice de invasões
e acessos ilegais realizados por pessoas e ou grupos especializados e com
inúmeras táticas de retirada de informações e dados confidenciais de empresas-
alvo. Através de alguns exemplos reais e trechos de relatos será feita a
demonstração de todo o contexto, mostrando como age a vítima, o invasor e a
organização.
Palavras-chave: Engenharia social, invasão, vítima, ilegal, acesso.
Introdução
A Engenharia Social é uma das técnicas mais conhecidas e utilizadas por
Crackers para obter acesso não autorizado a sistemas, redes ou informações com
grande valor estratégico para as organizações e conseguir o que lhes é interessante.
Os Crackers que utilizam desta técnica são conhecidos como Engenheiros Sociais.
O uso dessa tática tem como característica principal a grande capacidade de
persuasão, convencimento e proximidade com contatos internos e envolvidos ao
sistema, organização ou projeto que se quer envolver, uma das táticas que mais
geram vulnerabilidade nos usuários que estão lidando com os engenheiros sociais
são as emoções que conseguem causar nos mesmos, sendo elas medo, agitação,
culpa, entre outras que colocam a vítima em uma grande desvantagem por estar
mais sensível a todo e qualquer truque que for dirigido a mesma, após essa fase,
são utilizados de alguns gatilhos psicológicos que levam as pessoas a darem
1
Aluna do 2º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado
pelo Prof. Luis Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro
Universitário de Bauru no ano de 2016.
respostas sem análises prévias do conteúdo delas, sem medirem o peso do que
estão fornecendo a estranhos ou pseudo-estranhos. O atacante carrega consigo
armas fundamentais para suas aproximações, são elas alguns comportamentos,
como: Simpatia e intimidação, que geram na vítima a liberdade, afeição e uma
pequena dose de culpa se não utilizar de tudo que pode e tem acesso para ajudar e
retribuir a forma de tratamento que foi recebida, o que a torna instantaneamente
vulnerável. Há quem diga que um computador seguro é um computador desligado,
essa afirmação é inteligente, porém falsa, pois um engenheiro social convence
alguém a entrar no escritório e ligar esse computador.
O ponto forte da engenharia social e as seis técnicas mais utilizadas pelos
engenheiros:
Na abordagem desse tema, é preciso citar Kevin D Mitnick, um dos mais
famosos Crackers de todos os tempos, utilizou da engenharia social para muitos dos
seus ataques, e deixou seus registros e dicas contidos no livro A arte de enganar, de
sua própria autoria, que também foi de muita utilidade nesse artigo, tendo aqui
contida uma parte de seu conteúdo.
A seguir explicitarei as seis técnicas mais conhecidas e utilizadas nos ataques
populares:
Analise do lixo: Poucas organizações tomam o cuidado de checar e observar
minuciosamente o que está sendo descartado e de que forma está sendo feito esse
descarte. O lixo é uma das fontes mais ricas de informações sobre um determinado
local, através dele pode-se coletar informações valiosas como nomes de
funcionários, telefones, e-mails, senhas, transações, contatos de clientes e
fornecedores e até o que causa a maior proximidade na relação funcionário-
empresa, que são os jargões2
internos mais utilizados.
Internet e redes sociais: Muitas informações podem ser coletadas através da
internet e das redes sociais, pois os engenheiros sociais utilizam desse recurso para
conhecer melhor a empresa, seus projetos e políticas, suas missões, visões e
valores e até mesmo dados dos gestores e do corpo dirigente da mesma, para ter
2
Jargão significa uma linguagem pouco compreensível, em muitos casos por ser específica de determinado grupo
profissional ou sociocultural.
uma melhor inteiração em tudo que acontece internamente e agir com mais
segurança.
Contato telefonico: Após todo o estudo das duas técnicas já citadas, o engenheiro
pode iniciar os contatos telefonicos, para assim obter alguns acessos não
autorizados, com esses contatos em mãos e um amplo banco de dados de
informações confidenciais da organização em questão, o trabalho do engenheiro se
torna mais simples e eficaz, podendo se passar por funcionários, conseguir a
confirança dos mesmos, e ter acesso a plataformas internas que os mesmos
utilizam.
Abordagem pessoal: Esta técnica consiste no contato direto do engenheiro com a
empresa, onde o mesmo visita pessoalmente o seu alvo e com todo o material que
já arrecadou de informações a respeito, pode se passar por um fornecedor,
funcionário, cliente e não tem muita dificuldade em convencer seguranças,
secretárias, recepcionistas a liberarem acessosque está procurando, é uma fase
arriscada da engenharia social, mas que é muito bem aplicada e funciona até os
dias atuais.
Phishing: Essa é a técnica mais popular dos dias atuais, que realiza o envio de e-
mails falsos, manipulados e enviados para organizações com o intuito de aguçar as
emoções do receptor, fazendo com que ele aceite-o e haja conforme as operações
solicitadas, a maioria dos Phishing possuem anexos ou links que redirecionam o
receptor para onde o Cracker deseja fazer o acesso.
Falhas humanas: A exploração das emoções cotidianas dos funcionários, onde
geram comoção em dialogos vitimistas, ou passam confiança em dialogos cheios de
jargões, apelidos, frases típicas da organização, ou até curiosidade em assuntos que
já foram coletador e demonstram ser do interesse do funcionário que está em jogo e
já foi previamente avaliado e estudado para ser atraído.
“Engenharia social usa a influencia e a persuasão para enganar as pessoas
e convence-las de que o engenheiro social é alguém que ele não é, ou pela
manipulação. Como resultado, o engenheiro social pode aproveitar-se das
pessoas para obter as informações com ou sem o uso da
tecnologia.”(MITNICK, 2003, p.6.)
Uma forma de trapaça comum é atrair a simpatia do empregado com a comoção e
os argumentos ensaiados do gênero “Meu chefe não está feliz comigo”, “Eu preciso
de algo que só você pode me ajudar”, “Posso me prejudicar se não receber um
apoio nessa tarefa”, pois as pessoas em geral não mostram suas emoções
particulares e suas intimidades sentimentais no trabalho com frequencia, ou seja, ao
fazer esse “apelo” ao empregado, derruba-se uma barreira de defesa dos
funcionários contra a engenharia sócia. O truque emocional de “Eu estou com
problemas, você pode me ajudar?” gera uma comoção sucedida de um alívio à
quemforneceu os dados, por se sentir bem com o fato de ter ajudado alguém,
deixando claro o exemplo da estrutura emocional como barreira a segurança
organizacional. A esse respeito, Mitnick afirma:
“A verdade é que ninguém está imune contra ser enganado por um bom
engenheiro social. Devido ao ritmo da vida normal, nem sempre pensamos
com cuidado antes de tomarmos as decisões, mesmo em questões que são
importantes para nós. As situações complicadas, a falta de tempo, o estado
emocional ou a fadiga mental podem facilmente nos distrair. Assim sendo,
tomamos um atalho mental e resolvemos sem analisar cuidadosamente as
informações, um processo mental conhecido como resposta automática.
Isso é válido até para os agentes da lei dos governos federal, estadual e
municipal. Somos humanos.” (MITNICK, 2003, p.99).
Um exemplo de um telefonema onde ocorre uma coleta de dados feita por um
engenheiro social:
G. - Bom dia, sou Fulano gerente de relacionamento do banco X, falo com o senhor
Cicrano titular da conta n° 123456 ? (o número da conta pode ter conseguido de mil
maneiras, por exemplo numa fila de banco ou por alguém ter deixado algum
papelzinho num caixa de atendimento automático ou com a cumplicidade de algum
funcionário de lojas onde foram feitas compras com cheque).
V. - Sim, sou eu...
G. - Estamos recadastrando os clientes no novo sistema do banco por razões de
segurança e estou ligando para confirmar seus dados ... O senhor nasceu em
DD/MM/AAAA (existem várias maneiras para se ter este dado, mas não vou sugerir
aqui), mora na rua YYY (pegou esta informação na lista telefônica, ou em
documentos que estavam em suas mãos na fila do banco ou novamente de algum
funcionário de loja, por exemplo), o seu telefone é ainda o 123456 (idem como
antes), o seu CPF é o 777.777.777-77 (também existem várias maneiras para
conseguir isso, num cheque por exemplo) e o RG é 456789 (idem) ??
V. - Sim, os dados são corretos. (nesta altura, visto quantas coisas o interlocutor já
sabe sobre ele, a vítima não duvida que se trate mesmo do gerente do banco).
G. - Pode me confirmar o número do seu cartão de crédito (ou do banco) ?
V. - Sim, o número é 123456789 ...
G.- Correto, muito bem os seus dados foram atualizados. Só falta o senhor confirmar
tudo através das suas senhas. Vou lhe passar a central de autenticação onde o
senhor poderá digitar as senhas diretamente no seu aparelho de telefone. Aí passa
uma espécie de sistema automático com voz registrada que pede, para confirmar o
cadastro, primeiro para digitar no aparelho a senha do cartão e depois a senha do
"internet banking" e demais dados (vencimento do cartão, código de segurança no
verso etc...).
Essa foi uma demonstração de um dos modos em que um engenheiro social faz sua
proximidade e consegue os dados que precisa para algum ataque, eles utilizam de
várias coletas, estudos do meio em que estão se infiltrando e depois utilizam tudo
que já coletaram à respeito para convencer a vítima.
Outra forma de trapaça é a utilização da técnica Advocacia administrativa, que
consiste no ato de intimidar com nomes de diretores, gerentes, gestores, utilizando-
os para realizar solicitações favoráveis ao ataque em questão, gerando confiança
entre todo o corpo empresarial, impondo respeito e exercendo uma grande
influencia, deixando todos os envolvidos nas solicitações apreensivos e fazendo com
que reajam com extremo cuidado e agilidade. Essa intimidação pode criar o medo
de punição e uma grande influencia em todos para que cooperem com o máximo
que podem, também é capaz de gerar o medo de uma situação embaraçosa, ou a
desqualificação para uma nova promoção, ou algum prestigio similar interno da
organização. As pessoas devem ser treinadas para saber lidar com todos os tipos de
técnicas já citados e exemplificados, devem ter consciência de que o estado
emocional não pode em hipotese alguma estar acima da razão, ética e valores da
organização em que fazem parte, também devem estar devidamente aptas a
tomarem conhecimento de todas as situações que se envolverem antes de
fornecerem todo e qualquer dado empresarial, sendo secreto ou não.
“As pessoas devem ser treinadas para saber que não apenas
é aceitavel, mas também é esperado o desafio à autoridade
quando a segurança está em jogo. O treinamento para a
segurança das informações deve incluir o ensino de como
desafiar a autoridade de maneiras amistosas ao cliente, sem
danificar os relacionamentos. Além disso, essa expectativa
deve receber suporte de cima para baixo. Se um empregado
não tiver apoio ao desafiar as pessoas independentemente
de seus status, a reação normal é parar o desafio-exatamente
o oposto daquilo que você quer.” (MITNICK, 2003, p.90)
O fator humano é o elo mais fraco da segurança, e por essa razão, tem de se ter um
cuidado maior que a capacidade humana de expor dados e informações, o que é
extremamente dificil, porém existem várias formas de se obter esse fator em uma
organização, uma delas é ter sempre dispositivos de autenticação, senhas diferentes
e o mínimo de acesso possível, tornando públicas somente informações cruciais ao
desenvolvimento díario das tarefas dos empregados, também é de extrema
eficiencia o uso de tokens, que trabalham com tempo real, cartões inteligentes,
grande uso de biometria, uma alta detecção de intrusos e um pessoal altamente
treinado, capacitado, com toda a instrução e conscientização necessária sobre todos
os tipos de abordagens e técnicas que uma empresa se submete.
Outro cuidado extremamente essencial que muitas empresas deixam de tomar e
pode ser prejudicial, é o com ex funcionarios, as mesmas precisam estar preparadas
para os ataques da engenharia social vindos de ex funcionarios, que podem retornar
indiretamente as suas funções por descontentamento, concorrencia, entre outros
tipos de sentimentos negativos que podem acontecer no decorrer de uma relação
funcionario/empresa. As verificações de histórico, podem ser úteis para detectar
funcionários e ex funcionários que tem ou teriam propensão à esse tipo de
comportamento, o departamento de recursos humanos deve ter total controle e
informação sobre a personalidade, capacidade e comportamentos dos funcionários,
para assim ser de fácil detecção as ameaças e futuras ameaças.
Em 2012 um site de notícias de uma emissora nacional (G1, Globo) publicou um site
e uma matéria de como utiliza-lo para verificar os gostos pessoais de usuários, o tipo
de humor que compartilham, quais seus interesses e comportamentos mais
frequentes, o que também pode ser utilizado como tática de recursos humanos, para
conhecer cada empregado, seus interesses, seu comportamento e verificar
possíveis ameaças, insatisfações e capacidades. Segue um exemplo ilustrativo de
como realizar a avaliação pessoal:3
3
¹ Você pode ver todo o conteúdo no link: http://g1.globo.com/tecnologia/noticia/2012/03/site-cria-grafico-para-
mostrar-o-que-o-interesse-do-usuario-nas-redes-sociais.html
As empresas que realizam testes de penetração de segurança relatam que
tentativas de invasão em sistemas de uma empresa cliente com técnicas de
engenharia social tem um índice de sucesso de cem por cento, as tecnologias de
segurança podem dificultar grandemente esse processo, porpem o único meio
realmente eficaz de amenizar a ameaça da engenharia social é a conscientização
combinada a politicas que definem as principais regras de comportamento para o
empregado, junto com sua educação e treinamento.
Uma comunidade de informações de tecnologia e informática (Computer Word)
nacional do canal Terra realizou uma coleta de ferramentas de testes de invasão
que reforçam a segurança de uma empresa, são elas:
Metasploit: O Metasploit é um framework com inúmeros fãs entre os programadores.
Ele adiciona ferramentas de teste customizadas, que procuram fraquezas em
sistemas operacionais e aplicações. Os módulos customizados são lançados
noGitHub e no Bitbucket, repositórios online para projetos de código.
Nessus Vulnerability Scanner: O Nessus Vulnerability Scanner também é popular na
localização de vulnerabilidades. A tecnologia vasculha computadores e firewalls à
procura de portas abertas para a instalação de software potencialmente malicioso.
Nmap: O Nmap determina os tipos de computadores, servidores e hardware que as
empresas possuem conectados às redes corporativas. A possibilidade de essas
máquinas serem identificáveis via escaneamento externo é por si só uma
vulnerabilidade, explorada por agressores para estabelecer planos de ataque. O uso
do Nmap também pode ser feito para procurar hosts, portas abertas, versões de
software, sistemas operacionais, hardware e fragilidades, geralmente mapeando a
superfície de ataque da rede. Ele é útil em cada etapa dos testes de penetração,
identificando os componentes conectados ao entrar em um novo segmento de rede.
Burp Suite: A Burp Suite é outra aplicação de testes de penetração. Ele mapeia e
analisa aplicações web, encontrando e explorando fraquezas. Utilizada com seu
navegador para mapear as aplicações na web. As ferramentas dentro da suíte
descobrem buracos de segurança e lançam ataques customizados. Além disso, a
Burp Suite automatiza funções repetitivas enquanto retém a escolha do usuário
quando o utilizador precisa ter o controle das opções individualizadas.
OWASP ZAP: Sem fins lucrativos, a OWASP ZAP oferece escaneamento manual e
automático de aplicações web, tanto para novatos quanto para veteranos em testes
de penetração. Com código aberto, ela está disponível no GitHub. A ferramenta
desempenha uma variedade de testes, incluindo escaneamento de portas, ataque
de força bruta e fuzzing, tudo para identificar códigos maliciosos.
Um exemplo de segurança muito utilizado nos dias atuais, onde podemos ver até
em aplicativos populares e de uso cotidiano como o Whatsapp, é a criptografia, que
consiste em um conjunto de técnicas usadas para manter a informação segura. Com
ela é possível transformar palavras escritas e outros tipos de mensagens em “frases”
desconexas e inteligiveis para receptores não autorizados, já quando se trata de um
receptor autorizado, o mesmo transforma o conteúdo da mensagem em algo
perfeitamente compreensível. Um exemplo para o melhor entendimento:
“A SSL é um protocolo criptografico.” - Mensagem a ser criptografada
“ÇW@>[“ - Mensagem já criptografada.
Embora existam inúmeras formas de assegurar os usos empresariais de máquinas,
acessos e dados, como já citados até aqui, ainda se tem a necessidade de uma
política de segurança eficaz, vista como um processo contínuo e colaborativo, a
revisão constante da mesma é necessária para salvaguardar as redes, os riscos
nunca podem ser totalmente eliminados, porém com essas melhorias aplicadas e
uma melhor relação entre TI e RH, fazem com que a política e a tecnologia
caminhem juntas e a segurança se torna mais rigida.
Segundo Jhon Mutch e Brian Anderson no livro Gerenciando Privilégios em
Tecnologia da Informação, 48% das quebras da segurança de dados foram
causadas por pessoas do ramo interno da organização (+26%), 48% envolveram
abuso de privilégios (+26%) e 98% de todas as quebras de segurança de dados
vieram de servidores. São as ameaças:
Internas: Administração de identidade privilegiadas (PIM*) e segurança de dados e
prevenção de vazamentos.
Externas: Antivirus, firewalls, detecção e prevenção de invasores, segurança de e-
mails, segurança na web.
*O gerenciamento de identidades privilegiadas (PIM) é parte da família de
tecnologias gerais de gerenciamento de identidade e acesso (IAM), que juntas
proporcionam às corporações mecanismos para controlar quem, o que, onde,
quando e por que do gerenciamento de acesso seguro.
Todas as empresas estão sujeitas a sofrerem ataques de diversas formas, em
dezembro de 2009, a Google informou que foi vítima de um ataque virtual que partiu
da China. Na verdade, ela não foi a única empresa a ter sua segurança quebrada.
Na mesma ocasião, empresas como Adobe, Yahoo, Symantec e outras passaram
pelo mesmo problema. No total, foram 20 companhias do 4
Vale do Silício visadas
pelos crackers, e o ataque foi realizado com sucesso na maioria delas.
4
Você pode ver toda a matéria em: http://www.tecmundo.com.br/seguranca/26476-os-9-maiores-roubos-de-
dados-da-internet.htm
CONCLUSÃO
No contexto apresentado acima, a necessidade de prover segurança da informação
tem sido uma questão constante nas organizações. A segurança da informação visa
proteger os sistemas através de um conjunto de medidas que preservam
informações e explicam a engenharia social de forma sucinta e conscientizam as
organizações dos perigos que correm e de táticas que estão submissas, de forma
que possam se defender e resguardar a estrutura organizacional de ataques,
invasões e até mesmo perda da mesma.
Embora a grande maioria das organizações e usuários comuns possua mecanismos
técnicos defensivos contra ataques, os quais exigem o usuário informar não apenas
seu login (ou nome de usuário num sistema) e respectiva senha, bem como verifica
a existência de vírus em arquivos, ainda assim os sistemas atuais são susceptíveis a
ataques não técnicos decorrentes da engenharia social, por esta razão foram
apresentados os mesmos, alguns exemplos claros, as necessidades das empresas
e os perfis pessoais das vítimas, crackers e organizações em geral.
A segurança da informação, contudo, está mais ligada a um fator humano, a uma
maior conscientização, que há tecnologias avançadas, alguns conceitos se fazem
úteis à respeito da afirmação:
Segundo (Behrouz A. Forouzan, 2006, pg. 711) a segurança da informação deve
proporcionar a garantia de cinco princípios quando se trata de segurança aplicada à
informação, sendo eles:
Confidencialidade: É a garantia de que as informações transmitidas chegarão ao seu
destino sem que dissipem para outro lugar onde não devia passar. Várias
tecnologias como, por exemplo, criptografia e autenticações podem ser usadas,
desde que mantenham a integridade das informações.
Integridade:É a garantia de que as informações não sofreram nenhuma modificação
durante o trajeto entre a pessoa que enviou e a pessoa que recebeu a informação,
garantindo assim a sua real veracidade após chegarem ao destino.
Disponibilidade:De nada adianta possuir integridade e confidencialidade, se a
informação nunca está disponível, pois o grande desafio é manter esta estrutura de
passagem de informações de formas confiável e integral sem que haja
impossibilidade de captar as informações.
Autenticidade: Conhecido como responsabilidade final e tem como objetivo verificar
a identidade e autenticidade de alguém ou até mesmo de um agente exterior a fim
de garantir a integridade de origem.
Não Repúdio: A “Negação” é o termo chave para este requisito, onde o usuário
tentará negar que executou tal tarefa que de fato o fez, na maioria das vezes para se
livrar de consequências.
Dessa maneira poderíamos ilustrar o modelo acima com a imagem abaixo:
POPPER’S CONCEPTION OF SCIENCE AND THE TEACHING OF SCIENCES
Abstract: This work sought to identify the most important consequences of social
engineering, how is your application, its use in daily life and a basic prevention
regarding. The meaning of social engineering has given rise
invasions, attacks on systems, companies and large organizations
In the present day, where security is very targeted, and people know much about has
great invasions and illegal access made by individuals or specialized groups and with
many tactics to corrupt information and confidential data. With real examples and
stories of excerpts the victim mode will be presented, the attacker and the company.
Keywords: Social engineering, invasion, victim, illegal access
REFERÊNCIAS
MITNICK, Kevin A arte de enganar Person Education 2003.
MACHADO, Felipe Segurança da Informação - Princípios e Controle de Ameaças
Editora Erica 2014.
MUTCH, Jhon Gerenciando Privilégios Em Tecnologia da Informação NOVATEC
2012.

Mais conteúdo relacionado

Mais procurados

Como começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day FatecComo começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day Fatec
Joas Antonio dos Santos
 
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Carlos Serrao
 
Lopa
LopaLopa
Apresentação dissertação
Apresentação dissertaçãoApresentação dissertação
Apresentação dissertação
Miky Mikusher Raymond
 
1987
19871987
1987
Pelo Siro
 
Aula.revisao av2 gsi
Aula.revisao av2 gsiAula.revisao av2 gsi
Aula.revisao av2 gsi
Thais Oliveira
 
Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012
TI Safe
 
Next gen antivirus_cylance
Next gen antivirus_cylanceNext gen antivirus_cylance
Next gen antivirus_cylance
aassenato
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
Kaito Queiroz
 
Tendências, Tecnicas e soluções no combate aos ataques de APTs e AVTs
Tendências, Tecnicas e soluções no combate aos ataques de APTs e AVTsTendências, Tecnicas e soluções no combate aos ataques de APTs e AVTs
Tendências, Tecnicas e soluções no combate aos ataques de APTs e AVTs
Mauro Risonho de Paula Assumpcao
 
Importância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalhoImportância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalho
Marcos Flávio Araújo Assunção
 
Introdução ao teste de intrusão em redes
Introdução ao teste de intrusão em redesIntrodução ao teste de intrusão em redes
Introdução ao teste de intrusão em redes
Alisson Fuckner
 
backdoors
backdoorsbackdoors
backdoors
guest0510c9
 
Relatório de Teste Invasão fícticio
Relatório de Teste Invasão fícticioRelatório de Teste Invasão fícticio
Relatório de Teste Invasão fícticio
Vitor Melo
 
Pentest
Pentest Pentest
Nessus Scanner Vulnerabilidades
Nessus Scanner VulnerabilidadesNessus Scanner Vulnerabilidades
Nessus Scanner Vulnerabilidades
Mauro Risonho de Paula Assumpcao
 
Palestra cnasi 2013 s.video
Palestra cnasi 2013 s.videoPalestra cnasi 2013 s.video
Palestra cnasi 2013 s.video
Andre Takegawa
 
Pentest com Kali Linux - LatinoWare 2015
Pentest com Kali Linux  - LatinoWare 2015Pentest com Kali Linux  - LatinoWare 2015
Pentest com Kali Linux - LatinoWare 2015
Alcyon Ferreira de Souza Junior, MSc
 
Pentest teórico
Pentest teóricoPentest teórico
Pentest teórico
Felipe Perin
 
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
Carlos Serrao
 

Mais procurados (20)

Como começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day FatecComo começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day Fatec
 
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
Prevenir o "ransomware" - Guia da OWASP para prevenção do "ransomware"
 
Lopa
LopaLopa
Lopa
 
Apresentação dissertação
Apresentação dissertaçãoApresentação dissertação
Apresentação dissertação
 
1987
19871987
1987
 
Aula.revisao av2 gsi
Aula.revisao av2 gsiAula.revisao av2 gsi
Aula.revisao av2 gsi
 
Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012Apresentação Técnica - ISA SHOW 2012
Apresentação Técnica - ISA SHOW 2012
 
Next gen antivirus_cylance
Next gen antivirus_cylanceNext gen antivirus_cylance
Next gen antivirus_cylance
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
 
Tendências, Tecnicas e soluções no combate aos ataques de APTs e AVTs
Tendências, Tecnicas e soluções no combate aos ataques de APTs e AVTsTendências, Tecnicas e soluções no combate aos ataques de APTs e AVTs
Tendências, Tecnicas e soluções no combate aos ataques de APTs e AVTs
 
Importância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalhoImportância do profissional Hacker ético no mercado de trabalho
Importância do profissional Hacker ético no mercado de trabalho
 
Introdução ao teste de intrusão em redes
Introdução ao teste de intrusão em redesIntrodução ao teste de intrusão em redes
Introdução ao teste de intrusão em redes
 
backdoors
backdoorsbackdoors
backdoors
 
Relatório de Teste Invasão fícticio
Relatório de Teste Invasão fícticioRelatório de Teste Invasão fícticio
Relatório de Teste Invasão fícticio
 
Pentest
Pentest Pentest
Pentest
 
Nessus Scanner Vulnerabilidades
Nessus Scanner VulnerabilidadesNessus Scanner Vulnerabilidades
Nessus Scanner Vulnerabilidades
 
Palestra cnasi 2013 s.video
Palestra cnasi 2013 s.videoPalestra cnasi 2013 s.video
Palestra cnasi 2013 s.video
 
Pentest com Kali Linux - LatinoWare 2015
Pentest com Kali Linux  - LatinoWare 2015Pentest com Kali Linux  - LatinoWare 2015
Pentest com Kali Linux - LatinoWare 2015
 
Pentest teórico
Pentest teóricoPentest teórico
Pentest teórico
 
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
OWASP Mobile Top 10 - Principais Riscos no Desenvolvimento Seguro de Aplicaçõ...
 

Semelhante a Desenvolvimento de exploits

Pdf e5-ss28
Pdf e5-ss28Pdf e5-ss28
Pdf e5-ss28
LilianeR
 
Segurança em sistemas distribuidos
Segurança em sistemas distribuidosSegurança em sistemas distribuidos
Segurança em sistemas distribuidos
Jerry Adrianni das Neves
 
Os maiores riscos de segurança
Os maiores riscos de segurançaOs maiores riscos de segurança
Os maiores riscos de segurança
Yuri Dantas
 
Introdução de teste de segurança app web
Introdução de teste de segurança app webIntrodução de teste de segurança app web
Introdução de teste de segurança app web
Kleitor Franklint Correa Araujo
 
Ethical Hacking - Campus Party Brasília 2017
Ethical Hacking - Campus Party Brasília 2017Ethical Hacking - Campus Party Brasília 2017
Ethical Hacking - Campus Party Brasília 2017
Alcyon Ferreira de Souza Junior, MSc
 
OSUG-BH - Desenvolvimento Seguro em OutSystems
OSUG-BH - Desenvolvimento Seguro em OutSystemsOSUG-BH - Desenvolvimento Seguro em OutSystems
OSUG-BH - Desenvolvimento Seguro em OutSystems
felipehorta14
 
Aula de seguranca (1)
Aula de seguranca (1)Aula de seguranca (1)
Aula de seguranca (1)
Rogério Sampaio
 
Aula 5 - Segurança da informação
Aula 5 - Segurança da informaçãoAula 5 - Segurança da informação
Aula 5 - Segurança da informação
LucasMansueto
 
Seguranca da informação seguranca em_redes_parte_03praticas
Seguranca da informação seguranca em_redes_parte_03praticasSeguranca da informação seguranca em_redes_parte_03praticas
Seguranca da informação seguranca em_redes_parte_03praticas
Fernando Beltrao
 
Programação defensiva
Programação defensivaProgramação defensiva
Programação defensiva
Kayo Rayner
 
Seguranca da Informação -Práticas de segurança
Seguranca da Informação -Práticas de segurançaSeguranca da Informação -Práticas de segurança
Seguranca da Informação -Práticas de segurança
Luiz Arthur
 
Hardening
HardeningHardening
Hardening
Anderson Lago
 
Exploits
ExploitsExploits
Exploits
William Rufino
 
Segurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de ComputadoresSegurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de Computadores
Bruno Dos Anjos Silveira
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2
Felipe Santos
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
Cleyton Stefanello
 
Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03
Adriano Balani
 
O que é um vírus informático
O que é um vírus informáticoO que é um vírus informático
O que é um vírus informático
josesolidario
 
Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança
Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança
Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança
Hermom2
 
Principais conceitos em testes de software
Principais conceitos em testes de softwarePrincipais conceitos em testes de software
Principais conceitos em testes de software
Joyce Bastos
 

Semelhante a Desenvolvimento de exploits (20)

Pdf e5-ss28
Pdf e5-ss28Pdf e5-ss28
Pdf e5-ss28
 
Segurança em sistemas distribuidos
Segurança em sistemas distribuidosSegurança em sistemas distribuidos
Segurança em sistemas distribuidos
 
Os maiores riscos de segurança
Os maiores riscos de segurançaOs maiores riscos de segurança
Os maiores riscos de segurança
 
Introdução de teste de segurança app web
Introdução de teste de segurança app webIntrodução de teste de segurança app web
Introdução de teste de segurança app web
 
Ethical Hacking - Campus Party Brasília 2017
Ethical Hacking - Campus Party Brasília 2017Ethical Hacking - Campus Party Brasília 2017
Ethical Hacking - Campus Party Brasília 2017
 
OSUG-BH - Desenvolvimento Seguro em OutSystems
OSUG-BH - Desenvolvimento Seguro em OutSystemsOSUG-BH - Desenvolvimento Seguro em OutSystems
OSUG-BH - Desenvolvimento Seguro em OutSystems
 
Aula de seguranca (1)
Aula de seguranca (1)Aula de seguranca (1)
Aula de seguranca (1)
 
Aula 5 - Segurança da informação
Aula 5 - Segurança da informaçãoAula 5 - Segurança da informação
Aula 5 - Segurança da informação
 
Seguranca da informação seguranca em_redes_parte_03praticas
Seguranca da informação seguranca em_redes_parte_03praticasSeguranca da informação seguranca em_redes_parte_03praticas
Seguranca da informação seguranca em_redes_parte_03praticas
 
Programação defensiva
Programação defensivaProgramação defensiva
Programação defensiva
 
Seguranca da Informação -Práticas de segurança
Seguranca da Informação -Práticas de segurançaSeguranca da Informação -Práticas de segurança
Seguranca da Informação -Práticas de segurança
 
Hardening
HardeningHardening
Hardening
 
Exploits
ExploitsExploits
Exploits
 
Segurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de ComputadoresSegurança em Sistemas Baseados em Redes de Computadores
Segurança em Sistemas Baseados em Redes de Computadores
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03
 
O que é um vírus informático
O que é um vírus informáticoO que é um vírus informático
O que é um vírus informático
 
Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança
Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança
Ciber - Capitulo 2 - Parte 1 - Vulnerabilidades de Segurança
 
Principais conceitos em testes de software
Principais conceitos em testes de softwarePrincipais conceitos em testes de software
Principais conceitos em testes de software
 

Mais de NaraBarros10

Uc 9362e690-63d7-411a-a4f7-18c375ea7615
Uc 9362e690-63d7-411a-a4f7-18c375ea7615Uc 9362e690-63d7-411a-a4f7-18c375ea7615
Uc 9362e690-63d7-411a-a4f7-18c375ea7615
NaraBarros10
 
Inteligencia Emocional - CONQUER
Inteligencia Emocional - CONQUERInteligencia Emocional - CONQUER
Inteligencia Emocional - CONQUER
NaraBarros10
 
Certificado - PDI
Certificado - PDICertificado - PDI
Certificado - PDI
NaraBarros10
 
Certificado - Cypress
Certificado - CypressCertificado - Cypress
Certificado - Cypress
NaraBarros10
 
Certificado - FIGMA
Certificado - FIGMACertificado - FIGMA
Certificado - FIGMA
NaraBarros10
 
Scrum
ScrumScrum
Certificado - AWS
Certificado - AWSCertificado - AWS
Certificado - AWS
NaraBarros10
 
Certificado de Conclusao - Tecnicas de Comunicacao Interpessoal
Certificado de Conclusao - Tecnicas de Comunicacao InterpessoalCertificado de Conclusao - Tecnicas de Comunicacao Interpessoal
Certificado de Conclusao - Tecnicas de Comunicacao Interpessoal
NaraBarros10
 
Certificado hackaton
Certificado   hackatonCertificado   hackaton
Certificado hackaton
NaraBarros10
 
Engenharia social
Engenharia socialEngenharia social
Engenharia social
NaraBarros10
 

Mais de NaraBarros10 (10)

Uc 9362e690-63d7-411a-a4f7-18c375ea7615
Uc 9362e690-63d7-411a-a4f7-18c375ea7615Uc 9362e690-63d7-411a-a4f7-18c375ea7615
Uc 9362e690-63d7-411a-a4f7-18c375ea7615
 
Inteligencia Emocional - CONQUER
Inteligencia Emocional - CONQUERInteligencia Emocional - CONQUER
Inteligencia Emocional - CONQUER
 
Certificado - PDI
Certificado - PDICertificado - PDI
Certificado - PDI
 
Certificado - Cypress
Certificado - CypressCertificado - Cypress
Certificado - Cypress
 
Certificado - FIGMA
Certificado - FIGMACertificado - FIGMA
Certificado - FIGMA
 
Scrum
ScrumScrum
Scrum
 
Certificado - AWS
Certificado - AWSCertificado - AWS
Certificado - AWS
 
Certificado de Conclusao - Tecnicas de Comunicacao Interpessoal
Certificado de Conclusao - Tecnicas de Comunicacao InterpessoalCertificado de Conclusao - Tecnicas de Comunicacao Interpessoal
Certificado de Conclusao - Tecnicas de Comunicacao Interpessoal
 
Certificado hackaton
Certificado   hackatonCertificado   hackaton
Certificado hackaton
 
Engenharia social
Engenharia socialEngenharia social
Engenharia social
 

Último

TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 

Último (6)

TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 

Desenvolvimento de exploits

  • 1. DESENVOLVIMENTO DE EXPLOITS Nara Barros da Cruz Silva¹ Resumo: Este trabalho procurou explicar e demonstrar de forma pratica como funcionam os ataques a sistemas, os exploits, como é realizado o trabalho dos pentesters e como são feitos os pentests, quando e como ocorrem os bufferoverflows, códigos que demonstrem os processos e fatos reais comprovantes da gravidade das vulnerabilidades dos sistemas. Palavras-chave: Exploit, bufferoverflow, pentest, malware. Introdução As falhas nos sistemas são fatores críticos de sucesso para que as invasões acontecam, facilitam o trabalho de engenharia social e até mesmo dão indicios de como podem ser desenvolvidos exploits que consigam através das mesmas, capturar todo um sistema e suas informações, mesmo que confidenciais, existem inumeros tipos de falhas que facilitam tais capturas, são elas: - Falhas de projeto: Ocorrem de acordo com as más especificações do projeto, que resulta no não funcionamento. - Falhas nas instalações: Ocorrem em maquinas e equipamentos que possuem manutenções não efetuadas corretamente ou periodicamente. - Falhas de pessoal: Erros cometidos pelos funcionarios, falta de execução de alguma etapa do projeto, erros cotidianos causados pelos funcionarios envolvidos. - Falhas de fornecedores: Não cumprimentos de prazos de execuções, serviços e resultados do projeto. - Falhas de clientes: Mal uso dos serviços, produtos e sistemas. Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 2. De acordo com as falhas já predispostas, pode-se entender algumas das principais razões que facilitam o trabalho dos exploits² Existe também a caracterização das diferenças entre defeitos, erros e falhas, que são, respectivamente, imperfeições dos sistemas, falhas instantaneas e retornos inesperados. Para lidar com sistemas, falhas e interrupções sem avisos prévios, é recomendavel o uso assiduo de planos de contingencia, que são eles um tipo de plano preventivo, preditivo e reativo, portadores de uma estrututura estrategica e operativa que exercerá controle em uma situação de emergencia, minimizando as consequencias negativas, o plano propõe uma série de procedimentos alternativos em relação ao funcionamento de uma organização, sempre que qualquer das suas funções usuais se prejudica por uma contingencia externa ou interna. Como tratar das falhas dos sistemas: Sistemas de ambientes virtuais, fisicos, dependentes de software ou hardware podem falhar a qualquer instante, retornando resultados incorretos, pausas inesperadas, falhas arbitrarias e bizantinas “Em um ambiente de alta disponibilidade deve-se evitar o Single Point Of Failure (SPOF) ou Ponto Único de Falha. Ter um único componente aumenta consideravelmente o risco de se obter um problema e o SPOF é um paradigma a ser evitado a todo custo. Cada servidor deve ter um subsistema redundante para cada componente, no caso do servidor principal falhar ou parar de responder às solicitações. Os subsistemas críticos entram em funcionamento de forma a acatar os requerimentos dos clientes, até o momento em que o servidor principal volte a responder (Asterisk e Alta Disponibilidade, 2008). “ No contexto de ataques cibernéticos, tem-se observado que a grande maioria dos profissionais de Segurança da Informação das empresas, trabalha para a prevenção a partir de uma ótica defensiva e somente tomam alguma ação após as vulnerabilidades serem exploradas e relatadas. Quando se trabalha a partir de uma ótica ofensiva visualiza-se ser possível descobrir as vulnerabilidades de forma proativa, por meio do uso de ferramentas que os atacantes normalmente utilizam para descobrir vulnerabilidades em suas redes. O profissional ou a empresa que adotam esse conceito para criar a defesa de sua rede fazem com que essa atividade seja mais efetiva e com isso diminui Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 3. consideravelmente os riscos da parada do negócio da empresa como, por exemplo, um sistema importante ou até um site de vendas. Tolerancia a falhas/Dependabilidade… O termo em questão “Tolerancia a falhas” foi criado por Avizienis no ano de 1967, após isso, foi amplamente utilizado em pesquisas academicas que dizem respeito a sistemas suscetiveis a erros, falhas e panes. O termo dependabilidade é uma tradução do inglês “dependability”, que diz a respeito da qualidade do serviço “Dependabilidade é a propriedade que define a capacidade dos sistemas computacionais de prestar um serviço que se pode justificadamente confiar. Entre os atributos estão: confiabilidade, segurança (safety), disponibilidade e mantenabilidade.” Fonte: https://aprender.ead.unb.br/enrol/index .php?id=2107 PENTEST O Teste de Intrusão (do inglês "penetration test" ou pentest"), também traduzido como "Teste de Penetração", é um método que avalia a segurança de um sistema de uma maquina ou de uma rede corporativa, simulando um ataque de uma fonte duvidosa. O processo envolve uma análise nas atividades do sistema, que envolvem a busca de alguma vulnerabilidade em potencial que possa ser resultado de uma má configuração do sistema. Todas as análises submetidas pelos testes escolhidos são apresentadas no sistema, junto com uma avaliação do seu impacto e muitas vezes com uma proposta de resolução ou de uma solução técnica. Etapas de um PENTEST: O pentest inicia com a fase de pré-compromisso, a qual envolve conversar com o cliente sobre os objetivos do penteste, definir o escopo (a extensão e os parâmetros do teste), e assim por diante. Quando um pentester e o cliente Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 4. acordam sobre o escopo, o formato do relatório e outros tópicos, os testes começam. Na fase de coleta de informações, o pentester busca por informações disponíveis sobre o cliente e identifica formas para se conectar aos sistemas. Na fase de modelagem das ameaças, um pentester utiliza as informações para determinar para o cliente se isto permite uque haja uma invasão no sistema. Esta avaliação permite o pentester desenvolver um plano de ação e um método de ataque. Antes do pentester poder iniciar os ataques aos sistemas, ele irá realizar uma análise de vulnerabilidade. Nesta fase, ele tentará descobrir vulnerabilidades nos sistemas que podem ser úteis na fase de exploração. A última fase é a emissão do relatório, onde o pentester resume o que foi encontrado, tanto na visão executiva, como na técnica e predispõe o todo em um resumo. Quem são os pentesters… Os pentesters são analistas que verificam sistemas com o intuito de minimizar ou anular as possibilidades de ataques aos mesmos, avaliando os erros, simulando invasões, entre outros procedimentos que resultam na maior segurança, credibilidade, integridade e confiabilidade dos sistema, de modo que, funcione corretamente sem possibilidade de perda de dados, informações confidenciais e a utilização em si. Os pentesters trabalham em equipes que realizam as seguintes etapas: -Reconhecimento: A equipe realiza o levantamento das informações disponiveis e já captadas sobre a organização em questão, tais como os serviços prestados, os gestores, gerentes, diretores, todos os responsaveis legais e assegurados pelo projeto em si, entre outros detalhes coletados. -Varredura: É realizada uma varredura do que está na rede, como range de IP, quais os servidores presentes, quais sistemas operacionais são utilizados, quais portas abertas, etc. -Obtenção de acesso e exploração: Com tudo que já foi identificado e definido, o pentester fará a exploração de cada item em busca das vulnerabilidades existentes, com o uso de exploits, identificará quais serviços estão vulneraveis e que tipo de informação pode ser obtida. Seguem algumas ferramentas utilizadas pelos Pentesters: O Shodan é um rastreador de qualquer dispositivo conectado a internet, Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 5. fornecedor de detalhes comprometedores, é capaz de encontrar webcans, roteadores, telefones, servidores, entre outros sistemas em todo o mundo. O Metasploit é o framework destinado a encontrar vulnerabilidades de seguranças conhecidas, formula grandes estrategias para a exploração dos sistemas, é baseado no sistema Ubuntu. É uma das melhores ferramentas para scanner de vulnerabilidades web, analisa e captura todo o trafego de protocolos da rede. A ferramenta mais utilizada para realizar varredura na rede e encontrar quais dispositivos estão conectados e quais portas estão abertas, realizando automaticamente uma auditoria na rede. O que são exploits... Exploit é basicamente um código desenvolvido uma linguagem específica para seu objetivo e de acordo com seu alvo, que ao se aproveitar de uma falha do software alvo causar um comportamento acidental ou imprevisto na execução do software ou hardware. Os alvos podem ser tanto em computadores quanto em outros aparelhos eletrônicos, até mesmo um marca-passo pode ser um possível alvo. Codificado avaliar uma possível vulnerabilidade ou para fins maléficos, um exploit pode dar ao atacanteo controle parcial ou total de um sistema, permitindo o acesso ao dispositivo seja um computador ou qualquer outro dispositivo. Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 6. Diferente de outros malwares, os exploits não necessita que o usuário clique em um determinado link ou faça o download para a execução de algum arquivo. Sua execução pode ser local ou remota, e em ambas as situações após a sua execução o atacante ganhará o que é conhecido com shell, que é uma forma de interagir com o dispositivo que executava o software atacado. Após o atacante ganhar o shell, acesso privilegiado de admin ou root, é possível interagir com o dispositivo normalmente, e assim acessar arquivos, obter senhas, espionar a atividade dos usuário de uma rede, roubar dados bancários, etc. "Os exploits podem ser desenvolvidos em diversas linguagens de programação, as mais utilizadas são: C, perl e python para sistemas e programas e php para sites, a escolha da linguagem para criação de um exploit irá depender da facilidade e conhecimento do programador em uma determinada linguagem, além de levar em consideração o quanto ela pode ser utilizada para a exploração da vulnerabilidade." Fonte: http://www.mundodoshackers.c om.br/termos-hacker-exploits Zeroday O exploit zeroday ou dia de zero, é um exploit para uma falha desconhecida ou não divulgada. Um código zeroday possui alto valor no mercado e há grandes empresas que compram estes exploits bem como a falha catalogada, já que ter a dianteira no mercado de segurança da informação pode causar grande impacto na estratégia do negócio, por colocá-lo em grande risco. "Falhas do tipo zero-day referem-se brechas de segurança que atingem softwares. Trata-se de uma vulnerabilidade de segurança desconhecida do público e do próprio desenvolvedor de um programa. Isso significa que, a partir do momento em que a falha é detectada, o fabricante do software tem efetivamente “zero dias” para produzir uma atualização que corrija o problema, impedindo a exploração por criminosos Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 7. antes disso. “ Fonte: Blog TechTudo Buffer Em programação, buffer é uma variável (também conhecida como array ou vetor), um local definido dentro da memória que armazena uma quantidade X de bytes. À exemplo, um buffer que tenha capacidade de armazenar 10 bytes, só armazena 9 caracteres (cada caracter sendo 1 byte) já que o último precisa ser o caracter nulo para o programa saber que a palavra termina ali. Então esse código em C estaria correto: char buffer[10] = {'S', 'E', 'G', 'U', 'R', 'A', 'N', 'Ç', 'A', '0'}; Uma variável denominada buffer que tem 10 bytes de capacidade de armazenamento recebe uma palavra de 9 caracteres finalizando com o ('0'). A partir do momento que se armazena mais que 10 caracteres, ocorre o buffer overflow! A variável copia somente os 10 primeiros caracteres e o resto estoura, ou transborda, já que não comporta mais. E o resto da sequência após o 10º byte não é descartado, ele sobrescreve o que estiver na memória após a varíavel. Estouro de pilha Um estouro de pilha é um erro de programação que ocorre no momento em que o programa tenta alocar mais memória na pilha de chamada do que o que há disponivel para o processo, é um erro que faz com que a execução do Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 8. sistema seja interrompida imediatamente, e usualmente é o maior erro de projeto. A pilha é a seção de memória que é designada para armazenar as funções do programa, seus tamanhos, detalhes, e técnicas são variaveis de acordo com a linguagem de programação que está sendo utilizada, o compilador, o sistema operacional, o tipo de processador, entre outros detalhes que o programador deve se atentar. Bufferoverflow O bufferoverflow é um outro tipo de vulnerabilidade... Na programação, o buffer é uma variavel que armazena bytes, e quando a quantidade ultrapassa o limite, há o transbordamento de dados, denominado bufferoverflow. Um bufferoverflow ou transbordamento de dados ocorre quando determinado programa excede o uso de memoria pre determinado pelo sistema operacional, essas falhas são reaproveitadas para executar codigos capazes de controlar o computador, o fato ocorre a partir do conhecimento de programação e da noção de arquitetura do sistema. De acordo com os fatores já mencionados, estouro de buffer e arquitetura do sistema, o estouro ocorre baseado no processador, onde a vulnerabilidade é explorada e o aplicativo executado, seja ele de 32 ou 64 bits, sendo um programa desenhado e pré definido para estipular um tamanho maximo para dados recebidos, garantindo que esses valores não sejam superados. “Buffer overflow é quando de alguma maneira é inserido mais dados de entrada do que esperado pelo seu programa, isso causa um estouro de memória comprometendo a execução do programa, isso permite sobrescrever a memória que permite utilizar de endereços para execução de códigos arbitrarios pelo SO.” Fonte: Blog Stack Overflow De acordo com a imagem a seguir, é demonstrado didaticamente o estouro de Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 9. buffer: Existem três tipos mais conhecidos de ataques a vulnerabilidades utilizando do buffer overflow: • Buffer overflow baseado em pilha: É a técnica de exploração mais simples, funciona a partir da alteração do estado da pilha durante a execução do programa para direcionar a execução para o código malicioso contido no buffer estourado • Buffer overflow baseado em heap: Mais difícil de explorar, por causa da disciplina de acesso à heap (blocos não contíguos, fragmentação interna). Deve- se estourar o buffer armazenado na área da heap em direção ao endereço de retorno na pilha, para direcionar a execução para o código malicioso que se encontra no buffer estourado; • Buffer overflow de retorno à libc: Alteram o fluxo de execução pelo estouro de algum buffer na pilha ou heap, para algum trecho de código armazenado no segmento de texto do programa. Tipicamente este trecho de código é alguma chamada de função comumente utilizada da biblioteca padrão libc, como as chamadas de execução arbitrária de comandos (funções da família exec(3)). Este tipo de ataque tem sido comum após a inclusão de patches nos sistemas operacionais que impedem a execução de código na pilha, heap ou região de dados. Segue uma demonstração de código que realiza tais procedimentos: #include <stdio.h> #include <string.h> int main(int argc, char *argv[]){ char buffer1[8] = {'B','U','F','F','E','R','1','0'}; char buffer2[8] = {'B','U','F','F','E','R','2','0'}; printf("n[ANTES] Buffer2 contem: %sn",buffer2); printf("[ANTES] Buffer1 contem: %snn",buffer1); Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 10. strcpy(buffer2,argv[1]); printf("[DEPOIS] Buffer2 contem: %sn",buffer2); printf("[DEPOIS] Buffer1 contem: %snn",buffer1); return 0; } OWASP O Owasp é uma organização mundial sem fins lucrativos, focada em melhorar somente a segurança do software, tornando-a visivel, para que os usuarios e organizações possam ter tomadas de decisões mais bem tratadas e informadas. A Owasp emite ferramentas de software e documentação baseadas no conhecimento prévio e pleno sobre a segurança de aplicativos, e todas as pessoas, organizações, usuarios, equipes podem usufruir dos dados, pois todos os materiais estão disponiveis sob uma licença de software livre e aberta, predispostos no blog OWASP “www.owasp.org” “Open Web Application Security Project (OWASP) é uma comunidade aberta, dedicada a capacitar as organizações a desenvolver, adquirir e manter aplicações confiáveis. No OWASP se pode encontrar, grátis e de forma aberta.” Fonte: Owasp.org Casos de ataques: "A vulnerabilidade no Skype foi testada copiando e colando um arquivo de imagem especialmente criado na caixa de mensagens do software. Quando a imagem foi detectada na área de transferência dos dois PCs e transferida, o Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 11. buffer overflow ocorre causando os erros no software que podem ser explorados pelo atacante. A vulnerabilidade pode ser explorada remotamente e localmente. Outro detalhe é que ela pode ser explorada mesmo em contas de usuário sem privilégios administrativos." Fonte: R7 Noticias "É 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." Fonte: G1, o portal de noticias da Globo. "Em vídeo, ele aparece explicando o passo a passo de uma invasão desse tipo – analisar sistemas operacionais ou softwares instalados em busca de falhas e, uma vez que uma delas é encontrada, desenvolver um programa que possa explorá-las. Em alguns casos, a brecha é tão simples que apenas poucos minutos de programação são necessários para realizar a invasão, como no caso do vídeo, em que o vetor usado conta com apenas 65 linhas de código. Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 12. No caso da exibição, a vulnerabilidade utilizada por Geohot foi um “transbordamento de dados”, ou “buffer overflow”. Trata-se de um caso de violação de segurança causada por um aplicativo que escreve dados acima do limite imposto para armazenamento temporário na memória. Isso pode causar desde problemas como travamentos ou comportamento irregular até brechas como a exposta, e é uma falha mais comum do que se imagina." Fonte: CanalTech “O ataque hacker recentemente sofrido pela Sony Pictures vai deixar marcas profundas nos registros históricos da empresa. Além dos filmes inéditos que foram distribuidos gratuitamente para toda internet, muitas informações confidencias também foram vazadas, preocupando muitos os “chefões” e todos os outros funcionários da companhia. Porém, essa investida sofrida pela subsidiária da japonesa Sony pode ser muito maior do que todos imaginávamos.“ Fonte: TecMundo Segundo Singel até mesmo um usuário cuidadoso, que mantém anti-vírus atualizado e preocupa-se com o acesso a páginas suspeitas, pode tornar-se vítima de um ataque como esse. Esse mesmo indivíduo, quando acessou em setembro de 2006, um blog hospedado pelo HostGator (Grande provedor na Califórnia), foi direcionado para um site que explorava um bug no antigo formato de imagem da Microsoft e teve um malware instalado em sua máquina(SINGEL, 2007). CONCLUSÃO Os erros de buffer estão contidos nas capacidades de armazenamento (memórias) dos sistemas, quando exploradas a fim do estouro de buffer, são inseridos nos mesmos mais caracteres ou informações do que a capacidade Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 13. real, a fim de paralisar o sistema, findando a sua execução a fim de deixa-lo vulneravel e livre para ataques, explorações, extrações de dados, variaveis, funções e todo tipo de capacidade interna do mesmo. Essa vulnerabilidade é conhecida como buffer overflow. A maioria das vulnerabilidades de buffer overflow acontece devido a erros do programador, quando o mesmo não verificava com antecedência os limites do buffer ao utilizá-lo. Um exemplo de código vulnerável pode ser visto abaixo: “#include #include int main( int argc, char **argv ) { char buf[5]; strcpy( buf, arg[1] ); return 0; }“ O programador de sistemas deve se manter sempre atento a erros comuns e evita-los, por exemplo, comandos que podem gerar o erro de bufferoverflow, como strcpy, que deve ser substituído por strncpy, entre outros do mesmo segmento. A partir do instante que se inicia um projeto executável, deve se tomar todo cuidado possível para que o mesmo não esteja vulnerável a ataques do gênero, o cuidado se deve desde as variáveis declaradas até a interface. Os exploits são conjuntos de variáveis executáveis que retornam em pequenos sistemas capazes de explorar vulnerabilidades como as mencionadas no artigo, como estouro de buffer, entre outros defeitos encontrados no software que podem ser tratados como uma falha capaz de aderir a outro sistema executável que abstrai dados, informações e valores reais contidos. A partir das vulnerabilidades predispostas, do conhecimento prévio a respeito de exploits, explorações, linguagens de programação, tem-se o pentest e os pentesters, que são desginados para estudar as vulnerabilidades, conhece-las, prever os tipos de exploits que são capazes de se adentrarem em falhas potenciais e então trabalhar para a segurança defensiva, onde previne-se possíveis ataques e assegura-se sistemas confidenciais, dados, informações, empresas, organizações e afasta-se hackers e programadores do sistema em questão. DEVELOPMENT OF EXPLOITS Abstract: This work tries to explain and to demonstrate in a practical way how the system attacks, the exploits, how the work of the pentesters and how the pentests are done, when and how bufferoverflows occur, codes that demonstrate the actual processes and facts that prove the seriousness of system vulnerabilities. Keywords: Exploit, bufferoverflow, pentest, malware. Aluna do 3º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luiz Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2017.
  • 14. REFERENCIAS “Saiba o que são falhas de segurança 'dia zero' e como se proteger delas.” G1, O portal de noticias da Globo. <http://g1.globo.com/Noticias/Tecnologia/0,,MUL1128175-6174,00- SAIBA+O+QUE+SAO+FALHAS+DE+SEGURANCA+DIA+ZERO+E+COMO+S E+PROTEGER+DELAS.html> “7 Ferramentas poderosas utilizadas por pentesters profissionais.” OnebitCode.com <http://onebitcode.com/7-ferramentas-poderosas-utilizadas-por-pentesters- profissionais/> “Conheça os diferentes tipos de vulnerabilidades e ataques de hackers.” G1, o portal de noticas da Globo <http://g1.globo.com/tecnologia/noticia/2010/05/conheca-os-diferentes-tipos- de-vulnerabilidades-e-ataques-de-hackers.html > “Hacker do iPhone mostra como funciona uma invasão de computadores” CanalTech <https://canaltech.com.br/hacker/hacker-do-iphone-mostra-como-funciona- uma-invasao-de-computadores-73441/> “Termos Hakcers e Exploits” Mundo dos Hackers <http://www.mundodoshackers.com.br/termos-hacker-exploits> Exploits: Um exploit geralmente é uma sequencia de comandos, dados ou uma parte de um software elaborados por hackers que tiram proveito de uma vulnerabilidade.
  • 15. A ENGENHARIA SOCIAL VISTA DO NOSSO COTIDIANO Nara Barros da Cruz Silva1 Resumo: Este trabalho procurou identificar as consequências mais importantes da engenharia social, como é aplicada, em quais casos é utilizada, como é feita no nosso dia a dia e uma básica prevenção à respeito. A concepção de engenharia social deu origem a uma série de invasões, ataques a sistemas, empresas e até grandes organizações. Até os dias atuais onde a segurança é grandemente visada e a população conscientizada à respeito, pode-se verificar um alto índice de invasões e acessos ilegais realizados por pessoas e ou grupos especializados e com inúmeras táticas de retirada de informações e dados confidenciais de empresas- alvo. Através de alguns exemplos reais e trechos de relatos será feita a demonstração de todo o contexto, mostrando como age a vítima, o invasor e a organização. Palavras-chave: Engenharia social, invasão, vítima, ilegal, acesso. Introdução A Engenharia Social é uma das técnicas mais conhecidas e utilizadas por Crackers para obter acesso não autorizado a sistemas, redes ou informações com grande valor estratégico para as organizações e conseguir o que lhes é interessante. Os Crackers que utilizam desta técnica são conhecidos como Engenheiros Sociais. O uso dessa tática tem como característica principal a grande capacidade de persuasão, convencimento e proximidade com contatos internos e envolvidos ao sistema, organização ou projeto que se quer envolver, uma das táticas que mais geram vulnerabilidade nos usuários que estão lidando com os engenheiros sociais são as emoções que conseguem causar nos mesmos, sendo elas medo, agitação, culpa, entre outras que colocam a vítima em uma grande desvantagem por estar mais sensível a todo e qualquer truque que for dirigido a mesma, após essa fase, são utilizados de alguns gatilhos psicológicos que levam as pessoas a darem 1 Aluna do 2º ano do Curso de Sistemas de Informação E-mail: narabarroscruz@gmail.com Trabalho orientado pelo Prof. Luis Otavio Marestoni Camalionte e apresentado no programa de Iniciação Científica do Centro Universitário de Bauru no ano de 2016.
  • 16. respostas sem análises prévias do conteúdo delas, sem medirem o peso do que estão fornecendo a estranhos ou pseudo-estranhos. O atacante carrega consigo armas fundamentais para suas aproximações, são elas alguns comportamentos, como: Simpatia e intimidação, que geram na vítima a liberdade, afeição e uma pequena dose de culpa se não utilizar de tudo que pode e tem acesso para ajudar e retribuir a forma de tratamento que foi recebida, o que a torna instantaneamente vulnerável. Há quem diga que um computador seguro é um computador desligado, essa afirmação é inteligente, porém falsa, pois um engenheiro social convence alguém a entrar no escritório e ligar esse computador. O ponto forte da engenharia social e as seis técnicas mais utilizadas pelos engenheiros: Na abordagem desse tema, é preciso citar Kevin D Mitnick, um dos mais famosos Crackers de todos os tempos, utilizou da engenharia social para muitos dos seus ataques, e deixou seus registros e dicas contidos no livro A arte de enganar, de sua própria autoria, que também foi de muita utilidade nesse artigo, tendo aqui contida uma parte de seu conteúdo. A seguir explicitarei as seis técnicas mais conhecidas e utilizadas nos ataques populares: Analise do lixo: Poucas organizações tomam o cuidado de checar e observar minuciosamente o que está sendo descartado e de que forma está sendo feito esse descarte. O lixo é uma das fontes mais ricas de informações sobre um determinado local, através dele pode-se coletar informações valiosas como nomes de funcionários, telefones, e-mails, senhas, transações, contatos de clientes e fornecedores e até o que causa a maior proximidade na relação funcionário- empresa, que são os jargões2 internos mais utilizados. Internet e redes sociais: Muitas informações podem ser coletadas através da internet e das redes sociais, pois os engenheiros sociais utilizam desse recurso para conhecer melhor a empresa, seus projetos e políticas, suas missões, visões e valores e até mesmo dados dos gestores e do corpo dirigente da mesma, para ter 2 Jargão significa uma linguagem pouco compreensível, em muitos casos por ser específica de determinado grupo profissional ou sociocultural.
  • 17. uma melhor inteiração em tudo que acontece internamente e agir com mais segurança. Contato telefonico: Após todo o estudo das duas técnicas já citadas, o engenheiro pode iniciar os contatos telefonicos, para assim obter alguns acessos não autorizados, com esses contatos em mãos e um amplo banco de dados de informações confidenciais da organização em questão, o trabalho do engenheiro se torna mais simples e eficaz, podendo se passar por funcionários, conseguir a confirança dos mesmos, e ter acesso a plataformas internas que os mesmos utilizam. Abordagem pessoal: Esta técnica consiste no contato direto do engenheiro com a empresa, onde o mesmo visita pessoalmente o seu alvo e com todo o material que já arrecadou de informações a respeito, pode se passar por um fornecedor, funcionário, cliente e não tem muita dificuldade em convencer seguranças, secretárias, recepcionistas a liberarem acessosque está procurando, é uma fase arriscada da engenharia social, mas que é muito bem aplicada e funciona até os dias atuais. Phishing: Essa é a técnica mais popular dos dias atuais, que realiza o envio de e- mails falsos, manipulados e enviados para organizações com o intuito de aguçar as emoções do receptor, fazendo com que ele aceite-o e haja conforme as operações solicitadas, a maioria dos Phishing possuem anexos ou links que redirecionam o receptor para onde o Cracker deseja fazer o acesso. Falhas humanas: A exploração das emoções cotidianas dos funcionários, onde geram comoção em dialogos vitimistas, ou passam confiança em dialogos cheios de jargões, apelidos, frases típicas da organização, ou até curiosidade em assuntos que já foram coletador e demonstram ser do interesse do funcionário que está em jogo e já foi previamente avaliado e estudado para ser atraído. “Engenharia social usa a influencia e a persuasão para enganar as pessoas e convence-las de que o engenheiro social é alguém que ele não é, ou pela manipulação. Como resultado, o engenheiro social pode aproveitar-se das pessoas para obter as informações com ou sem o uso da tecnologia.”(MITNICK, 2003, p.6.)
  • 18. Uma forma de trapaça comum é atrair a simpatia do empregado com a comoção e os argumentos ensaiados do gênero “Meu chefe não está feliz comigo”, “Eu preciso de algo que só você pode me ajudar”, “Posso me prejudicar se não receber um apoio nessa tarefa”, pois as pessoas em geral não mostram suas emoções particulares e suas intimidades sentimentais no trabalho com frequencia, ou seja, ao fazer esse “apelo” ao empregado, derruba-se uma barreira de defesa dos funcionários contra a engenharia sócia. O truque emocional de “Eu estou com problemas, você pode me ajudar?” gera uma comoção sucedida de um alívio à quemforneceu os dados, por se sentir bem com o fato de ter ajudado alguém, deixando claro o exemplo da estrutura emocional como barreira a segurança organizacional. A esse respeito, Mitnick afirma: “A verdade é que ninguém está imune contra ser enganado por um bom engenheiro social. Devido ao ritmo da vida normal, nem sempre pensamos com cuidado antes de tomarmos as decisões, mesmo em questões que são importantes para nós. As situações complicadas, a falta de tempo, o estado emocional ou a fadiga mental podem facilmente nos distrair. Assim sendo, tomamos um atalho mental e resolvemos sem analisar cuidadosamente as informações, um processo mental conhecido como resposta automática. Isso é válido até para os agentes da lei dos governos federal, estadual e municipal. Somos humanos.” (MITNICK, 2003, p.99). Um exemplo de um telefonema onde ocorre uma coleta de dados feita por um engenheiro social: G. - Bom dia, sou Fulano gerente de relacionamento do banco X, falo com o senhor Cicrano titular da conta n° 123456 ? (o número da conta pode ter conseguido de mil maneiras, por exemplo numa fila de banco ou por alguém ter deixado algum papelzinho num caixa de atendimento automático ou com a cumplicidade de algum funcionário de lojas onde foram feitas compras com cheque). V. - Sim, sou eu... G. - Estamos recadastrando os clientes no novo sistema do banco por razões de segurança e estou ligando para confirmar seus dados ... O senhor nasceu em DD/MM/AAAA (existem várias maneiras para se ter este dado, mas não vou sugerir aqui), mora na rua YYY (pegou esta informação na lista telefônica, ou em documentos que estavam em suas mãos na fila do banco ou novamente de algum funcionário de loja, por exemplo), o seu telefone é ainda o 123456 (idem como
  • 19. antes), o seu CPF é o 777.777.777-77 (também existem várias maneiras para conseguir isso, num cheque por exemplo) e o RG é 456789 (idem) ?? V. - Sim, os dados são corretos. (nesta altura, visto quantas coisas o interlocutor já sabe sobre ele, a vítima não duvida que se trate mesmo do gerente do banco). G. - Pode me confirmar o número do seu cartão de crédito (ou do banco) ? V. - Sim, o número é 123456789 ... G.- Correto, muito bem os seus dados foram atualizados. Só falta o senhor confirmar tudo através das suas senhas. Vou lhe passar a central de autenticação onde o senhor poderá digitar as senhas diretamente no seu aparelho de telefone. Aí passa uma espécie de sistema automático com voz registrada que pede, para confirmar o cadastro, primeiro para digitar no aparelho a senha do cartão e depois a senha do "internet banking" e demais dados (vencimento do cartão, código de segurança no verso etc...). Essa foi uma demonstração de um dos modos em que um engenheiro social faz sua proximidade e consegue os dados que precisa para algum ataque, eles utilizam de várias coletas, estudos do meio em que estão se infiltrando e depois utilizam tudo que já coletaram à respeito para convencer a vítima. Outra forma de trapaça é a utilização da técnica Advocacia administrativa, que consiste no ato de intimidar com nomes de diretores, gerentes, gestores, utilizando- os para realizar solicitações favoráveis ao ataque em questão, gerando confiança entre todo o corpo empresarial, impondo respeito e exercendo uma grande influencia, deixando todos os envolvidos nas solicitações apreensivos e fazendo com que reajam com extremo cuidado e agilidade. Essa intimidação pode criar o medo de punição e uma grande influencia em todos para que cooperem com o máximo que podem, também é capaz de gerar o medo de uma situação embaraçosa, ou a desqualificação para uma nova promoção, ou algum prestigio similar interno da organização. As pessoas devem ser treinadas para saber lidar com todos os tipos de técnicas já citados e exemplificados, devem ter consciência de que o estado emocional não pode em hipotese alguma estar acima da razão, ética e valores da organização em que fazem parte, também devem estar devidamente aptas a tomarem conhecimento de todas as situações que se envolverem antes de fornecerem todo e qualquer dado empresarial, sendo secreto ou não. “As pessoas devem ser treinadas para saber que não apenas é aceitavel, mas também é esperado o desafio à autoridade quando a segurança está em jogo. O treinamento para a segurança das informações deve incluir o ensino de como desafiar a autoridade de maneiras amistosas ao cliente, sem
  • 20. danificar os relacionamentos. Além disso, essa expectativa deve receber suporte de cima para baixo. Se um empregado não tiver apoio ao desafiar as pessoas independentemente de seus status, a reação normal é parar o desafio-exatamente o oposto daquilo que você quer.” (MITNICK, 2003, p.90) O fator humano é o elo mais fraco da segurança, e por essa razão, tem de se ter um cuidado maior que a capacidade humana de expor dados e informações, o que é extremamente dificil, porém existem várias formas de se obter esse fator em uma organização, uma delas é ter sempre dispositivos de autenticação, senhas diferentes e o mínimo de acesso possível, tornando públicas somente informações cruciais ao desenvolvimento díario das tarefas dos empregados, também é de extrema eficiencia o uso de tokens, que trabalham com tempo real, cartões inteligentes, grande uso de biometria, uma alta detecção de intrusos e um pessoal altamente treinado, capacitado, com toda a instrução e conscientização necessária sobre todos os tipos de abordagens e técnicas que uma empresa se submete. Outro cuidado extremamente essencial que muitas empresas deixam de tomar e pode ser prejudicial, é o com ex funcionarios, as mesmas precisam estar preparadas para os ataques da engenharia social vindos de ex funcionarios, que podem retornar indiretamente as suas funções por descontentamento, concorrencia, entre outros tipos de sentimentos negativos que podem acontecer no decorrer de uma relação funcionario/empresa. As verificações de histórico, podem ser úteis para detectar funcionários e ex funcionários que tem ou teriam propensão à esse tipo de comportamento, o departamento de recursos humanos deve ter total controle e informação sobre a personalidade, capacidade e comportamentos dos funcionários, para assim ser de fácil detecção as ameaças e futuras ameaças. Em 2012 um site de notícias de uma emissora nacional (G1, Globo) publicou um site e uma matéria de como utiliza-lo para verificar os gostos pessoais de usuários, o tipo de humor que compartilham, quais seus interesses e comportamentos mais frequentes, o que também pode ser utilizado como tática de recursos humanos, para conhecer cada empregado, seus interesses, seu comportamento e verificar possíveis ameaças, insatisfações e capacidades. Segue um exemplo ilustrativo de como realizar a avaliação pessoal:3 3 ¹ Você pode ver todo o conteúdo no link: http://g1.globo.com/tecnologia/noticia/2012/03/site-cria-grafico-para- mostrar-o-que-o-interesse-do-usuario-nas-redes-sociais.html
  • 21. As empresas que realizam testes de penetração de segurança relatam que tentativas de invasão em sistemas de uma empresa cliente com técnicas de engenharia social tem um índice de sucesso de cem por cento, as tecnologias de segurança podem dificultar grandemente esse processo, porpem o único meio realmente eficaz de amenizar a ameaça da engenharia social é a conscientização combinada a politicas que definem as principais regras de comportamento para o empregado, junto com sua educação e treinamento. Uma comunidade de informações de tecnologia e informática (Computer Word) nacional do canal Terra realizou uma coleta de ferramentas de testes de invasão que reforçam a segurança de uma empresa, são elas: Metasploit: O Metasploit é um framework com inúmeros fãs entre os programadores. Ele adiciona ferramentas de teste customizadas, que procuram fraquezas em sistemas operacionais e aplicações. Os módulos customizados são lançados noGitHub e no Bitbucket, repositórios online para projetos de código. Nessus Vulnerability Scanner: O Nessus Vulnerability Scanner também é popular na localização de vulnerabilidades. A tecnologia vasculha computadores e firewalls à procura de portas abertas para a instalação de software potencialmente malicioso. Nmap: O Nmap determina os tipos de computadores, servidores e hardware que as empresas possuem conectados às redes corporativas. A possibilidade de essas máquinas serem identificáveis via escaneamento externo é por si só uma vulnerabilidade, explorada por agressores para estabelecer planos de ataque. O uso do Nmap também pode ser feito para procurar hosts, portas abertas, versões de software, sistemas operacionais, hardware e fragilidades, geralmente mapeando a superfície de ataque da rede. Ele é útil em cada etapa dos testes de penetração, identificando os componentes conectados ao entrar em um novo segmento de rede. Burp Suite: A Burp Suite é outra aplicação de testes de penetração. Ele mapeia e analisa aplicações web, encontrando e explorando fraquezas. Utilizada com seu navegador para mapear as aplicações na web. As ferramentas dentro da suíte descobrem buracos de segurança e lançam ataques customizados. Além disso, a Burp Suite automatiza funções repetitivas enquanto retém a escolha do usuário quando o utilizador precisa ter o controle das opções individualizadas. OWASP ZAP: Sem fins lucrativos, a OWASP ZAP oferece escaneamento manual e automático de aplicações web, tanto para novatos quanto para veteranos em testes de penetração. Com código aberto, ela está disponível no GitHub. A ferramenta desempenha uma variedade de testes, incluindo escaneamento de portas, ataque de força bruta e fuzzing, tudo para identificar códigos maliciosos.
  • 22. Um exemplo de segurança muito utilizado nos dias atuais, onde podemos ver até em aplicativos populares e de uso cotidiano como o Whatsapp, é a criptografia, que consiste em um conjunto de técnicas usadas para manter a informação segura. Com ela é possível transformar palavras escritas e outros tipos de mensagens em “frases” desconexas e inteligiveis para receptores não autorizados, já quando se trata de um receptor autorizado, o mesmo transforma o conteúdo da mensagem em algo perfeitamente compreensível. Um exemplo para o melhor entendimento: “A SSL é um protocolo criptografico.” - Mensagem a ser criptografada “ÇW@>[“ - Mensagem já criptografada. Embora existam inúmeras formas de assegurar os usos empresariais de máquinas, acessos e dados, como já citados até aqui, ainda se tem a necessidade de uma política de segurança eficaz, vista como um processo contínuo e colaborativo, a revisão constante da mesma é necessária para salvaguardar as redes, os riscos nunca podem ser totalmente eliminados, porém com essas melhorias aplicadas e uma melhor relação entre TI e RH, fazem com que a política e a tecnologia caminhem juntas e a segurança se torna mais rigida. Segundo Jhon Mutch e Brian Anderson no livro Gerenciando Privilégios em Tecnologia da Informação, 48% das quebras da segurança de dados foram causadas por pessoas do ramo interno da organização (+26%), 48% envolveram abuso de privilégios (+26%) e 98% de todas as quebras de segurança de dados vieram de servidores. São as ameaças: Internas: Administração de identidade privilegiadas (PIM*) e segurança de dados e prevenção de vazamentos. Externas: Antivirus, firewalls, detecção e prevenção de invasores, segurança de e- mails, segurança na web. *O gerenciamento de identidades privilegiadas (PIM) é parte da família de tecnologias gerais de gerenciamento de identidade e acesso (IAM), que juntas proporcionam às corporações mecanismos para controlar quem, o que, onde, quando e por que do gerenciamento de acesso seguro. Todas as empresas estão sujeitas a sofrerem ataques de diversas formas, em dezembro de 2009, a Google informou que foi vítima de um ataque virtual que partiu da China. Na verdade, ela não foi a única empresa a ter sua segurança quebrada. Na mesma ocasião, empresas como Adobe, Yahoo, Symantec e outras passaram
  • 23. pelo mesmo problema. No total, foram 20 companhias do 4 Vale do Silício visadas pelos crackers, e o ataque foi realizado com sucesso na maioria delas. 4 Você pode ver toda a matéria em: http://www.tecmundo.com.br/seguranca/26476-os-9-maiores-roubos-de- dados-da-internet.htm
  • 24. CONCLUSÃO No contexto apresentado acima, a necessidade de prover segurança da informação tem sido uma questão constante nas organizações. A segurança da informação visa proteger os sistemas através de um conjunto de medidas que preservam informações e explicam a engenharia social de forma sucinta e conscientizam as organizações dos perigos que correm e de táticas que estão submissas, de forma que possam se defender e resguardar a estrutura organizacional de ataques, invasões e até mesmo perda da mesma. Embora a grande maioria das organizações e usuários comuns possua mecanismos técnicos defensivos contra ataques, os quais exigem o usuário informar não apenas seu login (ou nome de usuário num sistema) e respectiva senha, bem como verifica a existência de vírus em arquivos, ainda assim os sistemas atuais são susceptíveis a ataques não técnicos decorrentes da engenharia social, por esta razão foram apresentados os mesmos, alguns exemplos claros, as necessidades das empresas e os perfis pessoais das vítimas, crackers e organizações em geral. A segurança da informação, contudo, está mais ligada a um fator humano, a uma maior conscientização, que há tecnologias avançadas, alguns conceitos se fazem úteis à respeito da afirmação: Segundo (Behrouz A. Forouzan, 2006, pg. 711) a segurança da informação deve proporcionar a garantia de cinco princípios quando se trata de segurança aplicada à informação, sendo eles: Confidencialidade: É a garantia de que as informações transmitidas chegarão ao seu destino sem que dissipem para outro lugar onde não devia passar. Várias tecnologias como, por exemplo, criptografia e autenticações podem ser usadas, desde que mantenham a integridade das informações. Integridade:É a garantia de que as informações não sofreram nenhuma modificação durante o trajeto entre a pessoa que enviou e a pessoa que recebeu a informação, garantindo assim a sua real veracidade após chegarem ao destino. Disponibilidade:De nada adianta possuir integridade e confidencialidade, se a informação nunca está disponível, pois o grande desafio é manter esta estrutura de passagem de informações de formas confiável e integral sem que haja impossibilidade de captar as informações. Autenticidade: Conhecido como responsabilidade final e tem como objetivo verificar a identidade e autenticidade de alguém ou até mesmo de um agente exterior a fim de garantir a integridade de origem.
  • 25. Não Repúdio: A “Negação” é o termo chave para este requisito, onde o usuário tentará negar que executou tal tarefa que de fato o fez, na maioria das vezes para se livrar de consequências. Dessa maneira poderíamos ilustrar o modelo acima com a imagem abaixo:
  • 26. POPPER’S CONCEPTION OF SCIENCE AND THE TEACHING OF SCIENCES Abstract: This work sought to identify the most important consequences of social engineering, how is your application, its use in daily life and a basic prevention regarding. The meaning of social engineering has given rise invasions, attacks on systems, companies and large organizations In the present day, where security is very targeted, and people know much about has great invasions and illegal access made by individuals or specialized groups and with many tactics to corrupt information and confidential data. With real examples and stories of excerpts the victim mode will be presented, the attacker and the company. Keywords: Social engineering, invasion, victim, illegal access
  • 27. REFERÊNCIAS MITNICK, Kevin A arte de enganar Person Education 2003. MACHADO, Felipe Segurança da Informação - Princípios e Controle de Ameaças Editora Erica 2014. MUTCH, Jhon Gerenciando Privilégios Em Tecnologia da Informação NOVATEC 2012.