Sei sicuro che il tuo sistema SAP non esponga servizi vulnerabili?
Hai mai verificato? Di default i servizi sono disattivi, ma durante l'installazione e configurazione (del sistema produttivo) spesso ne vengono attivati troppi, più di quelli che servono ed in alcuni casi sono vulnerabili, sai quali sono?
Cosa è il componente ICF Internet Communication Framework?
Come descritto nell'architettura sull'help SAP:
The (ICF) Internet Communication Framework (component BC-MID-ICF) is the middleware between the Internet Communication Manager (ICM, component BC-CST-IC) and the HTTP enabled ABAP applications. ICM communicates with the internet via HTTP and HTTPS protocols, while ICF communicates with the ABAP applications via their handler classes.
Come sono classificati i servizi?
Esistono alcuni servizi classificati come pubblici, alcuni come critici. Nel primo caso sono servizi, i quali se attivi, non richiedono l'autenticazione. Esistono alcuni casi dove sono necessari, ma altri dove devono essere disattivati (3397128 - SICF service /sap/public/info security concerns). Puoi inoltre, se necessario, definire delle whitelist (tabella HTTP_WHITELIST) "2223891 - How to configure HTTP_WHITELIST table for public services"
Esiste inoltre una lista di servizi considerata critica, quindi questi servizi devono essere disattivati (o comunque non devono essere attivi nel sistema di produzione, se esistono)
ICF Service /sap/bc/idoc_xml
ICF Service /sap/bc/bsp/sap/icf
ICF Service /sap/bc/bsp/sap/bsp_veri
ICF Service /sap/bc/gui/sap/its/CERTMAP
ICF Service /sap/bc/gui/sap/its/CERTREQ
ICF Service /sap/bc/bsp/sap/certmap
ICF Service /sap/bc/bsp/sap/certreq
ICF Service /sap/bc/webrfc
ICF Service /sap/bc/error
ICF Service /sap/bc/xrfc_test
ICF Service /sap/bc/xrfc
ICF Service /sap/bc/report
ICF Service /sap/bc/FormToRfc
ICF Service /sap/bc/echo
ICF Service /sap/bc/soap/rfc
ICF Service /sap/bc/srt/IDoc
e
/sap/bc/bsp/sap/bsp_model
/sap/bc/bsp/sap/htmlb_samples
/sap/bc/bsp/sap/it00
/sap/bc/bsp/sap/it01
/sap/bc/bsp/sap/it02
/sap/bc/bsp/sap/it03
/sap/bc/bsp/sap/it04
/sap/bc/bsp/sap/it05
/sap/bc/bsp/sap/itmvc2
/sap/bc/bsp/sap/itsm
/sap/bc/bsp/sap/sbspext_htmlb
/sap/bc/bsp/sap/sbspext_phtmlb
/sap/bc/bsp/sap/sbspext_table
/sap/bc/bsp/sap/sbspext_xhtmlb
/sap/bc/bsp/sap/system_private
/sap/bc/bsp/sap/system_public
Come vedere le statistiche di utilizzo?
Esistono sostanzialmente due modalità:
- tramite l'utilizzo del report RS_ICF_SERV_ADMIN_TASKS (vedi anche KBA 2430473 - How to know when a SICF service was last called or used)
- tramite il workload analysis (transazione ST03N)
- seleziona application serve e timeframe
- seleziona "Web statistics / WEB Server Statistics"
- vai nel tab "URL"
Come controllare se un servizio utilizza HTTPS o HTTP?
Esistono anche in questo caso diverse modalità:
- attraverso il parametro login/ticket_only_by_https (Valore 0 - HTTP, 1 - HTTPS)
- Dal settings del servizio stesso in transazione SICF (se SSL o meno). Se non il check box SSL non è attivo possono essere accettate sia chiamate HTTP sia HTTPS, se è solo SSL attivo vengono accettate sole chiamate HTTPS
- tramite verifica in tabella HTTPURLLOC (3288477 - How to maintain table HTTPURLLOC?)
- nel settaggio del singolo servizio (System Logon), questo settaggio è valido solo per logon interattivo
- tramite parametro icm/HTTP/redirect utilizzato per fare la redirezione del traffico HTTP verso HTTPS, a livello del componente (ICM) Internet Communication Manager
Cosa fare quindi?
- Disattiva tutti i servizi non necessari
- Assicurati di usare solo protocolli sicuri
- Limita l'accesso e valuta ulteriori protezioni ad esempio quella per il XSRF (Cross-site request forgery)