CISSP Domain 3: Assess and Mitigate Vulnerabilities of Sec Arch, designs and Solution Elements Flashcards
What are the security challenges of IoT devices?
- Device Proliferation
- sheer number of IoT devices, ranging from consumer gadgets to industrial sensors, creates a challenge in ensuring consistent security across the ecosystem
- Weak or Default Configurations
- Limited Computing Resources
- Lack of Standardized Security Protocols
- Data Privacy and Protection
- Inadequate Update and Patching Mechanisms
- Complex Ecosystems
- Supply Chain Risks
- Physical Security
What are common threats and attacks against IoT devices?
- Botnet Attacks
- Malware Infections
- Unauthorized Access
- Data Breaches
- Device Tampering
- Supply Chain Attacks
- Denial-of-Service (DoS) Attacks
- Man-in-the-Middle (MitM) Attacks
- Physical Attacks
- Firmware and Software Exploits
What’s Service Oriented Architecture?
- architectural approach that involves designing software systems by decomposing them into smaller, self-contained units called services
- services encapsulate specific functionalities or business processes
What does it mean if a user accesses an application in a black-box fashion?
- users interact with the services without needing to know the inner workings or complexities of the service implementation
- users are only concerned with the inputs, outputs, and functionality provided by the service, treating it as a self-contained unit without needing to understand its internal details
What superseded SOA?
Microservices
What’s Microservices?
architectural style that structures an application as a collection of small, independent, and loosely coupled services
What is the role of each microservice?
each service focuses on a specific business functionality, such as user authentication, inventory management, or payment processing
What’s the benefit of microservices in terms of Scalability and Performance?
- microservices architecture allows for horizontal scaling, where individual services can be scaled independently based on demand
- improves performance and resource utilization, as only the necessary services are scaled, rather than the entire application
What are the benefits of microservices in terms of Technology Diversity?
- microservices allow for the use of different technologies and frameworks for each service based on its specific requirements
- the flexibility enables the use of the most suitable technology stack for each service, promoting innovation and adaptation to evolving technology trends
What are the security considerations of microservices?
- Authentication and Authorization
- proper authentication and authorization mechanisms should be implemented for each microservice to ensure secure access and protect sensitive data
- Secure Communication
- microservices should communicate over secure channels, such as HTTPS, and enforce encryption for sensitive data transmission
- Input Validation and Sanitization
- each microservice should validate and sanitize incoming data to prevent common security vulnerabilities, such as injection attacks or cross-site scripting (XSS)
- Secure Configuration and Secrets Management
- microservices should be securely configured, including proper handling of sensitive configuration parameters and secrets, such as API keys or database credentials
- Logging and Monitoring
How do microservices communicate with each other?
through well-defined APIs, typically using lightweight protocols such as REST or messaging queues
What’s the advantage of microservices in terms of Fault Isolation and Resilience?
microservices architecture enhances fault isolation, as failures or issues within one microservice do not necessarily impact the entire system
What’s containerization?
technique in software development and deployment that involves encapsulating applications and their dependencies into self-contained units called containers
What’s a Container?
- lightweight and portable unit that packages an application and all its dependencies, including libraries, frameworks, and runtime environments
- provides a consistent and isolated environment for the application to run, regardless of the underlying infrastructure
What’s a Container Engine?
- containerization is facilitated by container engines or runtimes like Docker, Kubernetes, or containerd
- the engines provide the necessary tools and libraries to create, manage, and run containers
What are the security considerations of containerization?
- Container Isolation
- Secure Image Management
- Container Runtime Security
- Vulnerability Management
- Access Controls
- Network Security
- containers communicate with each other and external systems over networks
- Container Orchestration Security
- Logging and Monitoring
- Compliance and Auditing
Explain Container Isolation
- while containers provide isolation between applications, it’s essential to ensure that the isolation is robust and secure
- weak container isolation can lead to container escapes or unauthorized access to sensitive resources
- implementing proper container isolation mechanisms, such as strong Linux kernel features like namespaces and cgroups, helps mitigate these risks
Explain Container Secure Image Management
- container images serve as the basis for creating containers
- crucial to ensure the integrity and security of container images by using trusted sources, regularly updating images, and scanning them for vulnerabilities
- employing image signing and verification techniques can also enhance image security
Explain Container Runtime Security
- keeping the runtime up to date with the latest security patches and configurations is vital
- enabling appropriate security features, like secure kernel options and runtime policies, helps mitigate security risks
Explain Container Orchestration Security
- using container orchestration platforms like Kubernetes, securing the orchestration infrastructure becomes critical
- properly configuring access controls, securing API endpoints, and managing secrets and sensitive data within the orchestration platform are crucial to prevent unauthorized access and data breaches
What’s the main advantage of containerization over virtualization?
- containerization reduces the overhead of server virtualization by enabling containerized apps to run on a shared OS kernel
- containers don’t have thier own OS
What’s embedded system?
- specialized computer systems designed to perform specific functions within larger systems or device
- a full computer system embedded inside of another larger system
- e.g. printers, GPS, drones, semi-automated vehicles
What’s High Performance Computing?
- alternative to client-server computing model for compute-intensive operations within large data sets
- used for problems that require the use of extermly large data sets and large-scale parallel processing
What’s Grid computing and how does it work?
- high performance computing often seen in business settings
- employs a centralized controller that makes computing assignments to grid members
- the grid controller needs to be secured from takover by bad actor