x86-64 아키텍처: 레지스터
·
정보보안 관련/System
레지스터는 CPU가 데이터를 빠르게 저장하고 사용할 때 이용하는 보관소이며, 산술 연산에 필요한 데이터를 저장하거나 주소를 저장하고 참조하는 등 다양한 용도로 사용됩니다. x64 아키텍처에는 범용 레지스터(General Register), 세그먼트 레지스터(Segment Register), 명령어 포인터 레지스터(Instruction Pointer Register, IP), 플래그 레지스터(Flag Register)가 존재합니다. 범용 레지스터 🧺 범용 레지스터는 주용도는 있으나, 그 외의 다양한 용도로 사용될 수 있는 레지스터입니다. x86-64에서 각각의 범용 레지스터는 8바이트를 저장할 수 있으며, 부호 없는 정수를 기준으로 264−1까지의 수를 나타낼 수 있습니다. 자주 쓰이는 범용 레지스터들의 ..
명령어 집합 구조(Instruction Set Architecture, ISA)란
·
정보보안 관련/System
PU가 해석하는 명령어의 집합을 의미합니다. 프로그램은 기계어로 이루어져 있는데, 프로그램을 실행하면 이 명령어들을 CPU가 읽고, 처리합니다. ISA는 IA-32, x86-64(x64), MIPS, AVR 등 다양하게 존재합니다. 이렇게 다양한 ISA가 개발되고 사용되는 이유는 모든 컴퓨터가 동일한 수준의 연산 능력을 요구하지 않으며, 컴퓨팅 환경도 다양하기 때문입니다. 예를 들어, x86-64는 고성능 프로세서를 설계하기 위해 사용됩니다. 이를 기반으로한 CPU들은 많은 전력을 소모하며, 발열도 상대적으로 심합니다. 그러므로 안정적으로 전력을 공급할 수 있고, 냉각 장치를 구비하는데 공간상의 부담이 크지 않은 데스크톱 또는 랩톱에 적합합니다. 그러나 드론과 같이 배터리를 사용하거나 공유기, 인공지능 ..
기억장치가 있는데 CPU안에 레지스터가 왜 필요한가요?
·
정보보안 관련/System
CPU는 굉장히 빠른 속도로 연산을 처리하는데, 이를 위해 데이터의 빠른 교환이 필요합니다. 예를 들어 사탕을 1초에 100개 생산하는 기계가 있다고 가정합시다. 만약 이 기계에 초당 100개의 재료를 공급하지 못한다면, 재료가 공급될 때까지 대기해야 하므로 최대의 생산효율을 달성할 수 없습니다. 또한 완성된 사탕을 초당 100개씩 가져가지 못한다면, 결국 기계 앞에 사탕이 쌓여서 생산을 중단해야 하는 상황을 맞게 됩니다. 이와 마찬가지로 CPU도 필요한 데이터를 빠르게 공급하고, 반출할 수 있어야 자신의 효율을 제대로 발휘할 수 있습니다. 그런데 CPU의 연산속도가 기억장치와의 데이터 교환속도보다 압도적으로 빠르기 때문에, 기억장치만을 사용하면 병목현상이 발생합니다. 따라서 CPU는 교환속도를 획기적으..
컴퓨터 구조
·
정보보안 관련/System
컴퓨터 구조(Computer Architecture)란 컴퓨터가 효율적으로 작동할 수 있도록 하드웨어 및 소프트웨어의 기능을 고안하고, 이들을 구성하는 방법을 말합니다. 컴퓨터 구조는 컴퓨터의 기능 구조에 대한 설계, 명령어 집합구조, 마이크로 아키텍처, 그리고 기타 하드웨어 및 컴퓨팅 방법에 대한 설계 등이 포함됩니다. ‘컴퓨터의 기능 구조에 대한 설계’란 컴퓨터가 연산을 효율적으로 하기 위해 어떤 기능들이 컴퓨터에 필요한지 고민하고, 설계하는 분야입니다. 대표적으로 폰 노이만 구조, 하버드 구조, 수정된 하버드 구조가 있습니다. CPU의 명령어에 대한 설계는 명령어 집합구조(Instruction Set Architecture)라고 불리며, CPU가 처리해야하는 명령어를 설계하는 분야입니다. 대표적으로..
스택 오버플로우와 스택 버퍼 오버플로우의 차이점
·
정보보안 관련/System
스택 영역은 실행중에 크기가 동적으로 확장될 수 있습니다. 그러나 한정된 크기의 메모리 안에서 스택이 무한히 확장될 수는 없습니다. 스택 오버플로우(Stack Overflow)는 스택 영역이 너무 많이 확장돼서 발생하는 버그를 뜻합니다. 반면, 스택 버퍼 오버플로우는 스택에 위치한 버퍼에 버퍼의 크기보다 많은 데이터가 입력되어 발생하는 버그를 뜻합니다. 용어가 비슷하여 혼동하기 쉽지만, 이 둘은 전혀 다른 의미를 가지고 있으므로 사용에 주의해야 합니다.
Amazon Inspector
·
퍼블릭 클라우드 관련/AWS
AWS Insepctor는 EC2 인스턴스에 사용할 수 있는 보안성 평가 도구입니다. 인스턴스의 네트워크 접근성, CVE 유무, 보안 설정 등을 평가하고, 취약점을 식별하여 감사 보고서를 생성합니다. 감사 보고서에는 각 보안 취약점에 대한 설명과 심각성, 그리고 개선을 위한 권장 사항이 기술됩니다. Inspector의 자동화된 보안 감사가 취약점을 항상 완벽하게 발견하는 것은 아닙니다. 애플리케이션의 구성이 복잡하다면, 별도의 보안 인력을 통한 보안 감사도 고려해보는 것이 좋습니다. 규칙 패키지설명Security Best Practices시스템이 안전하게 구성되어 있는지 확인하는 규칙 패키지입니다. SSH를 통해서 루트로 로그인할 수 있는지, 안전한 암호 길이를 사용하고 있는지, Address Space..
AWS CloudWatch
·
퍼블릭 클라우드 관련/AWS
CloudWatch CloudWatch는 애플리케이션 관리자에게 다양한 정보를 시각화해서 제시하고, 시스템 성능 변화에 실시간으로 대응할 수 있는 솔루션을 제공하는 모니터링 서비스입니다. CloudWatch는 다양한 기능을 제공하는데, 대표적으로 지표, 경보, 로그가 있습니다. 지표 특정 리소스의 데이터를 시각화해주는 기능입니다. EC2, S3, EBS 등과 관련하여 다양한 데이터 포인트를 제공합니다. 특정 지표를 선택하면, 해당 지표 값의 추이를 그래프로 보여줍니다. 이를 통해 시간별 리소스 사용량의 변화를 관찰하고, 이상치를 발견할 수 있습니다. 경보 모니터링 중인 지표가 임곗값에 도달하면 알림을 발생시킬 수 있습니다. 알림을 발생시킬 서비스로 Amazon Simple Notification Serv..
AWS Well-Architected 툴
·
퍼블릭 클라우드 관련/AWS
사용자가 앞에서와 같은 실수를 하지 않도록, AWS는 AWS Well-Architected라는 클라우드 애플리케이션 평가 프레임워크를 제공합니다. 이 프레임워크는 운영 우수성, 보안성, 안정성, 성능 효율성, 비용 최적화의 측면에서 사용자 애플리케이션을 평가 기준으로 합니다. 사용자는 AWS Well-Architected Tool 서비스를 이용하여 이 프레임워크를 적용해볼 수 있습니다. AWS Well-Architected는 애플리케이션의 보안성을 신원 관리 및 접근 제어, 인프라 보안, 데이터 보안, 탐지 등의 측면에서 평가합니다.
AWS 네트워크, 데이터 보안 관련 용어 정리
·
퍼블릭 클라우드 관련/AWS
Virtual Private Cloud (VPC): 사용자가 정의한 가상 네트워크를 제공하는 서비스라우팅 테이블: VPC의 라우팅 규칙을 정의하는 테이블인터넷 게이트웨이 (Internet Gateway, IGW): VPC에 부착하여 인터넷과의 통신에 사용할 수 있는 게이트웨이보안 그룹: AWS 인스턴스의 인바운드, 아웃바운드 트래픽을 제어하는 가상 방화벽네트워크 접근 제어 목록 (Access Control List, ACL): VPC 서브넷의 인바운드, 아웃바운드 트래픽을 제어하는 가상 방화벽 AWS Simple Storage Service (S3): AWS에서 제공하는 객체 스토리지 서비스S3의 접근 제어: IAM의 자격 증명 기반 정책과 S3의 버킷 정책 및 ACL로 이뤄진다. AWS는 IAM의 자격..
AWS CloudTrail
·
퍼블릭 클라우드 관련/AWS
CloudTrailAWS CloudTrail은 사용자의 활동을 추적하여 로그를 생성하는 서비스입니다. 리소스 변경 사항, 사용자 행동, 보안 사고의 원인 등을 분석할 때, CloudTrail로 생성한 로그가 중요한 자료로 사용됩니다.이벤트CloudTrail은 관리 이벤트, 데이터 이벤트, 인사이트 이벤트를 기록합니다.관리 이벤트관리 이벤트는 AWS의 관리형 리소스를 조작할 때 발생합니다. IAM 역할 정책을 수정하거나, EC2 라우팅 테이블을 편집하는 등의 행동이 관리 이벤트를 발생시킵니다. CloudTrail은 기본적으로 모든 서비스의 관리 이벤트를 추적하고 있으며, 사용자는 90일 동안의 관리 이벤트를 CloudTrail에서 조회할 수 있습니다. 만약 특정 서비스에서 발생하는 관리 이벤트만을 모아서 ..