post-thumbnail

OOB(Out Of Bound) 취약점

배열의 인덱스 주소가 배열의 범위 안에 있는지 검사하지 않는다는 점을 이용한 취약점 --> 인덱스 값이 음수이거나 배열의 길이를 벗어날 때 발생이 코드를 컴파일하여 실행하면, 인덱스를 -1과 100을 사용했음에도 불구하고, 아무런 경고 없이 여과없이 값을 출력함을 확인

2025년 2월 24일
·
1개의 댓글
·

[Write-Up] oneshot

이번 문제는 ROP 가젯을 안만들고, one_gadget을 이용해서 익스플로잇 코드를 만드는 과정에 대해 정리하려고 작성했다.코드는 stdout의 주소를 받을 수 있고, msg\[16]에 비해 46을 read하므로 버퍼 오버플로우가 발생하는 것을 알 수 있다.일단 어떤

2025년 2월 18일
·
0개의 댓글
·
post-thumbnail

[Write-Up] Rock Paper Scissors

내가 입력한 것과 srand()로 난수를 생성해서 나온 결과값으로 10번 연속 이겨야 하는 코드이다. Bruteforce가 가장 먼저 생각났지만, 1/3^10의 확률은 죽어도 안나올것이라는 생각이 먼저 들었다.gdb로 확인해 보고 싶었는데, 이렇게 나오더라.분명 mai

2025년 2월 16일
·
0개의 댓글
·

PIE, RELRO

📌 PIE란? >

2025년 2월 16일
·
0개의 댓글
·

[Write up] basic_rop_x86

이번 문제는 rop 문제인데 x64는 이전 실습문제인 rop 문제와 동일한 알고리즘으로 페이로드를 짜면, 익스플로잇이 되기 때문에 따로 Write up을 진행하지 않았다. 그러나 해당 문제는 함수 호출 규약이 x64와는 다르기 때문에 Write up을 진행해보려고 한다

2025년 2월 12일
·
0개의 댓글
·

ROP(Return Oriented Programming)

Return Gadget을 사용하여 실행 흐름을 구현하는 기법.GOT overwrite, return to library, return to dl-resolve 등의 공격 기법을 연쇄적으로 구성하여 ROP payload를 만들 수 있다.해당 문제는 드림핵의 rop 문제

2025년 2월 11일
·
0개의 댓글
·
post-thumbnail

Canary 보호 기법

함수의 프롤로그에서 스택 버퍼와 반환 주소 사이에 임의의 값을 삽입하고, 에필로그에서 값의 변조를 확인하여 버퍼 오버플로우를 막는 보호 기법.checksec으로 활성화된 보호 기법 확인확인해 보면 Canary, RELRO, PIE가 적용되어있는 것을 확인 할 수 있다.

2025년 2월 10일
·
0개의 댓글
·

RTL(Return-to-Libc) 공격

📌 RTL이란? > 스택에 NX(No eXecutable stack) 보안 기법이 적용되었을 때 사용하는 공격 기법이다. 📢 배경 NX 보안 기법은 "스택에서 코드 실행 불가"라는 제약 조건을 만들었고, 이로 인해 스택에서 shellcode를 삽입하고 RET 주소

2025년 1월 24일
·
0개의 댓글
·

'Stealth' Process (2)

현재 실행 중인 모든 프로세스에 대해 API 후킹앞으로 실행될 모든 프로세스에 대해 API 후킹kernel32.CreateProcess(): 새로운 프로세스를 생성할 때 사용되는 API이 때 CreateProcessA는 ASCII 버전, CreateProcessW는 유

2025년 1월 21일
·
0개의 댓글
·
post-thumbnail

'Stealth' Process (1)

IAT Hookin : 프로세스의 특정 IAT 값을 조작하여 후킹하는 방식Code Patch : 실제 API 코드 시작 5바이트 값을 'JMP XXXXXXXX' 명령어로 패치하는 방식00422CF7에서 IAT의 주소인 48C69C에서 가리키는 값인 7C93D92E로 간

2025년 1월 20일
·
0개의 댓글
·

pwntools 간단 사용법

