AGLEA SAP Security Blog

RFC_READ_TABLE Security

Scritto da Massimo Manara | Jul 19, 2022 10:00:00 PM

Lo sapevi che esiste una function "esposta" che permette di leggere i dati presenti in SAP dall'esterno?

 

Sei sicuro che nel tuo sistema sia tutto sotto controllo, per quanto riguarda questo aspetto?

Che cosa è la function SAP RFC_READ_TABLE?

Si tratta tecnicamente di un "Function Module" quindi un programma, che permette di essere richiamato dall'esterno.

 

Di fatto permette, semplificando, data una tabella, di esportarne il contenuto. Per chi già conosce SAP il nome stesso della function è esplicativo. RFC ovvero l'interfaccia proprietaria di SAP per lo scambio dei dati, READ, lettura, TABLE, tabella. Con S/4HANA ci sono diverse novità!

 

Ma quale potrebbe essere il rischio?

Abbiamo trattato l'argomento in diverse occasioni qui sul blog, ma anche nel nostro canale YouTube, qui un video dove puoi trovare un esempio concreto di utilizzo.

 

 

Non ti sei ancora iscritto al nostro canale YouTube (puoi farlo da qui sotto!)

 

Immagina di poter leggere i dati dei clienti, dati di fornitori, oppure dati del personale, se nel sistema SAP sono gestiti anche queste tipologie di dati. Ma più in generale, pur avendo qualche limite nella lettura dei dati, qualsiasi dato salvato in tabelle potrebbe essere recuperato. 

 

Questo potrebbe essere un problema serio di Data leakage ed un punto importante per quanto riguarda gli aspetti di Data Loss Prevention. 

 

Attenzione, in questo caso non significa che chiunque possa richiamare questa function ed esportare i dati da SAP. Bisogna essere in possesso di una utenza valida in SAP e delle necessarie autorizzazioni per la lettura delle tabelle (Autorizzazioni per la lettura delle tabelle in SAP) ma queste come sappiamo non sono presidiate in tutti i casi; quindi, è molto probabile che lo sfruttamento di questa function sia possibile e funzioni.

 

Qui trovi un articolo nel quale avevamo già accennato all'argomento "Come esportare dati da SAP?"

 

Ecco qui qualche ulteriore approfondimento:

 

Ma dove e come viene usata?

Questa function viene utilizzata dai prodotti SAP. Ad esempio, per scambiarsi informazioni tra i sistemi. Quindi non si tratta di una vulnerabilità nota o svista. Chiaramente la mancata configurazione corretta di questa funzionalità può portare ad avere una esposizione.

 

Inoltre, questa function, anche se non suggerito da SAP, viene spesso utilizzata da prodotti terzi sul mercato per leggere dati da SAP, in maniera lecita quindi. 

 

Cosa fare quindi per controllare l'accesso dall'esterno al sistema SAP?

Ecco qui quali sono i punti di controllo:

  • Verifica le autorizzazioni RFC affinché siano assegnate solo ad utenti che debbano correttamente averle
  • Verifica che siano attive le misure di protezione di chiamate RFC dall'esterno ad esempio tramite Unified Connectivity
  • Valuta l'attivazione del Security Audit Log per controllare gli eventi di lettura di queste function (Security Audit Log) vedi anche qui Come esportare dati da SAP?
  • Valuta l'attivazione delle whitelist di lettura delle tabelle tramite questa function