Jump to content

Fernando Mercês

Administradores
  • Content Count

    640
  • Joined

  • Last visited

Everything posted by Fernando Mercês

  1. Qual a opção exata do x64dbg que você usou? Deveria ser possível encontrar sim... Se puder compartilhar o binário a gente pode ver também. Outra opção é testar esse novo plugin da @horsicq: https://github.com/horsicq/stringsx64dbg/releases 😉 Abraço!
  2. Hi @horsicq! First of all, it's nice to have you here. Welcome! 🙂 I'm probably wrong but I remember of a DLL that used be shipped in binary form with DIE sources (maybe the engine?), but that was probably before you move the code to Github. Sorry about the confusion. It's all clear now. Thanks for delivering this great project to the community!
  3. No dia 23 de Junho de 1912, há 107 anos atrás, nascia o inglês Alan Turing. Aos 21 anos, se formou em matemática em Cambridge, tendo recebido uma menção honrosa por ser o primeiro da classe. Emociono-me enquanto escrevo isso: eu com 21 anos tava procurando bares e festas. 🤷‍♂️ Durante a segunda guerra mundial, Turing, aos 26, decidiu tentar quebrar a criptografia da máquina alemã Enigma, utilizada para encriptar mensagens entre as várias bases alemãs, liderando o departamento miliar inglês conhecido Hut 8. Ainda em 39, Turing quebrou a criptografia da Enigma, um feito fundamental para a derrota da Alemanha Nazista e o fim da guerra. Por que? Nas palavras dele: "Porque ninguém estava fazendo nada em relação a isso e eu poderia fazer" - emociono-me de novo aqui. Seu conceito de "Máquina de Turing" foi fundamental para a ciência da computação que conhecemos hoje. De forma bastante resumida, se uma linguagem de programação é Turing complete, dizemos que esta pode ser utilizada para resolver qualquer problema computacional. É o caso de linguagens como C, Python, Ruby, JavaScript e praticamente todas as outras. Qualquer problema algorítmico pode ser resolvido com qualquer uma delas, em tese. O trabalho na área de criptologia continuou e Alan seguiu beneficiando o mundo inteiro com sua genialidade, até que em 1952, aos 39 anos, foi preso sob acusação de "indecência" por ter tido relações afetivas com Arnold Murray. É simples assim. Um homem beijar outro homem era crime na Inglaterra na época e Alan foi condenado a escolher entre castração química ou prisão. Escolhido a primeira, recebeu hormônios para redução de libido por cerca de um ano. Em meio há inúmeros textos, sites e livros que contam parte de sua história, vale o destaque para o filme de fácil acesso "O Jogo da Imitação": O tratamento funcionou: Turing ficou impotente e a feminização de seu corpo era visível. Aos 41 anos, se matou ingerindo uma dose letal de cianeto injetada na metade de uma maçã, assim como encena "Branca de Neve", seu conto de fadas predileto. A ideia ignorante de diferença pôs um fim às contribuições de Alan, mas estas deixaram um legado: hoje temos a oportunidade de reconhecer nossa igualdade através de sua história. Somos livres para não investirmos mais nessas crenças de diferenças e à isso, em nome de toda a equipe do Mente Binária, agradecemos por seu trabalho, por sua existência, por seu espírito hacker. Hacker é isso. É não aceitar o que se é imposto, mas não faz sentido.
  4. Fernando Mercês

    RetroRio

    until
    A RetroRio é o encontro carioca de colecionadores de microcomputadores clássicos. Este encontro está ocorrendo nos dias 20 a 22 de junho (até sábado), no Centro de Artes Calouste Gulbenkian: Rua Benedito Hipólito, 125 - Praça Onze. Fica perto do Metrô Praça Onze e da Central do Brasil, atrás do Terreirão do Samba. Começa às 10 e vai até as 18 horas. A entrada é gratuita, e todos vocês são convidados. Agora, se você levar um quilo de alimento não perecível, você participará de um sorteio de brindes no final do dia. Maiores informações no site: http://bit.ly/retrorio2019
  5. A gente tem programada uma reorganização do fórum com maior subdivisão de áreas, mas não é urgente. Quem tiver dúvidas pode postar no fórum "Programação" ou "Engenharia Reversa", dependendo do enfoque e não há nada que impeça tais dúvidas de serem respondidas. Abraço!
  6. É no contexto do driver da placa de rede em kernelmode e/ou nos serivços de rede do SO, também em kernelmode. Você não vai conseguir alterar isso em usermode. A maneira como programas como ip, ifconfig, etc fazem é através de bibliotecas userland, que por sua vez invocam syscalls ou falando via socket. Você pode espiar como o ip faz em userland com o ltrace: # ltrace ip link set eth0 address de:ad:be:ef:b0:b0 Aqui fez via socket. Se quiser ver as syscalls chamadas, você pode usar a opção -S do ltrace ou usar o strace. No entanto, vai cair nas syscalls de rede de qualquer forma. Alternativas incluem a netlink (man 7 netlink / rtnetlink). Mas se realmente quiser fazer na memória, você vai precisar de um driver (kernel module, como são chamados no Linux) pra mudar o que pode ser visto em /sys/class/net/eth0/address (não adianta tentar mudar diretamente aqui... o endereço MAC exibido aqui é gerenciado pelo kernel, logo, em kernelmode). Vai depender de quão esperto é o código do teu módulo. Buscando nas estruturas certas, não me parece muito perigoso, mas um find na área de memória do kernel toda é loucura. Não que não deva ser feito (adoro loucura! haha) como PoC. E isso tudo só vale pra Linux. 😀 Então se quiser fazer no Windows, muda tudo... Abraço e boa sorte! Vou curtir ver isso pronto, independente do caminho escolhido.
  7. Praticamente nenhuma, mas o Orfox só era necessário enquanto não existia o Tor Browser e, de acordo com o desenvolvedor, deve parar de ser mantido: Orfox will be sunsetted by early 2019 when the stable Tor Browser for Android comes out. To experience real private browsing without tracking, surveillance, or censorship, download Tor Browser for Android from GooglePlay. Fonte: https://play.google.com/store/apps/details?id=info.guardianproject.orfox&hl=en
  8. +1 aqui. Se eu tivesse lido todos os PDF's que tenho, seria um mago já. kkkkk Aproveitando as "coisas poéticas" lembro de Raul Seixas na música Eu também vou reclamar: Olho os livros na minha estante, que nada dizem de importante, servem só pra quem não sabe ler. 😁 Mas eu entendo o movimento de angariar material para estudo. Tenho muito mais livros que li e muitos mais samples (no Kindle) que livros completos. Vejo algo, me animo, peço logo "enviar amostra" hehe. Sinistro.
  9. Provavelmente é bug haha anexa o binário aqui que eu vejo? 😉 Abraço e obrigado pelos testes!
  10. Opa! É, esse sstrip macabro remove o section header também, além de outras coisas. O GDB se perde, coitado. O que dá pra fazer é pegar o entrypoint no cabeçalho (com o readelf/objdump) e seguir o mesmo esquema: $ readelf -h hello.elf | grep Entry Entry point address: 0x401040 Mas dentro do GDB acho que não. Vou ver se consigo deixar o PEDA preparado pra isso. 😉 Abraço!
  11. É nóis. Aproveitando, eu tive a ideia de extender o PEDA pra já tratar esses casos. Você - e quem mais quiser - poderia testar antes de eu enviar um possível patch pros caras? Meu fork tá em https://github.com/merces/peda Basicamente é carregar o binário, mesmo com símbolos removidos, e comandar start. Tem que parar na main() automagicamente. hehe Abraço!
  12. Só vai ao ar no próximo sábado, mas tentei responder em vídeo. 🙂 Qualquer dúvida posta aí. Se não funcionar a gente busca outro jeito. Abraço!
  13. O Manzano comentou no nosso vídeo sobre Assembly: Abraço!
  14. Um livro muito legal é o do xorpd, entitulado "xchg rax, rax". Pois é, o nome do autor já uma instrução e o nome do livro é outra. rs Só tem snippets em Assembly nele, sem comentários ou texto. O leitor deve descobrir o que o snippet faz. Custa $10 na Amazon a versão impressa, mas ele pode ser lido inteirinho no site do autor, que aliás também vale uma lida. 😉
  15. Existem várias ferramentas multiplataforma para assemblar e disassemblar código, mas a grande maioria são programas que precisam ser instalados no computador antes de serem utilizados. Isso até o shahril96 publicar seu Assembler e Disassembler online e de código aberto, baseado no Keystone.js e Capstone.js. Seu uso é muito simples e por enquanto há suporte a arquiteturas ARM, ARM64, MIPS, x86, x86-64, PowerPC, SPARC e SystemZ. O Assembler recebe o código e imprime os bytes em formato bruto (raw), de string, vetor em C e disassembly. Já o Disassembler recebe qualquer uma dessas saídas como entrada e imprime as mesmas saídas. É sem dúvida útil em casos onde se precisa estudar Assembly, uma das bases para engenharia reversa, e não se tem um software como este à mão. Lembrando que tanto nosso livro Fundamentos de Engenharia Reversa quanto nosso Curso de Engenharia Reversa Online (CERO) apresentam noções de Assembly x86 para quem está começando. Hora de estudar! 😎
  16. Pode criar, brother. Aí depois só ir editando e atualizando. =)
  17. Acho que por treino sim, pois realmente não vejo benefício prático do programa em si, mas posso estar perdendo algo também. Os compiladores inserem padding, em geral 0x00 ou 0x90 (NOP no x86) mesmo. O legal de fazer algo assim é que você vai precisar parsear o ELF, enumerar as funções e fazer seus patches. #include <elf.h> e segue o jogo. hehe Se fizer, posta os desenvolvimentos aqui pra gente acompanhar. 😀 Abraço e boa sorte!
  18. Opa, acho que um tópico (ou mais de um) dá conta de compor essa lista, não? Abraços!
  19. Bem, parte do código do DIE é fechado então teria que fazer reversa nele pra entender tudo, mas qualquer software p/ ER a gente recomenda rodar em máquina virtual mesmo, não na sua real, por vários motivos, entre eles essa desconfiança, que é cabível mesmo. Dito isso, não acredito que seja malicioso, mas não posso garantir. O histórico de detecção de "ferramentas hacker" por softwares antivírus é antigo, dadas as características destas ferramentas. Desculpe o post inconclusivo, mas não vejo maneira simples/rápida de garantir isso. Abraço!
  20. Oi @R3n4to! Boa pergunta. Eu não sou especialista em forense, mas não considero engenharia reversa como uma sub-área desta. No entanto, ER é uma técnica a ser aplicada em certas áreas e sem dúvida forense é uma delas, uma vez que ao analisar ambientes digitais, podem ser encontrados binários que precisão ser entendidos e normalmente o código-fonte não estará disponível. Por exemplo, ao analisar a memória ou disco de um servidor que foi comprometido, é possível encontrar um processo em execução ou binário em disco que seja considerado suspeito. O próximo passo do profissional de forense pode ser analisar tal processo/binário. Ele pode fazer isso por conta própria ou, caso conte com uma equipe, passar o trabalho para um engenheiro reverso. 😉 Grande abraço!
  21. until
    Dia 02/04/2019 (terça) tivemos o lançamento oficial do Visual Studio 2019, com o anúncio de inúmeras novidades envolvendo o desenvolvimento de soluções baseadas em tecnologias como Azure DevOps, .NET Core, ASP.NET Core, C# e PowerShell. Assim como aconteceu em outras ocasiões, a Microsoft novamente fará uma parceria com comunidades técnicas através da realização de eventos locais. O DevOps Professionals em conjunto com a FC Nuvem também participa desta iniciativa, com um EVENTO PRESENCIAL e GRATUITO Programação prevista (grade sujeita a alterações): - Novos Recursos para Debugging no Visual Studio 2019 + Suporte a Docker no .NET Core 3.0 - Renato Groffe (Microsoft MVP) - Dicas e truques com Azure e Azure DevOps no Visual Studio 2019 - Vinicius Moura (Microsoft MVP) - Colaboração Contínua com o Visual Studio Live Share - Milton Câmara Gomes (Microsoft MVP) - Indo além de ambientes Windows com PowerShell Core, Linux e Visual Studio Code - Ewerton Jordão (.NET SP, SampaDevs) Acompanhe e apoie esta iniciativa, divulgando e indicando o Visual Studio 2019 Launch para amigos e colegas de trabalho! Mais informações: https://www.sympla.com.br/visual-studio-2019---lancamento---devops-professionals--fc-nuvem__525409
  22. Estamos a procura de desenvolvedor(a) de software para atuar na comunidade open source em uma empresa de Floripa. As principais atividades que você desenvolverá são: – Desenvolver programas em C e C++ open source, sob demanda. Diferencial: – JavaScript; – C#; – Conhecimento em Enlightenment Foundation Libraries. Os requisitos necessários para você desempenhar suas atividades são: – Experiência de pelo menos dois anos com C e C++. Sua jornada de trabalho será em horário comercial, de segunda à sexta-feira. Além da remuneração fixa oferecem benefícios como va, vt, plano de saúde e plano odontológico. Se identificou com a oportunidade? Prepare um cv bem caprichado e encaminhe para nossa equipe de triagem 🙂 Contato: cvbanco em peopleti.com.br
  23. Legal. Muito obrigado! Deu vontade lê-lo agora! 🙂 Abraço!
  24. Essa é uma história verídica: Tive o celular (um iPhone 7) furtado no último fim de semana e houve tentativas, afortunadamente sem sucesso, de hackear minhas contas. Nesse artigo vou explicar como me protegi, na esperança de que você se proteja também. Isso antes que tenha o celular roubado, furtado ou perdido. 😌 Após perceber que meu celular não estava no meu bolso comecei a dar valor a todas as ações de proteção que tomei. Consegui ligar para o Nubank, que cancelou o cartão (pois é, eu colei aquele lindo porta cartão roxo que eles mandam na traseira do celular e por isso foi tudo junto: celular e cartão de crédito). Por um momento pensei que para cancelar o cartão do Nubank eu precisaria do aplicativo do mesmo, mas eles possuem um número que podemos ligar. E você consegue cancelar seu cartão após confirmar alguns dados. Nota importante: você precisa estar sóbrio o suficiente para confirmar seus dados. Não entrarei em detalhes aqui como fiz. O telefone estava bloqueado com um código numérico de 6 dígitos (padrão nas últimas versões do iOS). E não era nada do tipo "000000" ou "123456". Dá um negócio escrever isso. Na verdade, gostaria de escrever que meu código era alfanumérico (que é mais seguro, em geral), mas não era. Mesmo assim, era "aleatório" o suficiente, creio eu, então confiei que o ladrão não conseguiria desbloquear o aparelho. Como todos os dedos de ambas as minhas mãos estavam no lugar, achei que o ladrão também não tinha minhas digitais para tentar o Touch ID. 🙂 Ao chegar em casa, fiz login no iCloud utilizando meu Apple ID para usar o Find My iPhone, que estava ativado. A última localização conhecida foi onde eu estava mesmo, ou seja, o danado desligou o telefone, removeu o chip ou fez alguma outra coisa para que este ficasse sem sinal. Também recebi o seguinte e-mail do Facebook: E-mail do Facebook para confirmação de alteração de senha Ou seja, o abençoado tentou resetar minha senha do Facebook. Como? Bom, o aplicativo do Facebook para iOS não pede senha ao abrir, então deduzi que o ladrão não tinha conseguido desbloquear o telefone. Cliquei no link "avise-nos" destacado no fim da mensagem, verificando que era do Facebook mesmo, só para bloquear novas tentativas. Daí vem minha primeira hipótese: o ladrão queria tomar minha conta do Facebook. Como no Facebook é possível logar via número de telefone, imagino que ele tenha removido o chip do telefone, posto em outro para ver o número e tentado resetar a senha pelo site do Facebook, bastando apenas para isso ter o meu número: Tela de recuperação de senha por número de telefone no Facebook (não é exigido nome de usuário) Não sei como pretendiam clicar no link que chega no meu e-mail. Talvez esperassem que a confirmação chegasse via SMS. 🤷‍♂️ Fiz um boletim de ocorrência no site da Polícia Civil e marquei a caixa que os autoriza a bloquear o IMEI do telefone, para que este se torne inútil. Pois é, eu tinha o IMEI e o número de série (ambos necessários para o bloqueio pela polícia) anotados. Também liguei para a operadora e pedir para bloquear o chip. O golpe comum no Brasil de colocar o chip em outro aparelho e começar a falar no WhatsApp com seus amigos e familiares pedindo dinheiro se passando por você também não rolou, pois minha conta do WhatsApp era protegida por um PIN, que é a autenticação de dois fatores do WhatsApp. Vamos às dicas para cada momento: Enquanto seu celular está com você: Anote marca, modelo, IMEI e número de série do seu aparelho em algum lugar. Também o PIN e PUK do chip (vem no cartão). Pode ser mandando um e-mail para você mesmo e deixando-o lá para sempre. Utilize um bom código alfanumérico (letras e números). Nada de padrões de desenho (em Android) ou códigos numéricos como "1234", "0000" ou afins. Jamais use um telefone sem código de bloqueio. Utilize autenticação de dois fatores em todas as suas contas de redes sociais e serviços de Internet (Facebook, Instagram, Gmail, etc), mas nunca por SMS, pois eles têm acesso ao chip quando obtêm seu telefone! Use sempre por aplicativo (recomendo o Authy porque você pode usar no desktop e no celular (e em outros dispositivos) - aí se perder o celular você ainda tem o app no desktop pra te dar os tokens). Imprima os códigos de recuperação do aplicativo de autenticação de dois fatores escolhido no passo acima e guarde em casa, porque com o celular você perde o aplicativo de autenticação de dois fatores junto! Habilite a autenticação de dois fatores (via PIN) no aplicativo do WhatsApp (Ajustes -> Conta -> Confirmação em duas etapas). Do contrário você pode ser vítima do golpe de falsidade ideológica que comentei no texto. Sempre habilite o Touch ID ou senha para todos os aplicativos que suportam. Normalmente os de banco suportam. Para e-mails, sei que o Outlook suporta. Dessa forma, mesmo que o gatuno roube seu telefone desbloqueado, não verá seu e-mail e não acessará os apps dos bancos. Habilite o PIN do chip (no iPhone esta configuração fica em Ajustes -> Celular -> PIN do SIM). Dessa forma, será solicitada uma senha quando o meliante colocar seu chip em outro aparelho. Lembrando que o chip já vem com um PIN da operadora, que você vai precisar para alterar. Os padrões são Vivo: 8486; TIM: 1010; Claro: 3636; Oi: 8888 mas o correto mesmo é ver no cartão do qual o chip é destacado quando vem. Todo cuidado é pouco aqui, pois é muito fácil bloquear o chip ao tentar desbloqueá-lo incorretamente 3 vezes. Aí só ligando pra operadora, ou usando o PUK para desbloquear. Desabilite a visualização de SMS na tela bloqueada (para que o conteúdo do SMS não seja mostrado). É uma boa ideia desabilitar quaisquer outras notificações também, ou pelo menos previnir que seu conteúdo seja exibido na tela bloqueada. Desabilite a Siri (iOS) na tela bloqueada (Ajustes -> Siri -> Permitir Quando Bloqueado). Do contrário, basta que alguém pergunte "Qual o meu nome?" para saber seu nome, telefone, empresa (dependendo do que constar no seu contato), como mostra a captura de tela abaixo: Siri entregando seus dados pra qualquer um Também é possível pedir à Siri para "Mostrar ligações perdidas". A ordinária vai mostrar a última ligação perdida somente, mas é possível inclusive retornar a ligação, mesmo com a tela bloqueada: Siri mostrando quem te ligou e permitindo retornar As medidas acima você deve tomar agora que tem seu telefone com você, pois todo cuidado é pouco. Vale ressaltar que os ladrões de rua, os "mão leve" podem não ser especialistas em TI, mas certamente existe um "departamento de TI do crime" onde eles levam estes celulares roubados e lá pessoas que entendem do assunto tentam hackear suas contas. Se todas essas medidas forem tomadas, acho que você pode ficar tranquilo como eu fiquei. Pra ser honesto, eu não segui a recomendação de número 7, sobre o PIN do chip e só por isso conseguiram meu número pra tentar resetar a senha do Facebook. Mesmo assim não rolou, pois meu 2FA no Facebook era via app, não SMS (isso porque segui bem a recomendação de número 3) mas serviu pra ver onde vacilei. Depois de ser roubado/furtado ou perder o celular: Se você desconfia que perdeu o celular (não é roubo, nem furto), pode tentar localizar o aparelho, mas tenha em mente que quanto mais tempo você deixar o chip habilitado, mais tempo os bandidos têm para tentar as fraudes. Já aconteceu de eu perder o celular e só conseguir ligar pra ele dois dias depois, pois quem achou não tinha um carregador de iPhone à mão. Se eu tivesse bloqueado o aparelho ou o chip, não conseguiria ligar. Então aqui é sempre delicado. Depende do que rolou e o do nível de risco que você quer assumir (sinta em seu coração), mas: Ligue para a sua operadora e informe o ocorrido. Eles vão bloquear o chip. Faça um boletim de ocorrência na delegacia mais próxima ou pela Internet. Você vai precisar dos dados lá do passo 1 do que fazer enquanto seu celular está com você. Desconecte o dispositivo das suas contas de e-mail, redes sociais e outros serviços (é impossível enumerar todos, mas serviços comuns são Gmail, Facebook, Instagram, Twitter, Spotify, etc). Programe a deleção dos dados pelo site do fabricante (Google, Apple, etc). No novo telefone: Se não teve jeito e você comprou um telefone novo, tudo bem. Vida nova. Só fica esperto porque se você fizer mantiver o mesmo número, os criminosos podem tentar entrar em contato via ligação, SMS, WhatsApp, iMessage, etc se passando pela fabricante do telefone, dizendo que o acharam e pedindo as credenciais do iCloud, por exemplo. Com elas, é possível desbloquear o telefone roubado. Não caia nessa. 😉 Roubo, perda e furto de telefones são muito comuns em grandes cidades. É importante que você seja precavido. Quem tiver outras dicas, só postar nos comentários que incorporo aqui. Se quiser me contar como fazer pra Android as configurações acima, comenta aí também. Ah, depois de fazer tudo isso no seu telefone, seja um bom amigo e compartilhe este artigo com todo mundo que tem um smartphone pelo bem da nação. 🙏 Atualização em 16/5/2019 - Adicionei uma captura de tela da Siri entregando quem te ligou e recomendei o Authy expressamente, pois parece ser realmente melhor que Duo Mobile e Google Authenticator, já que pode ser utilizado em vários dispositivos (incluindo no desktop) e possui suporte ao Touch ID.
×
×
  • Create New...