Security Policy for CAcert Systems

CAcert Security Policy Status == wip
Creation date: 2009-02-16
Status: work-in-progress

1. Introduction

1.1. Motivation and Scope

This Security Policy sets out the policy for the secure operation of the CAcert critical computer systems. These computer systems include:

  1. Physical hardware mounting the logical services
  2. Webserver + database (core server(s))
  3. Signing service (signing server)
  4. Support interface
  5. Source code (changes and patches)

1.1.1. Effected Personnel

These roles and teams are effected:

1.1.2. Out of Scope

Non-critical systems are not covered by this manual, but may be guided by it, and impacted where they are found within the security context. Architecture is out of scope, see CPS#6.2.

1.2. Principles

Important principles of this Security Policy are:

Each task or asset is covered by a variety of protections deriving from the above principles.

1.3. Definition of Terms

Systems Administrator
A Member who manages a critial system, and has access to security-sensitive functions or data.

1.4. Documents and Version control

1.4.1. The Security Policy Document

This Security Policy is part of the configuration-control specification for audit purposes (DRC). It is under the control of Policy on Policy for version purposes.

This policy document says what is done, rather than how to do it.

1.4.2. The Security Manual (Practices) Document

This Policy explicitly defers detailed security practices to the Security Manual ("SM"), The SM says how things are done. As practices are things that vary from time to time, including between each event of practice, the SM is under the direct control of the Systems Administration team. It is located and version-controlled on the CAcert wiki.

1.4.3. The Security Procedures

The team leaders may from time to time explicitly defer single, cohesive components of the security practices into separate procedures documents. Each procedure should be managed in a wiki page under their control, probably at SystemAdministration/Procedures. Each procedure must be referenced explicitly in the Security Manual.

2. Physical Security

Physical assets and security procedures are generally provided and maintained as set forth in the Memorandum of Understanding between CAcert and Stichting Oophaga Foundation of 10 July 2007, and as amended from time to time. Approval of both boards of CAcert and Oophaga is required for changes to the MoU.

The MoU places responsibility for the physical assets (hardware), hosting and for control of access to the hardware with Oophaga.

2.1. Facility

CAcert shall host critical servers in a highly secure facility. There shall be independent verification of the physical and access security.

2.2. Physical Assets

2.2.1. Computers

Computers shall be inventoried before being put into service. Inventory list shall be available to all Systems Administrators. Units shall have nickname clearly marked on front and rear of chassis. Machines shall be housed in secured facilities (cages and/or locked racks).

2.2.1.1 Acquisition

Acquisition of new equipment that is subject to a pre-purchase security risk must be done from a vendor that is regularly and commercially in business. Precautions must be taken to prevent equipment being prepared in advance.

Acquisition may be done by CAcert systems administrators but the ownership and control of the hardware transfers to Oophaga the moment the equipment is in use.

2.2.2. Cables

Cabling to all equipment shall be labeled at both ends with identification of end points.

2.2.3. Media

2.2.3.1 Provisioning

Storage media (disk drives, tapes, removable media) are inventoried upon acquisition. CAcert system administrators will report any changes in the use or location of the media to the routine logging list for update to the inventory.

New storage media (whether disk or removable) shall be securely wiped and reformatted before use.

2.2.3.2 Storage

Removable media shall be securely stored at all times, including when not in use. When there is a change to status of media, a report is made to the log specifying the new status (sysadmins present, steps taken, location of storage, etc). Drives that are kept for reuse are wiped securely before storage. Reuse can only be within critical systems.

2.2.3.3 Retirement

Storage media that is exposed to critical data and is to be retired from service shall be destroyed or otherwise secured. The following steps are to be taken:

  1. The media is to be securely erased.
  2. One of the following, in order of preference:
    1. rendered unreadable via physical means that destroys the platters and electronics, or,
    2. disposed of via a licensed disposal facility, or
    3. sealed and stored securely until the data has expired. The years of retirement and of expiry should be marked by CAcert systems administrator.

Records of secure erasure and method of final disposal shall be tracked in the asset inventory. Where critical data is involved, 2 system administrators must sign-off on each step.

2.3. Physical Access

In accordance with the principle of dual control, at least two persons authorized for access must be on-site at the same time for physical access to be granted.

2.3.1. Access Authorisation

Access to physical equipment must be authorised.

2.3.2. Access Profiles

The Security Manual must present the different access profiles. At least one CAcert systems administrator will be present for logical access to CAcert critical servers. Only the most basic and safest of accesses should be done with one CAcert systems administrator present. Others must not access the data.

2.3.3. Access Logging

All physical accesses are logged and reported to all.

2.3.4. Emergency Access

