A Injeção de SQL ocorre quando dados inseguros são enviados ao interpretador como parte de um comando ou consulta. Os dados alterados são enviados pelo invasor visando enganar o interpretador para que este execute os comandos maliciosos ou permita o acesso a dados não autorizados. Considerado um dos grandes desafios das aplicações web o SQL Injection tomou o posto principal em uma analise realizada pela OWASP, quando um ataque obtém sucesso o invasor poderá ter acesso ao banco de dados da aplicação.
Os vetores de ataque são simples, baseados em textos enviados pelos atacantes, visando explorar a sintaxe do interpretador onde praticamente qualquer fonte de dados pode ser considerada como um vetor de injeção, inclusive fontes internas. Já as vulnerabilidades de segurança exploradas no SQL Injection quando uma aplicação enviar dados não confiáveis a um interpretador, os impactos técnicos poderão resultar em perda ou corrupção de dados, negação de acesso e, em alguns casos, poderá acarretar no comprometimento completo do servidor. Finalmente, os impactos no negócio são que a reputação e as atividades da empresa poderão ser totalmente prejudicadas já que os dados podem ser roubados, modificados ou excluídos, perdendo a confidencialidade, integridade e até mesmo disponibilidade das informações.
Uma aplicação esta suscetível a SQL Injection se os interpretadores não separam dados não confiáveis dos comandos ou consultas, para se proteger de tal ação deve-se utilizar variáveis de ligação nos procedimentos armazenados e instruções preparadas buscando também não realizar consultas dinâmicas. Analisar o código fonte é uma forma eficaz de se identificar se os interpretadores estão sendo utilizados de maneira segura, os testes de invasão por meio de exploits podem ajudar a confirmar se tal vulnerabilidade esta presente.
A prevenção do SQL Injection deve ocorrer buscando manter os dados inseguros separados das consultas e comandos, a forma preferida de prevenção é por meio de interfaces de programação de aplicativos (API) que buscam evitar totalmente o uso de interpretadores o seu uso deve ser cuidadosamente avaliado pois podem ocorrer injeções em segundo plano se utilizados incorretamente, caso não seja utilizado um API deve-se efetuar a filtragem dos caracteres especiais utilizados para tal finalidade maliciosa.
Já as falhas de XSS residente ocorrem sempre que uma aplicação recebe dados não confiáveis e os envia ao navegador sem validação ou filtro adequados. Permite aos agentes de ameaça executarem scripts no navegador da vítima que podem obter sessões do usuário, desfigurar sites, ou redirecionar o usuário para sites maliciosos.
Diferente da injeção de SQL que busca executar instruções SQL maliciosas em consultas no banco de dados ocorrendo fora da vista dos usuários, o XSS Residente busca executar marcações maliciosas ou códigos Javascript em valores que serão mostrados em uma página web. Este tipo de ataque busca enganar o usuário que tem confiança em um site levando-o a executar uma ação ou exibição de informações para um outro site não confiável.
As vulnerabilidades relacionadas ao XSS Residente estão ligadas a não filtragem de todas as entradas enviadas pelos usuários bem como a não avaliação da segurança das informações na entrada antes que sejam incluídas na pagina de saída. Sem um filtro apropriado as entradas fornecidas serão consideradas conteúdos ativos no navegador, existem algumas ferramentas que podem localizar algumas falhas de XSS automaticamente, entretanto cada aplicação possui paginas de saída diferenciadas utilizando interpretadores diversos juntamente com o navegador como Javascript, Flash, Silverlight e ActiveX causando maior dificuldades para uma detecção automatizada assim necessitando de uma analise manual, bem como testes de invasão para analise das vulnerabilidades. Prevenir os ataques por XSS consistem na separação de dados inseguros do conteúdo ativo do navegador, assim deve-se efetuar uma filtragem total dos dados inseguros baseados no contexto HTML (corpo, atributo, Javascript, CSS ou URL).
O spoofing (falsificação) funciona assim: Um cibercriminoso se finge ser outra pessoa ou entidade para enganar alguém. Assim que o cibercriminoso ganha a confiança da vítima, o perigo é iminente. Spoofers de e-mail, telefone e SMS enganam as vítimas para que elas entreguem informações pessoais, que podem levar a fraudes financeiras ou roubo de identidade.
Cibercriminosos usam frequentemente spoofing de e-mail para iludir as vítimas em golpes de phishing. Outros tipos de spoofing visam redes em vez de indivíduos, com o objetivo de espalhar malware, roubar dados, contornar sistemas de segurança ou preparar ataques subsequentes.
Como o spoofing se baseia em enganação, impedir e detectar esses ataques pode ser complicado. Por isso, é muito importante se proteger com uma segurança de internet forte e confiável. O antivírus escaneia constantemente se há ameaças e protege contra os tipos de ataques de phishing e malware que os spoofers adoram.
A diferença entre spoofing e phishing é que, embora o spoofing use a identidade de outra pessoa, os ataques de phishing tentam acessar informações confidenciais. Golpes de phishing comuns envolvem “atrair” as vítimas com uma isca, como e-mails falsos, e fazer com que elas forneçam dados pessoais que podem ser usados para roubo de identidade.
Ataques de spoofing fazem parecer que as comunicações do cibercriminoso são confiáveis, porque imitam a aparência de fontes confiáveis. Muitos phishers usam o spoofing para fazer com que as vítimas acreditem que o e-mail que usam é legítimo. Esse tipo de engenharia social manipuladora é usado pelos golpes de phishing para convencer as vítimas a divulgar informações pessoais.
Como mencionamos, há vários tipos de spoofing. Spoofing no nível de DNS ou endereço IP é diferente de phishing, pois envolve métodos técnicos para enganar um computador ou um sistema. Por exemplo, typosquatting
é um tipo de ataque de spoofing que usa erros comuns que as pessoas cometem ao digitar URLs para fazer com que pensem que acessaram o site correto.
Porém, spoofing de e-mail e phishing são muito parecidos e muitas vezes são usados juntos.
Cibercriminosos mais inteligentes usam spoofing para tornar os e-mails de phishing ou as mensagens SMS muito mais convincentes e aumentar as chances de sucesso.
O spoofing de site ocorre quando um cibercriminoso cria um site falso que parece legítimo. Ao fazer login, o cibercriminoso obtém suas credenciais.
Às vezes, spoofers mal-intencionados usam um URL disfarçado, que redireciona você para o sistema deles e coleta suas informações pessoais. Eles podem até disfarçar o verdadeiro URL de destino, inserindo caracteres de controle especiais que contêm um significado diferente dos caracteres exibidos. Frequentemente, como no “typosquatting”, o URL é tão parecido com o endereço pretendido que você pode não notar a diferença.
Spoofing de IP acontece em um nível mais profundo da internet do que o spoofing de e-mail. Quando um cibercriminoso usa o spoofing de IP, ele está lidando com um dos protocolos web mais básicos. Todo dispositivo se conecta à internet de um endereço IP, uma cadeia de números que informa aos outros onde ele está. Quando o dispositivo envia e recebe informações, ele usa pacotes de dados que podem encontrar o endereço IP do dispositivo.
Muitas redes fechadas são configuradas para aceitar apenas pacotes de um intervalo pré-aprovado de endereços IP. Essa medida de segurança impede o ingresso de dispositivos desconhecidos. Um cibercriminoso pode usar um ataque de spoofing de IP para alterar o endereço IP do seu dispositivo e enganar uma rede segura permitir a invasão. Você pode ocultar seu endereço IP para evitar que ele seja usado como disfarce.
Um buffer overflow (ou transbordamento de dados) ocorre quando um programa em execução tenta gravar dados além do que o buffer de memória permite, sobrecarregando o sistema operacional. Este tipo de falha é usada por cibercriminosos para executar código arbitrário em um computador, de modo que em muitos casos eles conseguem obter o controle do dispositivo da vítima ou executar um ataque de Negação de Serviço (DoS).
Na verdade, um buffer overflow ocorre quando um aplicativo não conta com os controles de segurança necessários em seu código de programação. Deve-se destacar que, para realizar um transbordamento de dados, é necessário ter conhecimentos de programação, bem como noções básicas de arquitetura de sistemas operacionais.
O princípio operacional de um buffer overflow anda de mãos dadas com a arquitetura do processador no qual um aplicativo vulnerável é executada, seja ele de 32 bits ou 64 bits. Os dados inseridos em um aplicativo são armazenados na memória de acesso aleatório, em uma área conhecida como buffer. Um programa devidamente projetado estipula um tamanho máximo para os dados de entrada e garante que esse valor não seja excedido.
As instruções e os dados de um programa em execução são armazenados temporariamente na memória, em uma área chamada de pilha. Os dados que ficam depois do buffer contêm um endereço de retorno (chamado de ponteiro de instruções) que permite que o programa continue seu tempo de execução. Se o tamanho dos dados for maior que o buffer, o endereço de retorno é sobrescrito e o programa lerá um endereço de memória inválido, causando uma violação de segmento no aplicativo. Qual é o risco de segurança nisso?
Um cibercriminoso com sólidos conhecimentos técnicos pode garantir que o endereço de memória sobrescrito corresponda a um endereço real, por exemplo, um que esteja localizado no mesmo buffer. Ao inserir as instruções no buffer (o código arbitrário), torna-se fácil executar essa instrução. Desta forma, é possível incluir instruções no buffer que permitem a abertura de um intérprete de comandos (como um shell), o que pode fazer com que um atacante assuma o controle do sistema. Este código arbitrário que permite a execução do intérprete de comandos é conhecido como código de shell ou shellcode.
Como vimos anteriormente, essa falha pode ser encontrada em sistemas operacionais, em outros tipos de aplicativos de terceiros e até mesmo em protocolos. Nestes casos, o ideal é realizar a leitura das falhas que são corrigidas através de atualizações dos aplicativos e sistemas operacionais – a instalação de atualizações corrige este tipo de erro, fechando brechas que podem facilitar a ocorrência de um vazamento de dados.
A adoção de uma política de atualizações, em conjunto com uma solução de segurança, ajuda a evitar a exploração desses bugs na programação de aplicativos.
Essa expressão típica brasileira está ligada diretamente ao honeypot em segurança digital. Ao traduzir para o português, honeypot significa “pote de mel”, algo doce e gostoso que pode atrair predadores. Essa é a função básica do honeypot, atrair os invasores para uma armadilha.
O honeypot é um sistema conectado à rede e configurado como chamariz para atrair os ataques cibernéticos detectando, desviando e estudando as tentativas dos hackers em obter acesso não autorizado aos sistemas de informação.
A função de um honeypot é se apresentar na internet como um alvo potencial para invasores — geralmente, um servidor ou outra fonte de alto valor — e coletar informações, notificando os defensores — white hats — sobre quaisquer tentativas de acesso a isca por usuários não autorizados.
Basicamente, o hacker atua roubando dados e informações, mas ao cair no honeypot, ele estará dando informações para os defensores do sistema. Se o usuário, por exemplo, fosse responsável pela segurança de TI de um banco, poderia configurar um sistema honeypot que, para quem está de fora, se parece com a rede do banco.
Ao monitorar o tráfego para esses sistemas isca, pode-se entender melhor de onde vêm os criminosos, como operam e o que desejam. Mais importante, pode-se determinar quais medidas de segurança estão funcionando — e quais podem precisar de melhorias — simplesmente observando como estão praticando a invasão. É um verdadeiro “Raio-X” sobre a forma de agir do determinado hacker.
Usualmente, esse tipo de ferramenta vem sendo utilizada em sistemas de alta poder de destruição na mão dos hackers, principalmente envolvendo o público e risco de vida, onde a ação de um invasor pode ser tornar um ataque terrorista em potencial.
Pesquisadores e defensores — white hats — usam honeypots para expor vulnerabilidades com dispositivos médicos, postos de gasolina, sistemas de controle industrial usados para atividades como controle de redes de energia elétrica, abertura de comportas de hidrelétricas etc.
Dada toda a atenção que os bandidos recebem por seus esforços de invasão e violação de dados, é bom saber que os protetores de sistemas têm alguns truques para ajudar na proteção contra os ataques cibernéticos. Ao passo que mais dispositivos e sistemas se conectam à Internet, a importância de lutar contra aqueles criminosos que usam a rede como uma arma só vai aumentar, os honeypots podem ajudar na proteção dos sistemas.
Contas e senhas são atualmente o mecanismo de autenticação mais usados para o controle de acesso a sites e serviços oferecidos na internet. É por meio das suas contas e senhas que os sistemas conseguem saber quem é o usuário (autenticação) e definir as ações que ele pode (ou não) realizar (autorização).
Uma senha é um dado secreto, geralmente uma sequência de caracteres, empregada para confirmar a identidade de um usuário em um sistema. Sendo assim, é um mecanismo de autenticação baseado em algo que somente você sabe - um segredo, portanto. As senhas são comumente empregadas em conjunto com um nome de usuário, constituindo desta forma um par de valores para autenticação em um sistema.
Se os caracteres que compõe a senha são obrigatoriamente apenas numéricos, a senha é comumente chamada de PIN - Personal Identification Number. Um exemplo clássico são as senhas de autorização de transação de cartão de crédito ou de contas bancárias.
Já uma sequência de palavras ou de cadeias de caracteres separadas por espaços é chamada de passphrase (ou frase secreta), funcionando de forma similar à de uma senha, porém geralmente mais seguras (por serem mais longas).
Técnicas empregadas para descobrir senhas:
Podemos usar sites para testar a segurança de senhas.
Algumas técnicas que empregamos para criar senhas seguras incluem:
C@qu1_P1ngu1m_$0rt&10). Preferencialmente empregue palavras relacionadas a assuntos que você não costuma ter interesse.ePc0mdcCmN@lDp, retirada da frase Eu posso calcular o movimento dos corpos celetes, mas não a loucura das pessoas, de Isaac Newton.
O que evitar ao criar uma senha:
senhaou sequências como 123 ou similares. Palavras relacionadas a hobbies que você tenha.
Geralmente, o SSL e o TLS são fornecidos por domínios e hospedagens pagos, mas alguns sites fornecem ele gratuitamente.
Para configurar o SSL, vá no painel da hospedagem e vá em SSL, e em gerenciar, vá em Importar SSL, onde colocaremos o site.
No site Zero SSL, podemos ter um certificado SSL válido por 90 dias, o que basta pro aprendizado. Depois de criar uma conta no site, vá em Create Free SSL Certificate, coloque o domínio no seu site, e em SSL Certificate Setup. Em Validity, podemos configurar o tempo de validade do certificado. Em CSR & Contact, marque a opção Auto-Generate CSR, depois confirme o plano escolhido (no caso o gratuito).
Na próxima tela, ele vai verificar o e-mail pra saber se o domínio realmente é seu. Depois de verificado, é só clicar em Install Certificate, que ele começara a gerar o certificado (que pode levar alguns minutos até uns dois dias), depois seu certificado estará disponível pra download e instalação. Ele será baixado num ZIP e cada arquivo dentro dele deverá ser aberto num editor de texto.
Já no painel do seu domínio, vá em Importar SSL e cole os textos equivalentes do arquivo ZIP baixado, que são esses:
Depois de colar os textos, clique em Instalar SSL.
PS: Esses conteúdos de forma nenhuma devem ser expostos ou compartilhados, por questão de segurança. O projeto para TLS (que é o recomendado atualmente pra HTTPS) é bem semelhante.
Os atores são entidades, individuais ou coletivas, que buscam explorar vulnerabilidades para ganhos próprios, muitas vezes às custas da segurança e estabilidade dos sistemas cibernéticos. Esse atores podem ser divididos em dois tipos: Externos, que acessam redes e dispositivos de uma empresa, e internos, que têm acesso privilegiado aos dispositivos de uma empresa. Veja quais são:
É um framework que categoriza táticas e técnicas usadas por adversários em ataques cibernéticos. Ele organiza informações em uma matriz que abrange todas as fases de um ataque, desde o reconhecimento até a execução de objetivos. Utilizado amplamente, auxilia na compreensão das ameaças, na melhoria da segurança cibernética e no desenvolvimento de estratégias de detecção e resposta a incidentes.
As ameaças internas em segurança cibernética incluem phishing interno, abuso de privilégios de acesso e vazamento de dados por funcionários. Esses perigos surgem dentro da organização e podem resultar em roubo de propriedade intelectual, instalação de malware e fraude interna. Políticas de segurança, treinamento de conscientização e monitoramento de atividades dos funcionários são essenciais para mitigar esses riscos.
A engenharia social é uma forma de manipulação psicológica que visa obter informações confidenciais, acesso a sistemas ou realizar ações prejudiciais. Ao contrário dos métodos tradicionais de invasão digital que se baseiam em vulnerabilidades técnicas, a engenharia social explora a vulnerabilidade humana, muitas vezes usando astúcia e persuasão para atingir seus objetivos. Veja os principais:
São métodos usados pelos atacantes para obter informações confidenciais, como senhas e números de cartão de crédito, por meio de e-mails falsos, mensagens de texto ou telefonemas. Eles se passam por entidades confiáveis, como bancos ou empresas, e solicitam que as vítimas cliquem em links maliciosos ou forneçam dados pessoais. Para se proteger, é essencial verificar a autenticidade das mensagens, evitar clicar em links suspeitos e atualizar regularmente softwares de segurança.
São ataques de cibersegurança em que os atacantes criam redes sem fio falsas para imitar redes legítimas em locais públicos. Usuários desavisados que se conectam a essas redes podem ter seus dados sensíveis interceptados, credenciais roubadas ou dispositivos infectados com malware. Para se proteger, é crucial verificar a autenticidade das redes Wi-Fi e considerar o uso de uma VPN para criptografar o tráfego de dados.
Em cibersegurança é uma técnica na qual os atacantes utilizam iscas para atrair vítimas. Isso pode incluir links maliciosos em e-mails, downloads falsos de software ou dispositivos USB deixados intencionalmente. Uma vez que a vítima interage com a isca, pode resultar em comprometimento da segurança, como infecção por malware ou divulgação de informações confidenciais.
Em cibersegurança é uma técnica de engenharia social em que os atacantes criam pretextos falsos para obter informações confidenciais das vítimas. Eles podem se passar por pessoas de confiança por meio de e-mails, telefonemas ou mensagens, manipulando as vítimas para divulgar senhas, números de contas ou outras informações sensíveis. É crucial que as pessoas estejam atentas a esses ataques e evitem compartilhar informações pessoais em situações suspeitas.
Para se defender contra engenharia social, é essencial treinar funcionários para reconhecer e relatar tentativas de manipulação. Implemente políticas claras de segurança, verifique a identidade de solicitações suspeitas e promova uma cultura organizacional de segurança. Além disso, mantenha-se atualizado sobre as últimas técnicas de engenharia social e revise continuamente os procedimentos de defesa.
São uma tentativa maliciosa de sobrecarregar um serviço online, como um site ou uma rede, inundando-o com tráfego artificial de múltiplas fontes, o que resulta na negação de serviço para usuários legítimos, tornando-o inacessível. Geralmente, os ataques DDoS são executados por meio de botnets, que são redes de dispositivos comprometidos e controlados pelo atacante. Ataques DoS são executados por um único dispositivo e atacante.
A diferença entre DoS e DDoS é basicamente a quantidade de origem do ataque e escala, mas isso muda bastante o impacto:
Em resumo:
exércitode dispositivos fazendo isso juntos.
Uma botnet é uma rede de dispositivos infectados por malware que passam a ser controlados por um atacante, geralmente sem que os donos saibam.
Como funciona? É assim:
Esses dispositivos podem ser:
A principal função é dar poder em escala para ataques, como:
Um exemplo famoso é a botnet Mirai, que ficou conhecida por sequestrar dispositivos como câmeras e roteadores e causar grandes ataques DDoS na internet.
Como se proteger:
Resumindo: Uma botnet transforma dispositivos comuns em um exército invisível
controlado por um hacker, usado para ataques em grande escala, principalmente DDoS.
A OWASP (Open Worldwide Application Security Project) é uma organização que ajuda a tornar aplicações e sites mais seguros. Em poucas palavras: Ela ensina como proteger sistemas contra ataques hackers.
O que ela faz:
O projeto mais conhecido é o OWASP Top 10, uma lista das 10 vulnerabilidades mais críticas em aplicações web.
Exemplos comuns:
Essa lista é muito usada por:
A OWASP é um guia mundial que ajuda desenvolvedores e empresas a evitar vulnerabilidades e proteger aplicações.
Frameworks são estruturas que fornecem diretrizes, padrões e conjuntos de ferramentas para facilitar o desenvolvimento, implementação ou gerenciamento eficiente de projetos, sistemas ou processos. Eles, também, podem ser utilizados como base o estabelecimento de programas de segurança da informação no ambiente corporativo. Veja os principais:
A ISO 27001 estabelece um framework para que as organizações desenvolvam, implementem, operem, monitorem, analisem e melhorem continuamente um SGSI. Isso inclui a definição de políticas de segurança, a identificação e avaliação de riscos, a implementação de controles de segurança e a promoção da conscientização entre os colaboradores.
Os CIS Controls (Critical Security Controls) são um conjunto de melhores práticas e controles de segurança cibernética projetados para proteger organizações contra as ameaças digitais. Esses controles são fundamentais para estabelecer uma postura de segurança e mitigar riscos em ambientes tecnológicos complexos.
NIST é uma agência vinculada ao Departamento de Comércio dos Estados Unidos que promove a inovação e a competitividade industrial. Em relação à segurança cibernética, o NIST trabalha na formulação de diretrizes que ajudam organizações a fortalecerem suas posturas de segurança. Uma das contribuições mais notáveis do NIST para a segurança cibernética é o NIST Cybersecurity Framework. Este framework fornece uma estrutura flexível e baseada em práticas recomendadas que as organizações podem adotar para gerenciar e fortalecer sua postura de segurança.