Perl não imprime 0x00


1

Eu queria experimentar a técnica NOP SLED. Coloquei o trenó e o código do shell em uma variável de ambiente e o endereço.
Então, eu queria executar o programa vulnerável e como argumento usar esse endereço repetido, o problema é que ele contém 0s (zeros):0x00007fffffffe550

./program_vuln $(perl -e 'print "\x50\xe5\xff\xff\xff\x7f\x00\x00"')

O Perl não imprime os zeros e o endereçamento na pilha ficou tão bagunçado.


11
Parece ser uma pergunta de uso perl e não uma questão da InfoSec.
Schroeder

Perl usado no infoSec :)

Mas um especialista em perl com 0 conhecimento do InfoSec também pode responder a essa pergunta, não?
Schroeder

Enquanto o aplicativo é InfoSec, o problema subjacente não é um problema da InfoSec - é um problema de Perl.
SL Barth

Tem certeza de que isso pertence ao Superusuário? Esse tipo de pergunta é sobre programação e provavelmente pertence ao Stack Overflow .
precisa saber é o seguinte

Respostas:


1

Isso não é um problema com o perl, porque obviamente está imprimindo o 0x00:

perl -e 'print "\x50\xe5\xff\xff\xff\x7f\x00\x00"' | hd
00000000  50 e5 ff ff ff 7f 00 00                           |P.......|
00000008

O que funcionou como um charme aqui? A pilha não está mais bagunçada?
9--15
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.