IT 118

[Heartbleed Attack] TLS Record Protocol, Heartbeat Protocol, Heartbleed Attack

TLS▶TLS layer• Application layer→TLS: unprotected data 전송됨• TLS: handles encryption, decryption, integrity checks 수행• TLS→Transport layer: protected data 전송됨 ▶TLS Record ProtocolTLS handshake가 끝나면 client와 server는 header와 payload로 구성된 record를 이용해 데이터를 교환한다. Record Sending Data Receiving Data ▶Hearbeat protocol in OpenSSLclient와 server가 일정 기간 이상 서로에게 데이터를 보내지 않으면 통신을 막음으로써,TLS의 keep-alive feature을..

IT/시스템 보안 2024.06.07

[Cache Side-channel Attacks] Cache, Flush+Reload, Prime+Probe, Countermeasure

배경지식: Cache Locality: 프로그램이 실행되는 동안 주소 공간의 일부분만을 집중적으로 접근하는 경향▶Temporal locality: 최근에 access된 것은 곧 다시 access될 확률이 높다- 따라서 최근에 접근된 데이터를 프로세서 가까이에 유지하면 성능 향상됨 eg. 반복문 안에서는 동일한 명령어가 반복적으로 실행되기 때문에, 해당 명령어는 다시 접근될 확률이 높다.▶Spatial locality: 최근에 access된 것 가까이에 있는 것은 곧 access될 확률이 높다 메모리의 연속적인 주소 공간이 자주 함께 사용되는 경우가 많기 때문 - 따라서 연속된 데이터 블록을 메모리의 상위 수준으로 옮기면 성능 향상됨eg. 배열은 메모리에 연속적으로 저장되며, 배열의 요소들이 순차적으로 접..

[File System] VSFS(very simple file system)

overall organization▶block: 위 사진에서 각각의 작은 네모 하나. 4kB  ▶Data region: user data 저장  ▶Inode: 파일의 주요 metadata 정보 (파일이 나뉘어있는 data block이 어떤건지, 파일 크기, 소유자, 파일에 대한 접근 권한과 접근/수정 시간 등)를 track하기 위해 이들이 저장된 곳- inode number에 의해 위치가 계산되어 refer- 위 사진의 Inode table에서 주황색 네모 하나. 256B- 위 사진 기준으로는 Inode가 총 80개이므로, 가능한 최대 파일 개수도 80개이다. ▶Inodes(Inode table): Inode의 array임 ▶Bitmap: Inode나 Data block의 free(0) / alloca..

[File System] File & Directory, Hard link & Soft Link

File: byte의 선형 배열임  - low-level filename: inode number create와 remove▶create- fd: fild descriptor - 정수값임  ▶remove  offset: read/write을 시작할 파일 내 위치 ▶offset에 영향을 주는 함수- read()- write()- lseek(): read/write offset을 재설정  ▶traces example write()와 fsync()▶write(): 데이터를 우선 메모리 버퍼에 write하고, '나중에' disk로의 업데이트 ▶fsync(): 즉시 disk에 write함   fork()와 dup()▶fork()- child process는 parent process의 file descriptor..

[Secondary Storage] HDD(Hard Disk Drives), RAID(Redundant Array of Inexpensive Disks)

HDD Basic geometryTrack skewtrack 경계를 건너갈 때일지라도 연속적 read (여러개의 sector read)가 잘 수행되도록.track skew의 원리가 지하철 환승의 매커니즘과 같다는 생각이 들었다.내가 1호선에서 2호선으로 갈아탄다 치자.1호선에서 내린 뒤 2호선이 너무 곧바로 오면,그 열차는 놓치게 되고, 결국 다음 열차를 위해 배차간격을 거의 통으로 기다려야 한다.반면, 만약 2호선이 곧바로가 아니라, 아주 센스있게 "내가 1호선에서 2호선으로 걸어갈 여유가 있도록" 약간 딜레이를 두고 와준다면,나는 2호선 열차를 안전하게 탈 수 있다! 만약 disk가 아래와 같고, 22번과 34번 sector를 순서대로 read하려 한다 치자.22번을 읽은 뒤, head가 34번으로 ..

[I/O Devices] I/O Bus, Canonical device, Polling & Interrupt, DMA, MMIO

system architectureBus: data path ▶1. Memory bus: CPU ↔ memory ▶2. I/O bus: CPU ↔ I/O devices- USB(Universal Serial Bus): univsersal- SCSI, SATA: hard disk만을 위한 bus. - PCIe: 요즘에 device들은 SCSI, SATA 대신 이걸 많이 사용 canonical device ▶interfaceOS는 세 register를 read/write함으로써 device의 작동을 컨트롤함. 여기 구조는 device끼리 거의 비슷함 - status register: device의 현재 상태 - command register: device가 특정 task를 수행하도록 함 - data regi..

[논문] Improving Performance of Autoencoder-Based Network Anomaly Detection on NSL-KDD Dataset

연구 배경Internet에 연결된 device들이 많아짐에 따라 (IoT device) 보안 문제가 점차 대두되고 있어, 네트워크 보안을 위한 안정적 해결책이 요구된다.요즈음에는 여기에 AI의 활용이 제안되고 있으며, AutoEncoder 모델을 활용한 deep learning method는 거대한 네트워크 트래픽 샘플 상에서 anomaly를 탐지하는 task에 많이 사용되고 있다.AutoEncoder는 unsupervised feed-forward neural network이며, input의 reconstruction을 주요 목적으로 한다. 그리고 그 구조는 input - hidden - outptut layer로 대칭적이다. 또한 가장 적은 neuron을 가진 hidden layer를 latent s..

IT/인공지능 2024.05.31