일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- TSet
- AINCAA
- Security
- dtft
- 게임개발
- stride
- sampling theory
- Rr
- MLFQ
- RBAC
- 유니티
- STCF
- 운영체제
- Unity #Indie Game
- 배경 그림
- 언리얼엔진
- MAC
- linear difference equation
- ret2libc
- dirty cow
- Race condition
- Double free
- DSP
- frequency-domain spectrum analysis
- 메카님
- CTF
- 유스케이스
- 게임 개발
- DP
- pdlc
- Today
- Total
목록2024/06/04 (3)
다양한 기록
Little endian- 높은 바이트가 높은 주소에 저장- 인텔 x86 Big endian- 낮은 바이트가 높은 주소에 저장- PowerPC, SPARC Data: 0x010203040x1000x1010x1020x103Little Endian0x040x030x020x01Big Endian0x010x020x030x04공격자들은 주소를 조작하기 위해 바이트 오더링 방식을 알아야 함CWE-121: Stack-based Buffer Overflow버퍼는 배열로 이루어진 임시 기억 공간제일 많이 할당되는 부분은 스택(지역변수)* 전역변수면 데이터 영역, malloc으로 할당 받았으면 힙 영역에 존재보통 스택에서 오버플로우가 많이 일어남 Stack-based 버퍼 오버플로우* 그냥 스택 오버플로우에는 재귀함수로 ..
int val[5];배열은 많은 경우 공격 대상이 됨주소 크기는 시스템에 따라 다름32비트 시스템에선 포인터 32비트 차지64비트 시스템에선 포인터 64비트 차지 (실제론 48비트만 씀) val[-3]val[0]에서 -12바이트 전으로 가서 읽으려고 할 것퍼미션이 있으면 접근 가능 typedef int zip_dig[5];zip_dig cmu = {1, 5, 2, 1, 3};zip_dig mit = {0, 2, 1, 3, 9};zip_dig ucb = {9, 4, 7, 2, 0};스택 보호 기법이 있는 경우, 32비트-> 제일 먼저 선언된게 낮은 주소에 들어감ucb [높은주소] .. {9, 4, 7, 2, 0}mit .. {0, 2, 1, 3, 9}cmu [닞은주소] ... {1, 5, 2, 1, 3}c..
아리안 5적재된 위성을 궤도에 전달하기 위한 용도의 로켓64비트 숫자를 16비트에 채우면서 유발 화성 기후 궤도 탐사선록히드 마틴에서는 점화 데이터를 야드 단위로 만들었고,나사는 미터법으로 생각했음 -> 지나치게 낮은 궤도 - 폭발 비트 크기를 제대로 맞추지 않으면 문제가 생길 수 있음 char: -128~127unsigned char: 0~255short: -32768~32767unsigned short: 0~65535 Format Specifier%d - 10진수 정수 (4바이트)%u - 부호없는 정수%i - 아무 정수 (10진수, 8진수, 16진수) %hd - short (2바이트)%hu - unsigned short %hhd - char (1바이트)%hhu - unsigned char %ld - ..