일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- BFS
- 분할 정복
- tcache
- heap
- House of Orange
- 다이나믹 프로그래밍
- 포맷스트링버그
- 큐
- syscall
- off by one
- DFS
- 수학
- 연결리스트
- 완전 탐색
- 에라토스테네스의 체
- 브루트 포스
- 스위핑 알고리즘
- 이분 탐색
- 스택
- OOB
- 이진 탐색
- 투 포인터
- fsb
- BOF
- RTL
- 백트래킹
- 동적 계획법
- ROP
- 이진트리
- 문자열 처리
- Today
- Total
목록study/pwnable (6)
SDJ( 수돈재 아님 ㅎ )
보호되어 있는 글입니다.
이전(예전) 글에서 RTL에 대해 배웠다. 몇 달전 쓰다가 만 글인데 새롭게 고쳐쓰려고 다시 갈아엎었다 RTL chaining을 위한 사전 지식. 2020/02/04 - [study/pwnable] - [Exploitation Technique] RTL 기법 ( Return-to-libc ) 이전 RTL 글에서 나는 쉘을 따고나서 함수의 끝이 yyyy나 YYYYYYYY에서 끝나는 것을 알았고, 이 글에서 쓸 내용은 이제 그것을 가지고 무엇을 어떻게 할지에 대해 짱구를 굴리는 글이다. 글은 RTL chaining 32 bit RTL 64 bit RTL 로 구성되어있다. 이 글을 읽고 나면... RTLchaining과 유사하지만 더 재밌는 ROP(Return Oriented Programming)를 보러가자..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
시스템 Exploitation 기법중 RTL에 관한 글이다. RTL ( Return-to-libc ) 기법 32 bit RTL 64 bit RTL 로 구성되어있다. 이 글을 읽고 나면... RTL을 연속적으로 트리거하는 RTL chaining에 대해 알아보자. 2020/05/28 - [study/pwnable] - [Exploitation Technique] RTL chaining RTL ( Return-to-libc ) ? 먼저 linux 바이너리에는 Dynamic Linking을 했ㅇ르 시 라이브러리 공유를 위해 코드영역이나 데이터영역에 libc가 로드되어 있다. RTL이란 이렇게 남아있는 libc를 가지고 NX를 우회하는 기법을 의미하는데, NX는 stack과 같은 부분에 execute 권한을 지워..
포너블을 하면서 새로운 기법(?)을 찾아서 글로 적어두려 한다. 사실 기법이라기 보다는 그냥 잡기술이 맞는거 같은데 원래 scanf()의 서식문자에 맞지 않는 문자를 넣으면 버퍼링이 걸려서 바로 나간다는 점은 알고 있었는데, 이번과 같은 경우는 처음 보았기 때문에 더욱 놀라웠다. 이번 기술에 너무 감명(?) 받아 예시를 들고자 하여 바이너리를 만들었다. IDA로 바이너리를 까보면 main과 win 함수가 주어진다. 간단히 보자면 n을 크게 입력하면 반복문 입력을 하면서 bof가 발생하는 것을 볼 수 있다. 그래서 처음 win의 함수 주소를 bof를 통해 ret에 덮으면 끝나는 문제이다. 하지만 문제점은 Canary가 존재한다. bof가 있다 하더라도 canary를 우회하지 않으면 의미가 없다. 그래서 이..