일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 게임 개발
- 운영체제
- STCF
- TSet
- 유니티
- DSP
- MLFQ
- Unity #Indie Game
- stride
- dtft
- linear difference equation
- CTF
- dirty cow
- RBAC
- 게임개발
- Security
- DP
- 메카님
- ret2libc
- Race condition
- 유스케이스
- AINCAA
- sampling theory
- 언리얼엔진
- pdlc
- frequency-domain spectrum analysis
- Double free
- MAC
- Rr
- 배경 그림
- Today
- Total
목록2024/06 (38)
다양한 기록
IPv4 32비트 짜리로는 모자라다2011년 IPv4 주소가 고갈됨 IPv6 데이터그램 포맷- 고정 40바이트- 프레그멘테이션 관련 헤더 없음 : 네트워크 환경이 개선되어 헤더 정보가 간단해짐- IP를 위해 128비트 할당 0123 : 4567 : 89ab : cdef : 0123 : 4567 : 89ab : cdefverpriflow lavelpayload lennext hdrhop limitsource address (128 bits)destination address (128 bits)data- ver: IPv6- priority: 패킷의 우선순위와 품질 지정- flow label: 동일한 흐름의 패킷 식별, 패킷 처리 효율성을 높임- payload len: 데이터 부분의 길이- next hdr: ..
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 - ..
CWE 416이미 해제된 메모리 청크를 가리키는 포인터를 다시 참조함https://github.com/Lagooneng/UseAfterFree GitHub - Lagooneng/UseAfterFree: 간단한 Use After Free 예시간단한 Use After Free 예시. Contribute to Lagooneng/UseAfterFree development by creating an account on GitHub.github.com예시 코드 프로세스에서 의도되지 않은 동작을 유발할 수 있음#include #include struct unicorn_counter {int num;};int main() { struct unicorn_counter *counter; int *run_cal..
glibc Heapmalloc, free 관련 bin - 뚜껑이 달려있는 저장통, 상자, 쓰레기통 ..어쨌든 용량이 다른 여러 종류의 통힙에서 해제가 된 메모리 청크를 관리하기 위해 사용하는 자료구조 힙에서는 청크가 메모리를 할당하거나 해제하는 단위malloc : 메모리를 청크 단위로 할당해줌free : 사용이 끝난 메모리를 해제 해제된 청크는 해당되는(사이즈 맞는) 빈에 저장되는데,각 빈은 서큘러 더블리 링크드 리스트 형태 할당된 청크Meta DataUser DataMeta Data사용자 데이터가 있고, 메타 데이터가 앞 뒤로 있음각각의 청크는 사용자 데이터 뿐만 아니라 관련 메타데이터도 포함함 해제된 청크Chunk SizeAMPFwd PointerBck PointerFD_NextsizeBck_Nex..