+APP.4.2 SAP ERP Systems
---+APP.4.2.G1. Lack of Consideration of SAP Security Recommendations
---+APP.4.2.G2. Insufficient Application of Patches and SAP Security Notes
---+APP.4.2.G3. Lack of Planning, Implementation, and Documentation of an SAP Access Control Policy
---+APP.4.2.G4. Lack of SAP Documentation and Contingency Concepts
---+APP.4.2.A1 Secure Configuration of the SAP Java Stack (B)
---+APP.4.2.A2 Secure Configuration of the SAP Java Stack (B)
---+APP.4.2.A3 Network Security (B)
---+APP.4.2.A4 Protection of Standard SAP User IDs (B)
---+APP.4.2.A5 Configuration and Protection of SAP User Administration (B)
---+APP.4.2.A6 Creation and Implementation of a User and Access Control Policy [Department, Developer] (B)
---+APP.4.2.A7 Protection of SAP Databases (B)
---+APP.4.2.A8 Protection of the SAP RFC Interface (B)
---+APP.4.2.A9 Protecting and Monitoring the Message Server (B)
---+APP.4.2.A11 Secure Installation of an SAP ERP System (S)
---+APP.4.2.A12 SAP Authorisation Development [Department, Developer] (S)
---+APP.4.2.A13 SAP Password Security (S)
---+APP.4.2.A14 Identification of Critical SAP Authorisations [Department] (S)
---+APP.4.2.A15 Secure Configuration of the SAP Router (S)
---+APP.4.2.A16 Implementation of Security Requirements for the Windows Operating System (S)
---+APP.4.2.A17 Implementation of Security Requirements for the Unix Operating System (S)
---+APP.4.2.A18 Disabling Insecure Communications (S)
---+APP.4.2.A19 Definition of Security Policies for Users (S)
---+APP.4.2.A20 Secure SAP GUI Settings (S)
---+APP.4.2.A22 Protection of the Spool in the SAP ERP System [Developer] (S)
---+APP.4.2.A23 Protection of SAP Background Processing [Developer] (S)
---+APP.4.2.A24 Activation and Protection of the Internet Communication Framework (S)
---+APP.4.2.A25 Secure Configuration of the SAP Web Dispatcher (S)
---+APP.4.2.A26 Protection of Customers' Own Code in the SAP ERP System (S)
---+APP.4.2.A27 Auditing the SAP ERP System [Department] (S)
---+APP.4.2.A28 Creation of a Contingency Concept [BCM Officer] (S)
---+APP.4.2.A29 Setting Up Emergency Users (S)
---+APP.4.2.A30 Implementation of Continuous Monitoring of Security Settings (S)
---+APP.4.2.A31 Configuration of SAP Single Sign-On (S)
---+APP.4.2.A32 Real-Time Detection and Alerts for Irregular Processes (H)

APP.4.2 SAP ERP Systems

Introduction

Enterprise resource planning systems from SAP are used to automate and technically support internal and external business processes. SAP ERP systems typically process confidential information, which means that all their components and data must be appropriately protected.

SAP ERP systems are currently available under the product names SAP Business Suite and SAP S/4HANA. An SAP ERP system is made up of various modules that can be used to map the structure of an organisation. The modules of a given SAP ERP system may cover areas such as accounting, human resources, and logistics. The core components of the SAP ERP system are SAP NetWeaver (application server middleware) and SAP HANA (application server and database). SAP NetWeaver enables clients to integrate SAP ABAP and SAP Java applications and control processes throughout the system. SAP HANA can analyse large amounts of data for all business units in real time.

Objective

This module describes the risks to be considered with regard to SAP ERP systems and how these systems can be securely installed, configured, and operated. It is geared towards Chief Information Security Officers and administrators who are in charge of planning and implementing SAP ERP systems.

Scoping and Modelling

Module APP.4.2 SAP ERP Systems must be applied to every SAP ERP system.

This module is limited to the core installation of an SAP ERP system and focuses on the specific characteristics of the underlying SAP NetWeaver application server. It does not describe all the available SAP products in detail. The following descriptions are limited to the configuration of the SAP Basis and do not address the configuration of modules or applications.

Requirements for developing ABAP programs can be found in module APP.4.6 SAP ABAP Programming. No adjacent IT systems, operating systems, or databases are considered in detail. On these subjects, specific modules such as SYS1.2.2 Windows Server 2012, SYS.1.3 Linux and Unix Servers, APP.4.3 Relational Database Systems should be applied. This module also does not deal with SAP HANA. Current product names are deliberately omitted, as these change frequently.

Useful Resources