There is no procedure for emergency access. If emergency access is gained, this must be reported and justified immediately. See DPR.

2.3.5. Physical Security codes & devices

All personel who are in possession of physical security codes and devices (keys) are to be authorised and documented.

3. Logical Security

3.1. Network

3.1.1. Infrastructure

Current and complete diagrams of the physical and logical CAcert network infrastructure shall be maintained by systems administration team leader. These diagrams should include cabling information, physical port configuration details, and expected/allowed data flow directions, as applicable. Diagrams should be revision controlled, and must be updated when any change is made.

3.1.1.1. External connectivity

Only such services as are required for normal operation should be visible externally; systems and servers which do not require access to the Internet for their normal operation must not be granted that access.

3.1.1.2. Internal connectivity

System and server connections internal to the CAcert infrastructure should be kept to the minimum required for routine operations. Any new connectivity desired must be requested and approved by CAcert system administration team leader and then must be reflected in the appropriate infrastructure diagram(s).

3.1.2. Operating Configuration

3.1.2.1. Ingress

All ports on which incoming traffic is expected shall be documented; traffic to other ports must be blocked. Unexpected traffic must be logged as an exception.

3.1.2.2. Egress

All ports to which outbound traffic is initiated shall be documented; traffic to other ports must be blocked. Unexpected traffic must be logged as an exception.

3.1.3. Intrusion detection

(iang:) this one is covered in DRC-A.5.f. which says: "The security manual describes how computer systems are configured and updated to protect them against hostile intrusion, unauthorized electronic access, and "malware" and how individuals are authorized to perform those tasks."

Logs should be examined regularly (by manual or automatic means) for unusual patterns and/or traffic; anomalies should be investigated as they are discovered and should be reported to appropriate personnel in near-real-time (e.g. text message, email) and investigated as soon as possible. Suspicious activity which may indicate an actual system intrusion or compromise should trigger the incident response protocol described in section 5.1.

3.2. Operating System

Any operating system used for critical server machines must be available under an OSI-approved open source software license.

3.2.1. Disk Encryption

Any operating system used for critical server machines must support software full-disk or disk volume encryption, and this encryption option must be enabled for all relevant disks/volumes when the operating system is first installed on the machine.

3.2.2. Operating configuration

Servers must enable only the operating system functions required to support the necessary services. Options and packages chosen at OS install shall be documented, and newly-installed systems must be inspected to ensure that only required services are active, and their functionality is limited through configuration options. Any required application software must follow similar techniques to ensure minimal exposure footprint.

Documentation for installing and configuring servers with the appropriate software packages and configurations will be maintained by the system administrators in the wiki.

3.2.3. Patching

A.1.i, A.1.k:

Software used on production servers must be kept current with respect to patches affecting software security. Patch application is governed by CCS and must be approved by the systems administration team leader, fully documented in the logs and reported by email to the systems administration list on completion (see §4.2).

3.2.3.1. “emergency” patching

Application of a patch is deemed an emergency when a remote exploit for a weakness in the particular piece of software has become known (on servers allowing direct local user access, an emergent local exploit may also be deemed to be an emergency). Application of patches in this case may occur as soon as possible, bypassing the normal configuration-change process. The systems administration team leader must either approve the patch, instruct remedial action, or refer the case to dispute resolution.

Declaration of an emergency patching situation should not occur with any regularity. Emergency patch events must be documented within the regular summaries to Board.

3.3. Application

This section deals with applications written in-house.
CPS 6.6 refers to this section for all info.

Software development takes place on various test systems (not a critical system). See §7. Once offered by Software Development (team), system administration team leader has to approve the installation of each release or patch.

Any changes made to source code must be referred back to software development.

3.4. Access control

General user access to CAcert services shall normally be conducted through a web-based application interface. Features are made available according to Assurance Points and direct permissions.

Direct Permissions are managed by the Application to enable special online administrators from the Support Team access to certain functions.

Direct command-line access to critical systems shall only be granted to systems administrators designated on the Remote and Virtual Access and Contact List (SSH Access List). Systems administrators who appear on the CAcert _Access_ List in the MoU, Appendix B, are implied to be on the SSH Access List.

3.4.1. Authorisation

The access control lists are:

Changes to the above lists are approved by the board.

3.4.2. Authentication

A strong method of authentication is used and documented.

3.4.3. Removing access

Upon resignation from systems administration team, or determination by two members of the OS access list that access is no longer required, an entity's access to CAcert systems may be be temporarily removed. The removal is made permanent when the Board approves the change to the Access List.

Maybe easier just to say, on direction of the Arbitrator.


Valid HTML 4.01

This is the end of the Security Policy.