process : 익스플로잇을 로컬 바이너리(응용 프로그램)를 대상으로 할 때 사용하는 함수remote : 원격 서버를 대상으로 사용하는 함수from pwn import \*p = process('./test')p.send(b'A') p.sendline(b'A) p.s

2025년 1월 19일
·
0개의 댓글
·
post-thumbnail

계산기 API Hooking 실습

SetWindowTextW API와 SetDlgItemTextW API를 후킹하면 될 것이라고 가정한다.SetWindowTextW API의 정의를 보면 위와 같다. 해당 API는 창의 문자열을 변경하는 API로, 파라미터로 창 핸들(hWnd)와 문자열 포인터(lpStr

2025년 1월 19일
·
0개의 댓글
·
post-thumbnail

Notepad WriteFile() Hooking

디버그 이벤트의 종류이 중 디버깅에 관련된 이벤트는 EXCEPTION_DEBUG_EVENT이다. 이와 관련된 이벤트의 종류는 아래와 같다.각종 예외에서 디버거가 반드시 처리해야 하는 예외는 EXCEPTION_BREAKPOINT이다. BP를 구현하는 방법은 설치하는 코드

2025년 1월 15일
·
0개의 댓글
·
post-thumbnail

[Dreamhack-rev] Inject ME!!!

이번 문제는 64비트 환경에서 코드를 좀 읽어보고 싶어서 풀어보았다.이번 제공 파일은 실행 파일이 아닌 DLL 파일이라서 좀 더 생소했다. 실행은 안되니까 일단 PEview를 봤는데 rdata쪽에서 의심가는 곳이 있었다.dreamhack.exe와 flag라는 글자가 보

2025년 1월 14일
·
0개의 댓글
·
post-thumbnail

[Reversing.kr] ransomware

이번 문제는 reversing.kr에서 140점 정도하는 나름 나에게는 도전 문제를 시도해보았다.말투가 나쁜 사람치고는 착한 어투(?)로 쓴 것 같다. 문제는 key값을 입력하고 이 key값을 이용하여 복호화를 하는 문제인 것 같다.일단 PE File Format을 확

2025년 1월 14일
·
0개의 댓글
·
post-thumbnail

[Reversing.kr] ImagePrc

이번 문제는 내가 지금까지 생각했던 방식에서 좀 많이 동떨어져 있던 문제다. 기존 방식은 '코드를 파악해서 문제를 풀어야 겠다!'라는 느낌이었다면 이 문제는 '다른 프로그램들을 엮어서 생각해보자!'라는 느낌을 받았다.입력이 키보드가 아니라 마우스로 되어서 처음에는 어떻

2025년 1월 13일
·
0개의 댓글
·
post-thumbnail

API Hooking

📌 API Hooking이란? > Win32 API를 후킹하는 기술을 API 후킹이라고 한다. = Win32 API 호출을 중간에서 가로채서 제어권을 획득하는 것 📢 API이란? > 사용자 애플리케이션이 시스템 커널에 접근을 요청하기 위한 방법, Windows에서

2025년 1월 13일
·
0개의 댓글
·
post-thumbnail

Code Injection with Assembly Language

해당 코드는 ThreadProc() 함수를 어셈블리어에서 작성한 것이다. C언어로 작성된 것과 비교하고 싶으면 아래 링크로 가서 비교하면 된다. Code Injection스택 프레임 생성 --> 스택에 문자열들을 넣어서 ThreadProc() 함수가 종료될 때 스택을

2025년 1월 12일
·
0개의 댓글
·

Code Injection

상대방 프로세스에 독립 실행 코드를 삽입한 후 실행하는 기법 --> Thread Injection이라고도 얘기함DLL InjectionDLL을 통째로 상대방 프로세스에 삽입하면, 코드와 데이터가 같이 메모리에 존재하기 때문에 코드가 정상적으로 실행가능Code Injec

2025년 1월 12일
·
0개의 댓글
·
post-thumbnail

[Reversing.kr] Easy Unpack

이번 문제는 내가 지금까지 공부했던 Packer의 지식을 이용하는 문제라 재미있을 것 같아서 해보았다.문제에서 구하고자 하는 것은 OEP가 어디인지 파악하는 것이다.코드를 분석하기 앞서 이 파일이 어떤 패커로 패킹이 되었는지 DIE(Detect-It-Easy)로 확인해

2025년 1월 10일
·
0개의 댓글
·