Ir para conteúdo
  • Cadastre-se

maycon

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Reputação

6 Neutral

1 Seguidor

Últimos Visitantes

45 visualizações
  1. maycon

    Converter IPv4 inteiro em xxx.xxx.xxx.xxx

    Olá @Baracat, Um dica para simplificar o parsing do IP é utilizand o sscanf(): $ ./ip2int 192.168.0.1 192.168.0.1 -> 3232235521 Segue o código: #include <stdio.h> #include <string.h> int main(int argc, char **argv) { if (argc != 2) { printf ("Use: %s <IP>", argv[0]); return 0; } unsigned int ip[4]; if (sscanf(argv[1], "%d.%d.%d.%d", &ip[0], &ip[1], &ip[2], &ip[3]) != 4) { puts ("Invalid IP format (xxx.xxx.xxx.xxx)."); return -1; } printf ("%s -> %u", argv[1], (ip[0] << 24) + (ip[1] << 16) + (ip[2] << 8) + (ip[3]) ); return 0; } Porém já existem funções espeçificas para fazer o que estamos tentando fazer: https://www.tutorialspoint.com/unix_sockets/ip_address_functions.htm Abraços
  2. maycon

    Endereço de memória

    Uma outra forma de saber a instrução de um determinado opcode é utilizando o ndisasm: $ echo -ne "\xC7\x45\xF0\x61\x00\x00\x00" | ndisasm -b32 - 00000000 C745F061000000 mov dword [ebp-0x10],0x61 Abraços.
  3. maycon

    Dúvida sobre exploração de vulnerabilidades

    Olá @Iago Filipe A resposta simples seria "Sim", a resposta chata seria "depende". O que acontece é que devido as inúmeras proteções tanto em user-space quanto em kernel-space, tirar um RCE (por mais crucial que seja) depende muitas vezes da exploração de mais de uma vulnerabilidade. A dois anos atrás eu dei uma palestra em um evento privado (se o @Fernando Mercês não estava bêbado o suficiente ele vai lembrar haha) sobre a solução de um challenge cuja identificação da vulnerabilidade era algo razoavelmente simples, porém a exploração não era [tão] simples devido as proteções aplicadas existentes (PIE, ASLR e DEP). O challenge, slides da palestra e p0c (exploit) podem ser encontrados aqui. Caso tenha alguma dúvida estamos aqui pra ajudar. (-: Abaços.
  4. maycon

    Permutando Strings

    Olá Matheus, Existem algoritmos para geração de permutação baseados em heap sem esse critério de ter que varrer toda sequência e validar o que faz parte da permutação ou não. O próprio Python possui essa implementação no itertools.permutation(), além do próprio std::next_permutation() da STL do C++. Com relação a geração da enézima (nth) permutação, também é possível encontrar algumas soluções para isso. Um exemplo pode ser visto aqui. Para outras soluções basta procurar por "nth/kth permutation algorithm" ou similar. Uma boa referência para se aprofundar nisso é o TAOCP Vol. 3 do Knuth. Lá você terá uma referência sólida e bem matemática sobre esses assuntos. Att, Maycon Vitali
×