Dreamhack

    [Dreamhack] rev-basic-1 - Write Up

    보호되어 있는 글입니다.

    [Dreamhack] Return to Library - Write Up

    이번 문제는 아래 글과 동일한 문제이다. 다만 차이가 있다면 pwntools을 이용해 가젯과 문자열을 찾았다. [system][hacking] Exploit Tech : Return to Library(RTL) NX를 우회하는 공격기법인 RTL에 대해 공부한 내용이다. RTL을 공부하기 전 NX가 무엇인지, PLT가 무엇인지 알아야 한다. 이에 대한 내용은 아래의 글에 정리되어 있다. [system][hacking] 메모리 보호기 3omh4.tistory.com 간단히 사용한 API만 정리하였다. 밑의 API를 이용해 위 글의 페이로드를 적절히 수정해 해결하였다. pwntools ELF, ROP e = ELF('./rtl') r = ROP(e) system_plt = e.plt["system"] # bi..

    [System][Dreamhack] Exploit Tech : Return to Library(RTL)

    [System][Dreamhack] Exploit Tech : Return to Library(RTL)

    NX를 우회하는 공격기법인 RTL에 대해 공부한 내용이다. RTL을 공부하기 전 NX가 무엇인지, PLT가 무엇인지 알아야 한다. 이에 대한 내용은 아래의 글에 정리되어 있다. [system][hacking] 메모리 보호기법 Mitigation: NX & ASLR 지난 글(Return to shellcode)를 보면 쉘을 딸 수 있었던 이유는 다음과 같다. return addr을 임의의 주소로 덮기 가능 → canary 도입 ⇒ canary leak 으로 우회 버퍼의 주소 알아내기 가능 버퍼안의 쉘코드 실 3omh4.tistory.com [system] PLT & GOT PLT(Procedure Linkage Table)과 GOT(Global Offset Table)는 동적 링크된 심볼의 주소를 라이브러..

    [Dreamhack] basic_exploitation_001 Write Up

    보호되어 있는 글입니다.

    [Dreamhack] exploit tech : Return Address Overwrite

    [Dreamhack] exploit tech : Return Address Overwrite

    드림핵을 기반으로 작성한 내용이다. 버퍼오버플로우에 대한 익스 테크이므로 아래의 글을 참고하면 좋다. [system][hacking] stack buffer overflow - 스택 버퍼 오버플로우 드림핵 내용을 기반으로 내 방식으로 이해한 내용을 정리했다. (잘못된 내용이 있다면 댓글로 알려주세요..!) 스택 버퍼 오버플로우 스택의 버퍼에서 발생하는 오버플로우 버퍼 데이터가 목적지 3omh4.tistory.com 예제 코드 // Name: rao.c // Compile: gcc -o rao rao.c -fno-stack-protector -no-pie #include #include void init() { setvbuf(stdin, 0, 2, 0); setvbuf(stdout, 0, 2, 0); } ..

    [System][Dreamhack] stack buffer overflow - 스택 버퍼 오버플로우

    [System][Dreamhack] stack buffer overflow - 스택 버퍼 오버플로우

    드림핵 내용을 기반으로 내 방식으로 이해한 내용을 정리했다. (잘못된 내용이 있다면 댓글로 알려주세요..!) 스택 버퍼 오버플로우 스택의 버퍼에서 발생하는 오버플로우 버퍼 데이터가 목적지로 이동되기 전에 보관되는 임시 저장소 데이터가 저장될 수 있는 모든 단위를 뜻하기도 함 스택 버퍼 스택에 있는 지역변수 힙 버퍼 힙에 할당된 메모리 영역 버퍼가 필요한 이유 데이터의 처리속도 차이 때문 처리 속도가 다른 두 장치 사이의 데이터 전달 시 abcdefg를 전달했지만 받는 쪽에서는 abcd만 받을 수 있음 → 이를 방지하기 위해 수신 측과 송신 측 사이에 버퍼 둠 버퍼 오버플로우 버퍼가 넘치는 것 버퍼는 일정한 크기를 가지고 있다. int로 선언한 지역변수 = 4bytes char[10] = 10bytes 1..

    [Dreamhack] shell_basic

    보호되어 있는 글입니다.

    [DreamHack]devtools-sources

    보호되어 있는 글입니다.

    [DreamHack]Carve Party

    보호되어 있는 글입니다.

    [Dreamhack]web_cookie

    보호되어 있는 글입니다.