일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 커널
- 취약점
- 시스템프로그래밍
- pwncollege
- px4
- C++
- 프로그래밍
- Pwnable.kr
- 시스템해킹
- 어셈블리어
- 워게임
- 시스템
- Leviathan
- 리눅스
- 시스템 프로그래밍
- 리버싱
- 알고리즘
- 시그널
- 컴퓨터구조
- write up
- css
- 드론
- wargame
- 리눅스 커널
- 리눅스커널
- C언어
- Bandit
- pwn.college
- kernel
- radare2
- Today
- Total
목록커널 (5)
Computer Security

1. vm start 로 vm 환경에서 구동해주자. 2. vm connect 를 통해 연결 해준다. 3.커널의 log 를 출력하는 dmesg 명령어를 사용하면 아래의 welcome to this kernel challenge가 뜬다. 아래의 내용을 살펴보면 [ 2.906536] ### [ 2.907114] ### Welcome to this kernel challenge! [ 2.908472] ### 이번엔 별 내용이 없다..알아서 찾아보라는 뜻인듯 하다. 4. workspace에 있는 IDA를 이용해서 우리가 받은 challenge kernel 6.0을 열어주자. 5. IDA에서 F5를 누르면 어셈블리어를 C언어코드로 변환 해준다. 변환 한 뒤, device_write부분을 살펴보자. 일단 이제 본격적..

1. vm start 로 vm 환경에서 구동해주자. 2. vm connect 를 통해 연결 해준다. 3.커널의 log 를 출력하는 dmesg 명령어를 사용하면 아래의 welcome to this kernel challenge가 뜬다. demsg 아래의 내용을 살펴보면 [ 2.974984] 이 챌린지는 기본 커널 악용에 대해 알려주는 방식으로 커널을 오용합니다. [ 2.979728] 이 챌린지는 `/proc/pwncollege`를 통해 간단한 문자 장치 인터페이스를 노출합니다. [ 2.983899] 다른 파일과 마찬가지로 이 장치를 열고 쓰고 닫을 수 있습니다. [ 2.987399] 비밀번호를 알아낼 수 있으면 캐릭터 장치가 플래그를 기록합니다. [ 2.991099 ] 행운을 빕니다! /proc/pwnco..

KASLR(Kernel Address Space Layout Randomization) 커널이 무작위 주소에 매핑되도록 만들어, 커널 익스플로잇을 어렵게 하는 보호기법이다. 유저 공간의 ASLR(1) 과 비슷한 개념이다. 주로 커널이 실행되기 전 단계인 부트로더에서 셋팅된다. 우회하기 위해 kernel memory address leak 과정이 필요하다. (1) ASLR(address Space Layout Randomization) 스택, 힙, 라이브러리 등의 주소를 랜덤한 영역에 배치하여, 공격에 필요한 target address를 예측하기 어렵게 만든다. 프로그램이 실행될 때마다 각 주소들이 변경된다. (2) kernel memory address leak 커널의 취약점을 이용해서, 커널의 메모리 ..

리눅스 커널 빌드과정 1.빌드에 필요한 패키지 설치 2.원하는 버전의 리눅스 커널 소스 다운로드 3.make defconfig //해당 아키텍쳐의 default 옵션을 사용 4.make menuconfig //메뉴 기반 설정 화면을 이용 5.make -j N // N개의 CPU core를 이용해 커널 이미지 빌드 1. 빌드에 필요한 패키지 설치 -build-essential -libncurses5 -libncurses5-dev -bin86 -kernel-package -libssl-dev -bison -flex -libelf-dev 위의 패키지들을 apt-get install 명령을 통해 설치 해준다. 2.원하는 버전의 리눅스 커널 소스 다운로드 https://www.kernel.org/ The Linu..