학습
워게임
CTF
커뮤니티
랭킹
스토어
커리어
Beta
로그인
|
기업 서비스
Home
학습
워게임
CTF
커뮤니티
랭킹
커리어
Beta
기업 서비스로 이동하기 >
LEVEL 5
dlmalloc
pwnable
522
44
2022.08.22. 22:00:00
로그인 하고 문제 풀기
문제 정보
풀이
11
난이도 투표
14
질문
2
최근 풀이자
44
댓글
7
해당 문제는 2022 Fall GoN Open Qual CTF 에 출제된 문제입니다.
문제 설명
Now, everyone knows how to exploit ptmalloc.
So I miss the old good days of
dlmalloc
.
Translate
난이도 투표
14
문제 풀이를 완료한 후에 피드백을 제출할 수 있습니다.
투표 결과
전체 투표 로그
1 / 3
kwakmu18
시스템 해킹 전문가
LEVEL 5에 투표했습니다.
4일 전
탈퇴한 이용자
대표 업적 없음
LEVEL 5에 투표했습니다.
1년 전
Igunis
세계수
LEVEL 5에 투표했습니다.
2년 전
Rasser
워게임: 20
LEVEL 5에 투표했습니다.
2년 전
p0her
Open Beta Tester
LEVEL 5에 투표했습니다.
2년 전
질문
2
문제 풀이에 어려움이 있으신가요?
커뮤니티에서 문제에 대한 질문하고 답변 얻기
로컬에서는 되는데 서버에선 안되는데 이유를 모르겠어요
heap을 아주 크게 두번 넣으면 두번째 chunk가 libc_base 밑 특정 주소 차이 만큼 할당되길래 해닫 차이를 이용해서 libc_base, ld_base 를 구하고 _dl_rtld_lock_recursive, _dl_load_lock을 덮어서 system('/bin/sh') 를 리턴시에 호출해 쉘을 얻는 방식으로 구현했습니다. 근데 로컬에서는 되는데 서버에선 write함수를 두번 날려 _dl_rtld_lock_recursive, _dl_load_lock 을 각각 덮으려 할때 첫번째 write 함수 호출해 덮는 시도를 하는 경우에 그대로 프로세스가 종료되는것같습니다. 로컬 docker에서 라이브러리, 로더 버전도 확인해보았는데 gdb 설치 과정에서 변하지 않는것도 확인했습니다. 제가 놓치고 있는 부분이 있나 싶어서 질문 올려요 ㅠㅠ
마스크쓴오리
답변
1
추천
0
1년 전
궁금합니다...
OJingA
답변
1
추천
0
3개월 전
«
‹
1
›
»
LEVEL 5
dlmalloc
pwnable
522
44
2022.08.22. 22:00:00
로그인 하고 문제 풀기
출제자 정보
insuyun
Closed Beta Tester
아 졸립니다..
First Blood!
Reinose
워게임: 20
출제된 지
15일
만에 풀이 완료!
최근 풀이자
44
kwakmu18
시스템 해킹 전문가
4일 전
dooly
대표 업적 없음
9개월 전
장종민
대표 업적 없음
9개월 전
마스크쓴오리
대표 업적 없음
11개월 전
jalynk23
대표 업적 없음
1년 전
z3rodae0
시니어
1년 전
wiimdy
세계수
1년 전
urdekcah
워게임 고인물
1년 전
unkn0vvn
대표 업적 없음
1년 전
IQtrekeR
대표 업적 없음
1년 전
«
‹
1
2
3
4
5
›
»
댓글
7
Rasser
워게임: 20
2년 전
진짜 상상하지도 못했다... 부족함을 많이 느낌
Translate
Rasser
워게임: 20
2년 전
도대체 libc leak를 어케 하는걸까
Translate
Kimg00n
Perfect 10
3년 전
한 수 배워갑니다...
Translate
JSec
Dreamhack Beta CTF 1위
3년 전
dlmalloc이 뭔지 몰라도, 소스코드를 안봐도 그냥 실행 몇 번 해보면 됨
Translate
msh1307
대표 업적 없음
3년 전
오
Translate
Sechack
2024 Invitational Contenders
3년 전
아니 개어려울줄 알았는데 쉽네;;;;;; 이런문젠줄 알았으면 대회때 좀 볼걸..ㅋㅋ
Translate
믕믕이부하
대표 업적 없음
3년 전
아니 이게 왜 3솔브...?
Translate
«
‹
1
›
»
댓글 7