일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 보안
- C언어 알고리즘
- BOF
- 8086CPU레지스터
- 인공지능
- BOJ
- C언어알고리즘
- 백준
- 딥러닝파이썬
- 신경망 학습
- 머신러닝
- 딥러닝
- 스트림암호
- 신경망파이썬
- 신경망구현
- 밑바닥부터시작하는딥러닝
- 알고리즘
- 정보보안
- 파이썬신경망
- 백준알고리즘
- 신경망
- 버퍼오버플로우
- FTZlevel10
- c언어
- 항등함수
- 달고나bof
- 소프트맥스함수
- 활성화함수파이썬
- C알고리즘
- 파이썬
- Today
- Total
목록<Information Security>/<System> (6)
HeeJ's
클러스터 노드에서 파일 무결성 검사를 지속적으로 실행하는 OpenShift Container Platform Operator 각 노드에서 권한 있는 고급 침입 탐지 환경(AIDE) 컨테이너를 초기화하고 실행하는 데몬세트를 배포하여 데몬 세트 Pod의 초기 실행 중에 수정된 파일 로그를 상태 오브젝트에 제공 더보기 AIDE(Advanced Instrusion Detection Environment) 파일 및 디렉토리의 무결성을 검사하는 프로그램 변경된 사항을 추적할 수 있으며 GPL(General Public License)로 배포된 제한이 없는 host 기반의 침입탐지 시스템 유틸리티 데이터 무결성(Integrity) 네트워크 환경에 있는 시스템인 경우 외부의 크래커나 내부의 악의적인 사용자의 공격에 노..
현존하는 시스템들은 두 가지의 바이트 순서(byte order)를 가진다. 1.big endian방식 2. little endian방식 big endian방식 바이트 순서가 낮은 메모리 주소에서 높은 메모리 주소로 되어있다. IBM 370 컴퓨터와 RISC 기반의 컴퓨터들, 모토로라의 마이크로프로세서가 사용 little endian방식 높은 메모리 주소에서 낮은 메모리 주소로 되어있다. 일반적인 IBM 호환 시스템, 알파 칩의 시스템들에 사용 37E59A02라는 16진수 값을 저장한다면, big endian은 낮은 메모리 영역부터 값을 채워넣어 37E59A02 순서로 저장되고, little endian은 높은 메모리 영역부터 채우기 때문에 029AE537 순서로 저장하게 된다. 바이트 단위이기 때문에 한..
버퍼(buffer)? 시스템이 연산 작업을 하는데 있어 필요한 데이터를 일시적으로 저장하는데, 여기서 사용되는 그 저장공간 대부분의 프로그램에서는 버퍼를 스택에 생성한다. 스택은 함수 내에서 선언한 지역 변수가 저장되고, 함수가 끝나면 반환된다. buffer overflow는 미리 준비된 버퍼에 버퍼의 크기보다 큰 데이터가 들어갈 때 발생하게 된다. ex) 40바이트의 스택이 있다. 41~44바이트의 데이터가 들어간다면 이전 함수의 base pointer를 수정하게 될 것이다. 45~48바이트의 데이터가 들어간다면 return address가 저장되어있는 공간을 침범할 것이다. 48바이트 이상을 쓰게 된다면 return address를 포함한 그 이전 스택에 저장된 데이터마저 바뀔 것이다. 시스템에게 명..
* EIP - main() 함수의 시작점을 가리킴 * ESP - 스택의 맨 꼭대기를 가리킴 (PUSH & POP명령) * ebp (base pointer) - 저장하는 이유; 이전에 수행하던 함수의 데이터를 보존하기 위해 => 함수가 시작될 때 stack pointer와 base pointer를 새로 지정 - 함수 프롤로그 과정 1. push %ebp ebp를 스택에 저장한다. 2. mov %esp, %ebp esp 값을 ebp에 복사한다. (함수의 base pointer와 stack pointer가 같은 지점을 가리킨다) 3. sub $0x8, %esp esp에서 0x8을 뺀다. (스택을 8바이트 확장한다) 4. and $0xfffffff0, %esp esp와 11111111 11111111 11111..
레지스터? CPU가 프로세스를 실행하기 위해서 프로세스를 CPU에 적재시켜야 한다. 또, 흩어져 있는 명령어 집합과 데이터들을 적절하게 사용하기 위해서 여러 저장공간이 필요하다. cpu가 빨리 읽고 써야하는 데이터들이기 때문에 cpu 내부 메모리를 사용한다. => 레지스터(register) 1. 범용 레지스터(General-Purpose register) 2. 세그먼트 레지스터(segment register) 3. 포인트 레지스터(point register) 4. 플래그 레지스터(Program status and control register) 5. 인덱스 레지스터(Index register) 6. 인스트럭션 포인터(instruction pointer) - 범용 레지스터 논리 연산, 수리 연산에 사용되는..
1. 메모리 구조 8086 Memory Architecture 인텔 8086이란? 인텔사에서 개발한 16비트의 CPU이다. 8086은 20비트의 메모리 주소 버스를 갖고 있어 총 1MB의 물리 메모리를 다룰 수 있다. '세그멘테이션'이라는 방식을 통해 메모리에 접근하도록 되어있다. High address Available Space Kernel Low address 시스템이 초기화되기 시작하면 시스템은 커널을 메모리에 적재시키고 가용 메모리 영역을 확인하게 된다. 운영에 필요한 기본적인 명령어 집합을 커널에서 찾기 때문에 커널은 반드시 본인의 위치에 있어야 한다. 커널은 64kByte 영역에 자리잡지만 이를 확장하여 요즘 운영체제는 더 큰 영역을 사용한다. 운영체제는 하나의 프로세스를 실행시키면 이 프로..