Jump to content

Search the Community

Showing results for tags 'assembly'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Conteúdo Mente Binária
    • Núcleo
    • Projeto Bumerangue
    • Fale com a gente!
  • Comunidade
    • Engenharia Reversa
    • Programação
    • Redes
    • Análise de malware
    • Teste de intrusão
    • Sistemas operacionais
    • Certificações
    • Oportunidades
    • Outros
  • Segurança na Internet's Discussão

Categories

  • Crackmes
  • Documentação
  • Debuggers
  • Ferramentas para PE
  • Utilitários
  • Packers
  • Unpackers

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Como veio parar aqui?


Website


Github/Gitlab


LinkedIn

Found 6 results

  1. Criei esse tópico na intenção de reunirmos livros, apostilas, videoaulas e qualquer outro tipo de material relevante sobre programação em Assembly e arquiteturas de computadores. Como muita gente se interessa por Assembly – seja por questões de exploração binária, engenharia reversa ou qualquer outro motivo – mas não encontra muito material relevante – atual – sobre o assunto, já que tem muita gente “moderninha” que não se interessa por Assembly e diz que a linguagem está morta – e o pior: muita gente cai nessa –, acredito que um compilado de material sobre o assunto possa vir a calhar. Nota: Apesar de todo material sobre Assembly ser bem-vindo, a intenção é priorizar a arquitetura de 64 bits, por ser a mais atual. Contudo, por motivos de legado e curiosidade, vale tudo. Eu vou priorizar a arquitetura x86-64 em sistemas Linux, pois nunca programei em Assembly em ambientes Windows, mas cada um contribui com o que tem e o que sabe. Nenhum sistema ou arquitetura deve ficar de fora, se possível. Vamos começar com esse: x86-64 Assembly Language Programming with Ubuntu Trata-se de um livro totalmente gratuito, com foco na arquitetura Intel x86-64 e voltado para Linux, especificamente para o Ubuntu – sistema corriqueiro quando se trata de “Linux Doméstico”. Tem um total de 357 e trata-se de uma obra bem introdutória, que progride em um ritmo agradável – nem muito lento, nem muito rápido –, além de ser bem direto. É ideal para quem está começando.
  2. ola,eu preciso fazer um programa que receba frases ou palavras e imprima na tela essa frase ou palavra e fique em loop ate que o usuario de enter sem ter digitado nada,mas nao sei como fazer a parte de imprimir e ficar em loop,poderiam me ajudar? .model small .stack .data texto1 db "INSIRA UMA PALAVRA:",0 string 6 DUP (?) texto2 db "SUAS PALAVRAS FORAM:",0 .code .startup ;parte 1:imprimir MOV si,offset texto1 IMPRIMIR: MOV al,[si] CMP al,0 JE IMPRIMIU INC si MOV ah,14 INT 10h JMP IMPRIMIR IMPRIMIU: ;parte 2:leitura do teclado MOV si,offset string MOV cx,0 ;numero INPUT: MOV ah,00 ;espera INT 16h CMP al,13 ;tecla enter JE FIM_INPUT CMP al,8 ;apagar JE APAGAR CMP cx,9 ;contador(talvez precise alterar) INC cx ;++ MOV [si],al INC si MOV ah,14 ;mostrar a tecla precionada na tela INT 10h JMP INPUT APAGAR: CMP cx,0 JE beep DEC si DEC cx MOV al,8 MOV ah,14 INT 10h MOV al,32 MOV ah,14 INT 10h MOV al,8 ;recuar MOV ah,14 INT 10h JMP INPUT ;retorna ao input beep: MOV al,7 MOV ah,14 INT 10h JMP INPUT FIM_INPUT: MOV al,0 MOV [si],al ;parte 3:fazer isso ir para a tela do usuario MOV dh,2 MOV dl,0 MOV ah,2 INT 10h
  3. Pessoal estou com uma questão que não consegui nada no Google que me ajudasse. A questão é como funciona a IMUL em assembly? vcs podem me ajudar em C ou em python com exemplos. abraco.
  4. Pessoal, Surgiu essa dúvida nos comentários de uma aula do CERO e achei legal de colocar aqui pra gente juntar ideias. Acontece que sabemos que EAX pode ter seus 16 bits mais baixos acessados através de AX e este, por sua vez, permite acesso a seus 8 bits mais baixos (AL) e os 8 bits mais altos também (AH). Sendo assim, se EAX = 0x12345678, então: AX = 0x5678 AH = 0x56 AL = 0x78 Como acessar somente o 0x1234? Na reposta ao usuário que perguntou, expliquei que não existe forma de acesso direta na arquitetura para estes 16 bits mais altos de EAX, ou de qualquer outro registrador, mas daria pra pegar esse valor com outras instruções, por exemplo: MOV EAX, 0x12345678 MOV EBX, 0xFFFF0000 AND EBX, EAX SHR EBX, 0x10 No código acima faço um AND do valor de EAX, que é 0x12345678 com 0xFFFF0000. Isso vai fazer com que EBX contenha 0x12340000. Aí basta empurrar os bits dezesseis (0x10) vezes para a direita com a instrução SHR e pimba, teremos 0x00001234 em EBX, que é o valor que queríamos recuperar de EAX. No entanto eu fiquei com a sensação de que há mais maneiras, provavelmente mais rápidas de se fazer isso. Ideias? Postem aqui para estudarmos! 🤓 Grande abraço!
  5. Esta live tem como objetivo ser um bate-papo para discutir alguns fundamentos para quem quiser aprender x86 Assembly. Vai acontecer online no canal Papo Binário! https://www.youtube.com/c/PapoBinário/live
  6. Para quem está começando com Assembly e já tem conhecimento em programação, esse site pode facilitar o entendimento, pois converte, em tempo real, um código C para Assembly: http://godbolt.org/ A partir desse compilador online, fiz um compilado de algumas funções básicas para ajudar na hora de ler um código em Assembly e, só de bater o olho, já ter uma idéia de que estrutura se trata. A lista pode ser acessada nesse link: https://mega.nz/#!sVJFTYTL!iNkFOD-5n3UfgjaeaTDkYd8pDzHQvg60vmAaqPEqbNA
×
×
  • Create New...