The SAP Help Portal (https://www.help.sap.com/viewer/index) is the central entry point to support from SAP. It offers extensive information and instructions on a wide range of subjects. A selection of topics of interest in the context of SAP ERP systems is listed below:

  • SAP Audit Management, https://help.sap.com/saphelp_fra110/helpdata/de/ab/ce1b52bd543c3ae10000000a441470/ frameset.htm und https://help.sap.com/saphel_erp60_sp/helpdata/de/f9/558f40f3b19920e10000000a1550b0/ content.htm
  • User Management of SAP NetWeaver AS for Java, https://help.sap.com/saphelp_nw73/helpdata/de/45/b90177cf2252f8e10000000a1553f7/co ntent.htm?no_cache=true
  • Central User Administration, https://help.sap.com/doc/erp2005_ehp_07/6.07/de-DE/8d/270bea613d2443bad6ce0524f08ca0/frameset.htm

Detailed best-practice recommendations on audits of SAP ERP systems are provided in the auditing guide SAP ERP 6.0: Best Practice—Recommendations of the German-speaking SAP User Group (DSAG).

1. Übersicht

Bezeichnung Standard
APP.4.2.A1 Secure Configuration of the SAP Java Stack (B)

The SAP ABAP stack MUST be configured securely. For this purpose, the respective profile parameters MUST be set (e.g. for password security, authentication, and encryption). The system change option and the clients MUST also be configured, IMG customising carried out, and the operating system commands saved.

APP.4.2.A2 Secure Configuration of the SAP Java Stack (B)

The SAP Java stack MUST be configured securely if it is used. Security mechanisms and concepts that are different from the SAP ABAP stack MUST be created for this. Administrators MUST therefore know the architecture of the Java stack and how it is administered. In addition, unnecessary services MUST be shut down, standard content removed, HTTP services protected, and access to administration interfaces restricted.

APP.4.2.A3 Network Security (B)

To guarantee network security, appropriate concepts MUST be created that factor in the SAP ERP system and the settings made therein.

Furthermore, the SAP router and SAP Web Dispatcher SHOULD be used to implement and maintain a secure SAP network.

In order to avoid vulnerabilities due to misinterpretations or misunderstandings, the IT Operation Department, firewall operations, portal operations, and SAP operations MUST be coordinated.

APP.4.2.A4 Protection of Standard SAP User IDs (B)

Immediately after installing an SAP ERP system, the default passwords for the standard user IDs MUST be changed. Suitable safeguards MUST also be taken to secure the standard SAP user IDs that have been set up. Certain standard user IDs MUST NOT be used (e.g. for RFC connections and background jobs).

APP.4.2.A5 Configuration and Protection of SAP User Administration (B)

SAP user administration for ABAP systems MUST be undertaken in a secure and careful manner. Activities such as creating, changing, and deleting users; resetting and unlocking passwords; and assigning roles and profiles MUST be part of user administration.

APP.4.2.A6 Creation and Implementation of a User and Access Control Policy [Department, Developer] (B)

A user and access control policy MUST be developed and implemented for SAP ERP systems. The following points MUST be considered:

  • the identity principle, minimum principle, job principle, document principle of accounting, document principle of authorisation administration, segregation of duties principle (SoD), approval principle, standard principle, written form principle, and control principle MUST be taken into account.
  • User, authorisation, and profile administrators MUST have separate responsibilities and authorisations.
  • Procedures MUST be defined within authorisation administration for creating, changing, deleting, and transporting roles, as well as for transporting SU24 default values. Authorisation roles SHOULD be created and maintained in the development system. They SHOULD be transported using the Transport Management System (TMS). Authorisations SHOULD be created, saved, and assigned to the users in authorisation roles (PFCG roles) in a role-based access control policy. Since individual critical actions in the roles cannot always be avoided, they SHOULD be covered by mitigation controls.
  • Within the framework of the access control policy, procedures MUST be defined for the request, approval, modification, and deletion of users and authorisations.
  • Naming conventions MUST be defined for user IDs and technical role names.
  • Default values and check indicators SHOULD be maintained in transaction SU24. The corresponding procedure SHOULD be described in the user and access control policy.
  • Legal and internal framework conditions such as the German Generally Accepted Accounting Principles (German GAAP), the German Commercial Code (HGB), and the organisation's internal specifications MUST be taken into account. The user and access control policy SHOULD also cover the operation of technical accounts, including the authorisation of background and interface users.

Appropriate control mechanisms SHOULD be applied to check for SoD conflicts in roles and monitor the assignment of critical authorisations to users.

If components such as SAP HANA and SAP NetWeaver Gateway (for Fiori applications) are used in addition to the ABAP back end, the design of the authorisations among the components MUST be coordinated and synchronised.

APP.4.2.A7 Protection of SAP Databases (B)

Access to SAP databases MUST be secured. Whenever feasible, administrators SHOULD only be able to access the databases with SAP tools. If third-party software is used for this purpose, additional security safeguards MUST be implemented. The users SAPR3 or SAP<SID> MUST NOT be used to connect to databases. In addition, the default passwords (e.g. for SAPR3 or SAP<SID>) MUST be changed and certain database tables (such as USR* tables) placed under special protection.

APP.4.2.A8 Protection of the SAP RFC Interface (B)

To protect the Remote Function Call (RFC) interface, RFC connections, RFC authorisations, and RFC gateways MUST be configured securely.

Uniform administrative guidelines MUST be created and implemented for all RFC connections. For this purpose, the required RFC connections SHOULD be defined and documented. Connections with a stored password SHOULD not be configured from lower- to higher-privileged systems (e.g. from Dev to Prod). RFC connections that are no longer used MUST be deleted.

All RFC gateways MUST be securely administered and suitable profile parameters MUST be set (e.g. gw/monitor, gw/reg_no_conn_info and snc/permit_insecure_start). All connections that are established via a gateway MUST be analysed and evaluated in terms of their security. Furthermore, logging MUST be enabled. Access control lists (ACLs) MUST be defined.

APP.4.2.A9 Protecting and Monitoring the Message Server (B)

The message server MUST be secured by appropriate settings in the profile parameters. Among other things, it MUST be decided whether ACLs are to be set up for the internal message server. The message server MUST be monitored using appropriate mechanisms so that system failures on the message server are detected quickly (for example).

APP.4.2.A11 Secure Installation of an SAP ERP System (S)

When installing an SAP ERP system, current SAP security guides and documentation SHOULD be taken into account. In addition, the security policy of the organisation at hand SHOULD be observed. It SHOULD also be ensured that the SAP ERP system is to be installed on a secure operating system.

APP.4.2.A12 SAP Authorisation Development [Department, Developer] (S)

Technical authorisations SHOULD be developed on the basis of technical specifications. Furthermore, SAP authorisations SHOULD be adapted or created anew on the development system of the SAP landscape under consideration. In cases involving S/4HANA, this SHOULD also include authorisation development on HANA databases. Repository roles SHOULD be set up and transported, as well. Database privileges SHOULD NOT be assigned directly to users.

For software developed in-house (e.g. for transactions or authorisation objects), transaction SU24 SHOULD be maintained (assignments of authorisation objects to transactions). Full authorisation (*) or intervals in object values SHOULD be avoided.

Authorisation development SHOULD be carried out as part of change management.

It SHOULD be ensured that the production system in question is adequately protected against authorisation changes and that no developer keys are assigned. The respective quality assurance system SHOULD be operated in the same way as the production system when assigning authorisations and adding settings.

APP.4.2.A13 SAP Password Security (S)

To ensure secure logins to an SAP ERP system, profile parameters, customising switches, or a security policy SHOULD be configured appropriately.

The hash algorithms used for the stored hash values of the passwords in an SAP ERP system SHOULD comply with the current security standards. Access to tables with hash values SHOULD be restricted.

APP.4.2.A14 Identification of Critical SAP Authorisations [Department] (S)

The handling of critical authorisations SHOULD be strictly controlled. These authorisations, roles, and profiles SHOULD be assigned restrictively. This SHOULD also be ensured for critical role combinations and additive effects, such as cross authorisations.

Critical authorisations SHOULD be regularly identified, reviewed, and evaluated. The SAP profiles SAP_ALL and SAP_NEW* and the SAP authorisation object S_DEVELOP (with change authorisations ACTVT 01 and 02) SHOULD not be assigned in a production system. Emergency users SHOULD be excluded from this requirement.

APP.4.2.A15 Secure Configuration of the SAP Router (S)

The SAP router SHOULD regulate access to the network and complement the existing firewall architecture appropriately. It SHOULD also control access to the SAP ERP system.

APP.4.2.A16 Implementation of Security Requirements for the Windows Operating System (S)

The SAP ERP system SHOULD NOT be installed on a Windows domain controller. The SAP-specific users, such as <sid>adm or SAPService <sid>, SHOULD be secured. After installation, the user <db><sid> SHOULD be locked.

The user SAPService <sid> SHOULD NOT have any interactive login rights. With respect to these authorisations, the system resources associated with the SAP ERP system (such as files, processes, and shared memory) SHOULD be protected.

Appropriate settings SHOULD be used to secure the specific authorisations of the users Guest, System, SAP system users = <sapsid>adm, SAPService<SAPSID> and Database users = <database-specific users>, as well as user groups created by the SAP ERP system.

APP.4.2.A17 Implementation of Security Requirements for the Unix Operating System (S)

Access authorisations SHOULD be defined for the SAP ERP system directories in Unix. The passwords of the system-specific users <sid>adm and <db><sid> SHOULD also be changed. After installation, the user <db><sid> SHOULD be locked.

APP.4.2.A18 Disabling Insecure Communications (S)

Communications with and among SAP ERP systems SHOULD be secured with SNC. If the database and the SAP application server are operated on different systems, the database connection SHOULD be encrypted appropriately. The internal services of the SAP application server SHOULD ONLY communicate with each other using TLS.

APP.4.2.A19 Definition of Security Policies for Users (S)

Specific security policies for passwords and login restrictions SHOULD be created for specific users and user groups. For example, users with critical authorisations SHOULD be protected by strong password rules (SECPOL transaction). Security policies SHOULD be correctly assigned to users and checked regularly.

APP.4.2.A20 Secure SAP GUI Settings (S)

SAP GUI SHOULD be installed on all clients and updated regularly. SAP GUI ACLs SHOULD also be activated and appropriate administration rules distributed and activated.

APP.4.2.A22 Protection of the Spool in the SAP ERP System [Developer] (S)

It SHOULD be ensured that data from sequential data processing such as spool or print can only be accessed to a limited extent. Unauthorised users SHOULD also be prevented from accessing the TemSe data store used by the SAP spool system. The authorisations granted SHOULD be checked regularly.

APP.4.2.A23 Protection of SAP Background Processing [Developer] (S)

SAP background processing SHOULD be protected against unauthorised access. For batch jobs, various system user IDs SHOULD be defined and created according to their functional areas. Dialogue users SHOULD NEVER be authorised for this purpose.

APP.4.2.A24 Activation and Protection of the Internet Communication Framework (S)

It SHOULD be ensured that only necessary ICF services are activated. All ICF services that are under an ICF object SHOULD only be activated individually. Authorisations SHOULD be assigned restrictively. Communications SHOULD be encrypted.

APP.4.2.A25 Secure Configuration of the SAP Web Dispatcher (S)

The SAP Web Dispatcher SHOULD not be the first entry point from the Internet into an SAP ERP system. The SAP Web Dispatcher SHOULD always be up to date. It SHOULD be configured securely.

APP.4.2.A26 Protection of Customers' Own Code in the SAP ERP System (S)

A custom code management process SHOULD be defined so that a customer’s own code is removed if it can be replaced by standard SAP code or is no longer used. The requirements from the guideline for the development of ABAP programs SHOULD also be taken into account.

APP.4.2.A27 Auditing the SAP ERP System [Department] (S)

To ensure that all internal and external guidelines and requirements are being met, all SAP ERP systems SHOULD be audited regularly. The Security Optimization Service in SAP Solution Manager SHOULD be used for this purpose. The results of audits SHOULD be evaluated and documented.

APP.4.2.A28 Creation of a Contingency Concept [BCM Officer] (S)

A contingency concept SHOULD be created and followed for SAP ERP systems. It SHOULD secure business activities and meet the requirements of crisis management or business continuity management. The following points SHOULD be described and defined in the contingency concept:

  • Incident detection and response
  • Data backup and recovery
  • Business continuity management

The contingency concept SHOULD be updated at regular intervals.

APP.4.2.A29 Setting Up Emergency Users (S)

User IDs SHOULD be created for emergency users. The IDs and authorisations that have been set up SHOULD be strictly controlled and precisely documented. In addition, all activities performed by emergency users SHOULD be logged.

APP.4.2.A30 Implementation of Continuous Monitoring of Security Settings (S)

The correctness of all SAP ERP system security settings SHOULD be constantly monitored. The proper application of all patches and updates SHOULD also be monitored. SAP monitoring SHOULD be integrated into an organisation’s general system monitoring.

APP.4.2.A31 Configuration of SAP Single Sign-On (S)

If multiple SAP ERP systems exist, users SHOULD access the systems with SAP Single Sign-On (SAP SSO). The SAP ERP systems that will be included in the SSO mechanism SHOULD be determined in the planning phase. SSO SHOULD be configured and operated securely.

APP.4.2.A32 Real-Time Detection and Alerts for Irregular Processes (H)

The most important security recording functions in SAP ERP systems, such as the security audit log or system log, SHOULD be continuously monitored. An employee in charge SHOULD be automatically alerted in the event of suspicious transactions. To analyse SAP-specific security incidents and differentiate false reports from actual security incidents, employees SHOULD either be trained or third-party services should be used.

1.1 Referenzen

1.2 Identifizierte Anforderungen

1.3 Zugehörige Regulierungen

2. Identifizierte Anforderungen

Anforderungen
Quelle Anforderung

3. Zugehörige Regulierungen

Regulierungen
Quelle Regulierung

Verknüpfte Vorgänge