분류 전체보기

    ATT&CK Attack Framework

    Requirement 1. ATT&CK Att&ck Framework 개념, 용어, 활용방안 등 배경지식 설명 ATT&CK Framework? Miter Corp에서 개발 한 ATT&CK Framework는 기업 네트워크에 대한 수백만 건의 공격에서 관찰된 위협적인 전술 및 기술에 대한 동적 문서이다. ATT&CK Use Cases Adversary Emulation 특정 적에 대한 사이버 위협 인텔리전스를 적용하여 기술 도메인의 보안을 평가하는 과정과 그 위협을 모방하기 위해 그들이 어떻게 운용하는지를 평가한다. Adversary Emulation은 조직의 라이프사이클의 모든 해당 지점에서 적대적인 활동의 탐지 및/또는 완화를 검증하는 능력에 초점을 맞춘다. ATT&CK는 Adversary Emulat..

    Initial Access

    보호되어 있는 글입니다.

    Adult_FSB (64bit fsb, exit)

    exit함수 내부적으로 free 호출하는 것에 대한 글을 쉽게 찾아서 쉽게? 풀었던 것 같다. Writeup File information Code Main int __cdecl __noreturn main(int argc, const char **argv, const char **envp) { signed int i; // [rsp+Ch] [rbp-144h] char buf; // [rsp+10h] [rbp-140h] unsigned __int64 v5; // [rsp+148h] [rbp-8h] ​ v5 = __readfsqword(0x28u); Init(*(_QWORD *)&argc, argv, envp); for ( i = 0; i > 16) & 0xffff one_gadget_high = (one..

    exit함수를 이용한 exploit

    hackctf adult_fsb 문제를 풀면서 알게 된 방법이다. exit함수 내부의 free함수를 호출하는것을 이용하여(free_hook) exploit을 하는 방법을 소개하려고 한다. Source Code 먼저 간단하게 exit함수에서 어떻게 free함수가 호출되고 있는지 알아보자. exit() void exit (int status) { __run_exit_handlers (status, &__exit_funcs, true, true); } exit함수는 내부적으로 run_exit_handlers 함수를 호출하여 진행한다. 여기서 인자로 넘겨주는 &__eixt_funcs는 exit.h에 선언되어있다. exit.h extern struct exit_function_list *__exit_funcs a..

    ChildFSB (64bit fsb)

    원래 풀려던 방법으로는 실패해서 살짝 다르게 풀어보았는데 생각대로 한 번에 풀려서 다행이었다. Writeup File information Code Main int __cdecl main(int argc, const char **argv, const char **envp) { char buf; // [rsp+0h] [rbp-20h] unsigned __int64 v5; // [rsp+18h] [rbp-8h] ​ v5 = __readfsqword(0x28u); Init(); puts("hello"); read(0, &buf, 25uLL); printf(&buf, &buf); return 0; } Main함수의 역할은 다음과 같다. read함수로 buf에 최대 25만큼 입력한다. printf함수로 buf를 ..

    babyfsb (64bit fsb)

    Writeup File information Code Main int __cdecl main(int argc, const char **argv, const char **envp) { char buf; // [rsp+0h] [rbp-40h] unsigned __int64 v5; // [rsp+38h] [rbp-8h] ​ v5 = __readfsqword(0x28u); setvbuf(_bss_start, 0LL, 2, 0LL); puts("hello"); read(0, &buf, 0x40uLL); printf(&buf, &buf); return 0; } Main함수의 역할은 다음과 같다. read함수로 buf에 최대 64만큼 입력한다. printf함수로 buf를 출력한다 (fsb 발생) Exploit 이 문..