7. Operations security

7.1 Operational procedures and responsibilities

  Objective: To ensure correct and secure operations of information processing facilities.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.2 Protection from malware  
  

Objective: To ensure that information and information processing facilities are protected against malware.  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.3 Backup    

Objective: To protect against loss of data.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.4 Logging and monitoring

Objective: To record events and generate evidence.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.5 Control of operational software  

Objective: To record events and generate evidence.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.6 Technical vulnerability management

Objective: To prevent exploitation of technical vulnerabilities.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.7 Information systems audit considerations   

Objective: To minimise the impact of audit activities on operational systems.  

 

7.1.1 Documented operating procedures

Operating procedures should be documented and made available to relevant users.

  • Prepare documented procedures for operational activities associated with information processing and communication facilities, such as computer start-up and close down procedures, backup, equipment maintenance, media handling, computer room and mail handling management and safety. This includes:
    a) the installation and configuration of systems;
    b) processing and handling of information both automated and manual as well as backup;
    c) scheduling requirements, including interdependencies with other systems, earliest job start and latest job completion times;
    d) instructions for handling errors or other exceptional conditions, which might arise during job execution, including restrictions on the use of system utilities;   
    e) support and escalation contacts including external support contacts in the event of unexpected operational or technical difficulties;
    f) special output and media handling instructions, such as the use of special stationery or the management of confidential output including procedures for secure disposal of output from failed jobs;
    g) system restart and recovery procedures for use after a system failure;
    h) the management of audit-trail and system log information and monitoring procedures. 
  • Manage information systems consistently, where technically feasible, using the same procedures, tools and utilities.

    In some cases, organizations bring together software development and operations to shorten development cycles. This allows organizations to be agile, and maintain the pace of innovation while taking advantage of cloud-native technology and practices. More about this approach is available from the NIST virtual workshop from January 2021 on improving the security of DevOps practices .

7.1.2 Change management

Changes to the organization, business processes, information processing facilities and systems that affect information security should be controlled.

  • Put in place formal approval procedure, management responsibilities and procedures to ensure satisfactory control of all changes. Consider the following:
    a) identify and record significant changes;
    b) assess potential impacts, including information security impacts, of such changes; c) communicate change details to all relevant persons;
    d) plan and test changes and verify that information security requirements have been met;
    e) abort and recover from unsuccessful changes and unforeseen events using fall-back procedures;
    f) enable quick and controlled implementation of changes needed to resolve an incident via an emergency change process
    g) retain an audit log containing all relevant information about changes.

    Prevent system or security failures with an adequate control of changes to information processing facilities and systems.

7.1.3 Capacity management

The use of resources should be monitored, tuned and projections made of future capacity requirements to ensure the required system performance.

  • Identify system capacity requirements (considering also the capacity of the human resources, as well as offices and facilities), taking into account the business criticality of the concerned system.    
    a) consider a documented capacity management plan for mission critical systems. 
  • Apply system tuning and monitoring to ensure and, where necessary, improve the availability and efficiency of systems.
    a) put in place detective controls should to indicate problems in due time;
    b) take account of new business and system requirements as well as current and projected trends in the organization’s information processing capabilities for projections of future capacity requirements;
    c) providing sufficient capacity can be achieved by increasing capacity or by reducing demand. Examples of managing capacity demand include:
    1. deletion of obsolete data (disk space);
    2. decommissioning of apps, systems, databases or environments;
    3. optimising batch processes and schedules;
    4. optimising application logic or database queries;
    5. denying or restricting bandwidth for resource-hungry services if these are not business critical (e.g. video streaming) 
  • Ensure the management monitors the utilization of key system resources, and identifies trends in usage, particularly in relation to business applications or information systems management tools.
    a) use this information to identify and avoid potential bottlenecks and dependence on key personnel that might present a threat to system security or services, and plan appropriate action;
    b) pay attention to any resources with long procurement lead times or high costs

7.1.4 Separation of development, testing and operational environments

Development, testing, and operational environments should be separated to reduce the risks of unauthorized access or changes to the operational environment.

  • Identify and implement the level of separation between operational, testing, and development environments that is necessary to prevent operational problems.
    a) define and document rules for the transfer of software from development to operational status;
    b) run the development and operational software on different systems or computer processors and in different domains or directories;
    c) do not make accessible compilers, editors and other development tools or system utilities from operational systems when not required;
    d) use different user profiles for operational and testing systems. 
  • Maintain a known and stable environment in which to perform meaningful testing and to prevent inappropriate developer access to the operational environment.
    a) test the changes to operational systems and applications in a testing or staging environment prior to being applied to operational systems. Do not do testing on operational systems;
    b) do not copy sensitive data into the testing system environment unless equivalent controls are provided for the testing system.

    Preventing any unwanted modification of files or system environment or system failure during development and testing requires to maintain a known and stable environment in which to perform meaningful testing and to prevent inappropriate developer access. With the access to the operational system and its information, developers and testers are able to introduce unauthorized and untested code or alter operational data. Especially if they share the same computing environment. Separating development, testing and operational environments is therefore desirable to reduce the risk of accidental change or unauthorized access to operational software and business.

    On some systems this capability could be misused to commit fraud or introduce untested or malicious code, which causes serious operational problems.