본문 바로가기

전체 글270

[Dreamhack System Hacking] STAGE 6 - basic_rop_x86 보호되어 있는 글 입니다. 2022. 2. 6.
[Dreamhack System Hacking] STAGE 6 - basic_rop_x64 보호되어 있는 글 입니다. 2022. 2. 6.
[Dreamhack System Hacking] STAGE 6 - 함께실습 보호되어 있는 글 입니다. 2022. 2. 6.
[Dreamhack System Hacking] STAGE 6 [Mitigation: NX & ASLR] 1. ASLR 1) ASLR (Address Space Layout Randomization) - 바이너리가 실행될 때마다 스택, 힙, 공유 라이브러리 등을 임의의 주소에 할당하는 보호 기법 - 커널에서 지원하는 보호 기법 - 아래의 명령어로 확인 가능 - 리눅스에서 이 값은 0, 1, 또는 2의 값을 가질 수 있음 - 각 ASLR이 적용되는 메모리 영역 ① No ASLR(0): ASLR을 적용하지 않음 ② Conservative Randomization(1): 스택, 힙, 라이브러리, vdso 등 ③ Conservative Randomization + brk(2): (1)의 영역과 brk로 할당한 영역 - 예제 코드 // Name: addr.c // Compi.. 2022. 2. 6.
[Dreamhack System Hacking] STAGE 5 - ssp_001 보호되어 있는 글 입니다. 2022. 1. 30.
[Dreamhack System Hacking] STAGE 5 - ssp_000 보호되어 있는 글 입니다. 2022. 1. 30.
[Lazenca] Protection Tech > Canaries 1. Canaries 1) Canaries (Canary word) - 버퍼 오버플로우를 모니터하기 위해 버퍼와 제어 데이터 사이에 설정된 값 - 버퍼 오버플로우가 발생 시 Canary 값이 손상, Canaries 데이터 검증에 실패, 오버플로우에 대한 경고 출력, 손상된 데이터 무효화 처리 2) 종류 ① Terminator canaries - Canary 값을 문자열의 끝을 나타내는 문자들 (NULL, CR, LF, EOF)을 이용하여 생성 - 공격자는 Canaries를 우회하기 위해 return address를 쓰기 전에 null 문자 사용해야 함 - null 문자로 인해 오버플로우 방지 (strcpy 함수는 null문자의 위치까지 복사) - 그럼에도 공격자는 잠재적으로 Canary를 알려진 값으로 .. 2022. 1. 30.
[Dreamhack System Hacking] STAGE 5 [Stack Canary] 1. 스택 카나리 1) 스택 카나리 - 스택 버퍼 오버플로우로부터 반환 주소를 보호 - 함수의 프롤로그에서 스택 버퍼와 반환 주소 사이에 임의의 값을 삽입하고 함수의 에필로그에서 해당 값의 변조를 확인하는 보호 기법 - 카나리 값의 변조가 확인되면 프로세스 강제 종료 - 스택 버퍼 오버플로우로 반환 주소를 덮으려면 반드시 카나리를 먼저 덮어야함 -> 공격자는 반환 주소를 덮을 때 카나리 값을 변조하게 됨 -> 이렇게 되면 함수의 에필로그에서 변조가 확인되어 공격자는 실행 흐름 획득 불가능 2. 카나리 작동 원리 - 예제 코드 (스택 버퍼 오버플로우 취약점 존재) // Name: canary.c #include int main() { char buf[8]; read(0, buf,.. 2022. 1. 30.
[bWAPP] HTML Injection - Reflected(GET) 1. HTML Injection이 무엇인지 정리하시오. 1) HTML Injection - 공격자가 악의적인 목적으로 html 태그를 삽입하는 공격 - 악의적인 html 태그를 삽입하여 원치 않은 내용을 보게 하거나 다른 사이트로 리다이렉션 하는 등의 공격을 함 2) 종류 ① Reflected(GET) ② Reflected(POST) ③ Stored 3) 반사기법 (Reflected) - url에 공격자가 악의적인 html 태그를 삽입하여 공격하는 방법 - 공격 방법 ⓐ 취약한 변수에 악의적인 html 태그 삽입 ⓑ 사용자가 링크를 누르면 악의적인 html 코드 실행 - 종류 ① Reflected(GET) - 사용자가 요청한 url의 취약한 파라미터를 공격자가 조작하여 공격하는 방법 - 값을 header.. 2022. 1. 30.