학습
워게임
CTF
커뮤니티
랭킹
스토어
커리어
Beta
로그인
|
기업 서비스
Home
학습
워게임
CTF
커뮤니티
랭킹
커리어
Beta
기업 서비스로 이동하기 >
LEVEL 1
pwn-library
pwnable
1914
601
로그인 하고 문제 풀기
문제 정보
풀이
69
난이도 투표
49
질문
3
최근 풀이자
601
댓글
40
해당 문제는 Dreamhack CTF Season 1 Round #4 에 출제된 문제입니다.
문제 설명
Description
드림이가 오랜만에 도서관에 왔습니다! 원하는 책을 읽어볼까요?
플래그는 /home/pwnlibrary/flag.txt에 있습니다.
Translate
난이도 투표
49
문제 풀이를 완료한 후에 피드백을 제출할 수 있습니다.
투표 결과
전체 투표 로그
1 / 10
우빙
강의 수강: 1
LEVEL 1에 투표했습니다.
7일 전
Lacroix
대표 업적 없음
LEVEL 1에 투표했습니다.
13일 전
billcho
대표 업적 없음
LEVEL 1에 투표했습니다.
20일 전
chocovy
워게임: 1
LEVEL 1에 투표했습니다.
1개월 전
do1e
강의 수강: 1
LEVEL 1에 투표했습니다.
1개월 전
질문
3
문제 풀이에 어려움이 있으신가요?
커뮤니티에서 문제에 대한 질문하고 답변 얻기
접근법이 맞는건가요?
275를 입력하면 플래그를 secretbook구조체에 저장할 수 있다는 것 까지는 알 수 있었습니다. 플래그를 얻으려면 bookstruct의 contents필드에 접근해야하고 문제 파일에서 contents를 출력하려면 read_book()함수를 써야합니다. 하지만 이 함수는 listbook내의 원소들만 조회할 수 있도록 만들어졌기 때문에 모종의 방법을 써서 read_book()내의 listbook[select]가 secretbook이 되도록 변조해야 한다고 생각했습니다. 하지만 이 이상은 어떻게 할지 떠오르지 않습니다. 읽을 만한 문서가 혹시 있을까요?
마리마리
답변
2
추천
0
4년 전
이건 왜 안되는건가요
문제는 풀었으나, 서버와 다르게 로컬(ubuntu 16.04, /lib/x86_64-linux-gnu/libc-2.23.so GNU C Library (Ubuntu GLIBC 2.23-0ubuntu11.3) stable release version 2.23, by Roland McGrath et al. Copyright (C) 2016 Free Software Foundation, Inc.) 에서는 flag를 steal 하면 이상한 0x1241 정도의 큰 unsorted bin 청크가 생깁니다. 왜 그러는 지 궁금합니다. 그리고 서버에서도 궁금한 점은 steal 하는 size가 꼭 borrow 된 사이즈에 맞추어야 하는지 의문이 드는데, 같은 주소를 가리키고 있다면, 만약 0x100만큼을 borrow하고 UAF 한다고 할 때 steal을 0x30만큼 하더라도 읽을 수 있는게 아닌가요? 왜 안되는지 모르겠습니다..
Neutrinox4b1
답변
1
추천
0
2년 전
.
Chunk(addr=0x555555559010, size=0x1240, flags=PREV_INUSE) [0x0000555555559010 78 1b dd f7 ff 7f 00 00 78 1b dd f7 ff 7f 00 00 x.......x.......] Chunk(addr=0x55555555a250, size=0x20, flags=) [0x000055555555a250 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 .ELF............] 위의 올린 청크 모양에서 borrow_book 을 호출한 뒤 return_book 을 호출하면 해당 책이 있었던 자리 0x555555559010 부분이 UAF 취약점으로 인해 leak 이 된다는 것을 확인 하였습니다. 상단에 있는 0x555555559010 청크 때문에 0x55555555a250 청크를 어떻게 leak 해야하는지 모르겠습니다. - 처음에는 0x555555559010 청크가 unsorted bins 로 가길래 해당 size 만큼 재할당 시켜주면 0x555555559010 청크를 무력화 시킬 수 있다고 생각하였지만 소용이 없었습니다(원하는 만큼의 size 의 재할당이 힘들었습니다) 혹시 실례가 안된다면 힌트좀 부탁드려도 될까요? 수정 문제는 풀었습니다 하지만 tcache 할땐 되고 small bin 안되는지 궁금합니다
탈퇴한 이용자
답변
2
추천
0
4년 전
«
‹
1
›
»
LEVEL 1
pwn-library
pwnable
1914
601
로그인 하고 문제 풀기
출제자 정보
Dreamhack
대표 업적 없음
2021.01.30. 10:00:00
First Blood!
JSec
Dreamhack Beta CTF 1위
출제된 지
24분
만에 풀이 완료!
최근 풀이자
601
d3vh4cks
대표 업적 없음
24시간 전
난바보야
대표 업적 없음
6일 전
우빙
강의 수강: 1
7일 전
leilow
대표 업적 없음
9일 전
zxcv123
대표 업적 없음
12일 전
n0ha
.HACK 2024 참가자
12일 전
톰크루준
대표 업적 없음
13일 전
Lacroix
대표 업적 없음
13일 전
Amemoyoi
대표 업적 없음
14일 전
leehojune
Crazy 8
14일 전
«
‹
1
2
3
4
5
›
»
댓글
40
Lacroix
대표 업적 없음
13일 전
EZPZ
Translate
c0met
시스템 해킹 입문
2개월 전
여기에 답을 써버리시면.....
Translate
Rootsquare
해결사
3개월 전
빌린 책을 읽는데...이런 책도 읽을 수 있다..?
Translate
우도우도
Misc 초심자
3개월 전
문제가 힌트
Translate
LM_R3dzone
워게임 고인물
1년 전
UAF 이해하기 좋은 문제네요~ GOOD ^__^
Translate
사용자
해결사
2년 전
좋은 연습문제입니다~
Translate
is07king
워게임: 1
2년 전
어렵게 생각하니까 어려워지는.
Translate
KnightChaser
공부벌레
2년 전
(Siren rangs) (Siren rangs)
Translate
Rosieblue
워게임 고인물
2년 전
코드가 개길다ㅜ
Translate
나는재영
대표 업적 없음
2년 전
책에 소금이랑 후추 뿌려서 냠냠
Translate
«
‹
1
2
3
4
›
»
댓글 40