Jump to content

CEB Aula 02 python2 para 3


Matheus Batista Gusmao de Oliveira

Recommended Posts

Oi tenho uma dúvida, é possível passar o código do struct.pack() de python 2(que retorna uma str) para python3(retorna byte object).  Visto também que todos os bytes em py2 são str, é viável fazer print(str + byte), já em py3 isso não é possivel. Tentei converter para  a str, mas a variável não vai para a stack, logo sem buffer overflow.

Para uso de exploração de binários é recomendado python2 ou 3?

Link to comment
Share on other sites

Para quem tem a mesma duvida que eu e quer passar o script para python 3 por óbvias razões(python2 deprecated). Passei o script para saber o endereço onde ocorre o buffer overflow na aula 02, aqui vai:

 

import sys
import struct
junk = b"AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFFGGGGGGGG"
 

esp = struct.pack("<Q", 0x7fffffffdce8)
# 12bytes unsigned long little end
 
sys.stdout.buffer.write(junk)

sys.stdout.buffer.write(esp)

#printa os raw bytes em hexa sem /n e sem o encode chato do py3

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...