본문 바로가기

전체 글60

ASLR&NX ASLR(Address Space Layout Randomization)공격자의 침입을 어렵게 하기 위해:1. 메모리에서 임의의 버퍼 주소를 알기 어렵게 하기 2. 메모리 영역에서 불필요한 실행 권한 제거  NX(No-eXecute) 공격자의 침입을 어렵게 하기 위해:1. 메모리에서 임의의 버퍼 주소를 알기 어렵게 하기2. 메모리 영역에서 불필요한 실행 권한 제거 실행(x)에 사용되는 메모리 영역과 쓰기(w)에 사용되는 메모리 영역을 분리   보호기법 확인하기 Ubuntu 바이너리Checksec     func에 갔을 때   Return to Library rtl.c  => Canary가 존재하고 NX가 활성화된 상태 스택 구조디버깅해서 살펴보면 다음과 같은 스택 구조임을 확인할 수 있다.취약점 분석 1.. 2024. 12. 22.
Virtualization 2 Virtual Machine Pros- full autonomy- very secure-lower costs- used by all cloud providers for on demand server instance Cons- VM 사이즈 크기 때문에 휴대성 안 좋음(encapsulate)- VM overhead => Container로 보완 Container  VM이 하드웨어적으로 virtualization하는 테크닉이라면,container은 OS level의 virtualization 테크닉으로, 더 간편하다. 머신러닝 app이 있다고 할 때 이 app을 운영하기 위해서 PyTorch, TF 와 같은 프로그램에 의존한다.app과 PyTorch를 하나의 unit에 포장해서 기계에 주는 거다.그러면 받은.. 2024. 12. 22.
Database 1 Introduction to Databasesdatabase는 많은 양의 데이터를 저장, 불러오기 위한 consistent, organized 구조를 제공한다. Flat File Approach- CSV file로 db 저장하고 사용자가 app code에서 관리- 읽거나 업데이트하려면 각 파일을 매번 파싱해야 함 Nonrelational Databases - table format 대신 storage model(key-value pairs/documents/graphs)을 사용- Schemas are dynamic: 각 row별로 다른 schema 사용 가능(table model 쓰지 않기 때문)* schema: attribute 리스트* Relational database에서는 table을 사용하므로 .. 2024. 12. 22.
Networking (1) Networking이란  클라우드는 여러 개의 컴퓨터가 networking하면서 이루어진다. network에 속한 디바이스들을 node라고 하는데, server와 client 모두 node다.  - Server : 서비스 제공하는 물리적 디바이스- Router : 하나의 네트워크의 중심이 됨 => 각 네트워크는 하나의 router로 묶여 있으며, 라우터 중심으로 네트워크가 형성되면 그 네트워크만의 IP주소가 할당된다.- Hub & switch : 여러 node들을 하나로 묶는 디바이스- Internet service provider(ISP) : 사진과 같은 하나의 네트워크가 인터넷에 연결될 수 있도록 중개하는 회사- Cloud : 인터넷 IT 서비스의 on-demand delivery- Network n.. 2024. 12. 22.