Säkerhet av affärssystem

Säkerheten för ERP-system innebär tillämpning av en lång rad åtgärder för att skydda ERP- system från obehörig åtkomst till systemet, samt för att säkerställa tillgängligheten och integriteten hos systemdata. Ett ERP-system är ett datorprogram utformat för att kombinera all information som behövs för en effektiv ledning av ett företag, inklusive sådana aspekter av verksamheten som produktion, supply chain management, redovisning, lager, transport, personal och kundservice. De mest populära affärssystemen är SAP , Oracle E-Business Suite , Microsoft Dynamics . Dessutom är 1C: Enterprise populärt i Ryssland .

Översikt

Kärnan i varje stort företag är ett affärssystem ; den är värd för alla affärskritiska processer, från inköp, betalning och leverans till personalhantering, produkthantering och finansiell planering. All information som lagras i affärssystem är av yttersta vikt, och all obehörig åtkomst till den kan medföra stora förluster fram till affärsstopp. [1] Det är viktigt att göra en omfattande säkerhetsbedömning av ERP-systemet, kontrollera ERP-servrarna för sårbarheter i programvaran, konfigurationsfel, behörighetskonflikter, överensstämmelse med gällande standarder och rekommendationer, inklusive tillverkarens rekommendationer. [ett]

Orsaker till sårbarhet i ERP-system

Svårighet

ERP-systemens komplexitet leder till säkerhetssårbarheter. ERP-system behandlar ett stort antal olika transaktioner och implementerar komplexa mekanismer som ger olika åtkomstnivåer för olika användare. Till exempel, i SAP R/3 finns det hundratals auktoriseringsobjekt som tillåter olika användare att utföra olika åtgärder i systemet. I en medelstor organisation kan det finnas ett hundratal typer av transaktioner, varje transaktion kräver vanligtvis minst två auktoriseringsobjekt. Om ett företag har 200 användare, så finns det cirka 800 000 (100*2*20*200) sätt att konfigurera affärssystemets säkerhetsinställningar. I takt med att komplexiteten ökar ökar också risken för fel och auktoritetskonflikter. [2]

Specificitet

Sårbarheter hittas varje månad i populära operativsystem och applikationer, eftersom de är under konstant syn av hackare. Som ett resultat blir populära applikationer säkrare. Interna affärsapplikationer är stängda för nyfikna ögon, och detta leder till illusionen av "säkert eftersom det är hemligt." På grund av detta finns triviala och extremt farliga säkerhetsbrister i specifika affärsapplikationer som sällan finns i populära produkter. [3]

Brist på kvalificerade specialister

De flesta ERP-utbildningsprogram är utformade för att lära dig hur du använder systemets kapacitet och har lite fokus på ERP-säkerhet och revision. [2] I de flesta företag är förståelsen för säkerhetshot mot affärssystem i bästa fall ytlig. [4] Många företag uppmärksammar inte ERP-systemets säkerhet tillräckligt. Implementeringskonsulter är vanligtvis bara angelägna om att implementera systemet i tid och inom budget. Säkerhetsproblem anses vara sekundära. På grund av detta är säkerheten i systemet svag, och identifiering och korrigering av säkerhetsproblem är ett svårt och dyrt uppdrag. [2]

Brist på verktyg för säkerhetsgranskning

De flesta av verktygen som tillhandahålls i ERP-paket ger inte möjlighet att effektivt granska säkerheten i ett system. På grund av detta görs ERP-systemsäkerhetsrevision vanligtvis manuellt. En manuell revision är en komplex och lång process som är lätt att göra misstag. [2]

Massor av finjusteringar

I standardsysteminställningarna finns tusentals parametrar och finjusteringar, inklusive differentiering av rättigheter till olika objekt, såsom transaktioner och tabeller. I alla dessa inställningar är uppgiften att säkerställa säkerheten för ens ett system inte en lätt uppgift. Dessutom är de flesta inställningarna i affärssystemet på något sätt skräddarsydda för kunden, som ett resultat finns det inte två identiska affärssystem. Dessutom utvecklas deras egna program, vars säkerhet också bör beaktas i en övergripande bedömning. [4] Av denna anledning är det svårt att utveckla en enhetlig metod eller metod för att genomföra säkerhetsrevisioner.

Säkerhetsproblem i affärssystem

Säkerhetsproblem i ett affärssystem kan uppstå på olika nivåer. [5]

Nätverkslager

Möjlighet att avlyssna och modifiera trafik

Under 2011 analyserade Sensepost DIAG-protokollet som används av SAP ERP för att överföra data mellan en klient och en SAP-server. Som ett resultat har två verktyg publicerats som gör det möjligt att fullständigt avlyssna, dekryptera och modifiera klient-serverförfrågningar som innehåller känslig information, vilket öppnar vägen för olika man-in-the-middle- attacker . Det andra verktyget fungerar som en proxy och är utformat mer för att hitta nya sårbarheter, så att du kan ändra klient- och serverförfrågningar och leta efter nya sårbarheter. [6] [7]

SAP ERP-systemet har ett Telnet- administrationsalternativ som inte krypterar lösenord. [åtta]

Sårbarheter i kryptering eller autentiseringsprotokoll

Sårbarheter i nätverksprotokoll som RFC-protokollet i SAP ERP och Oracle Net i Oracle e-Business Suite. SAP ERP använder RFC (Remote Function Call) för att kommunicera mellan två system via TCP/IP. Ett RFC-anrop är en funktion som kan anropa och exekvera en funktionsmodul som finns på ett annat system. ABAP-språket, som används för att skriva affärsapplikationer i SAP, har funktioner för att ringa RFC-samtal. Flera allvarliga sårbarheter hittades i SAP RFC Library versioner 6.x och 7.x [9] :

OS-nivå

Sårbarheter i OS-programvaran

Svaga OS-lösenord

Osäkra OS-inställningar

DBMS-sårbarheter [10]

Varje affärssystem innehåller många databaser. Därför är ett av ERP-säkerhetsproblemen sårbarheter i DBMS-programvaran.

Buffertspill är en attack som bygger på att programmet skriver data till minnet utanför den buffert som tilldelats dem. Detta kan tillåta en angripare att ladda ner och exekvera godtycklig maskinkod på uppdrag av programmet och med rättigheterna för kontot som det körs under.

formatsträng är en typ av sårbarhet som tillåter exekvering av skadlig kod. Problemet kommer från att använda ofiltrerad användarinmatning som en formatsträng i vissa C-formateringsfunktioner, som printf() . En angripare kan använda formatspecifikationerna %s eller %n för att skriva godtyckliga data till en godtycklig minnesplats.

SQL-injektion  är ett av de vanligaste sätten att hacka webbplatser och program som fungerar med databaser, baserat på injicering av godtycklig SQL-kod i en fråga. SQL-injektion, beroende på vilken typ av DBMS som används och villkoren för injektion, kan tillåta en angripare att köra en godtycklig fråga till databasen (till exempel läsa innehållet i alla tabeller, ta bort, ändra eller lägga till data), få ​​möjligheten att läsa och/eller skriva lokala filer och utföra godtyckliga kommandon på den attackerade servern. En attack av typen SQL-injektion kan vara möjlig på grund av felaktig bearbetning av indata som används i SQL-frågor.

I SQL är en markör ett nummer som pekar på en plats i minnet där databasservern lagrar data om en fråga, frågevariabler och behörigheter. Under normala omständigheter skapas en markör och existerar tills den explicit förstörs. Om ett fel uppstår under exekveringen av någon SQL-procedur, kanske markören inte förstörs. En angripare kan använda den här markören för att göra en begäran med rättigheterna för denna misslyckade procedur. [elva]

Applikationssårbarheter

ERP-system överför mer och mer funktionalitet till nivån av webbapplikationer, där det finns ett stort antal sårbarheter:

Rollbaserad åtkomstkontroll

I de flesta moderna affärssystem används RBAC-modellen (Role-Based Access Control, rollbaserad åtkomstkontroll, för att tillåta användare att endast utföra strikt definierade transaktioner och bara komma åt vissa affärsobjekt). [12] I RBAC-modellen fattas beslut om att bevilja åtkomst till en användare utifrån de funktioner som användaren utför i organisationen. Dessa funktioner kallas roller. Roller i en bank är till exempel en kontoförare, en revisor, en låneansvarig, etc. En roll kan förstås som en uppsättning transaktioner som en användare eller grupp av användare kan göra i en organisation. En transaktion är en procedur för att transformera data i systemet, plus data som denna procedur kan utföras på. Varje roll motsvarar en uppsättning användare som tillhör denna roll. En användare kan ha flera roller. Roller kan vara hierarkiska, till exempel är rollen som "kassör" också rollen som "anställd". En av fördelarna med RBAC-modellen är den enkla administrationen. När roller väl är etablerade i systemet ändras sällan transaktionerna som motsvarar varje roll. Administratören behöver bara lägga till eller ta bort användare från roller. När en anställd går med i organisationen ger administratören honom eller henne medlemskap i en eller flera roller. När en anställd lämnar organisationen tar administratören bort dem från alla roller de var i. [13]

Befogenheter

Separation of powers (Separation / Segregation of Duties, SoD) - konceptet att en användare inte kan genomföra en transaktion utan hjälp av andra användare. Till exempel kan en användare ensam inte lägga till en ny leverantör, utfärda en faktura eller betala en leverantör. Detta minskar risken för fel eller bedrägerier. [14] Användningen av SoD är ett viktigt, men inte tillräckligt [3] villkor för säkerheten i ett affärssystem. SoD-policy kan implementeras med hjälp av RBAC-mekanismer. För detta introduceras begreppet ömsesidigt uteslutande roller. För att till exempel betala en leverantör måste en användare initiera betalningen och en annan måste bekräfta den. I detta fall är betalningsinitiering och bekräftelse ömsesidigt uteslutande roller. Maktseparationen kan vara statisk eller dynamisk. I Static SOD kan en användare inte tillhöra två ömsesidigt uteslutande roller. Med dynamisk maktdelning (Dynamic SOD) kan en användare tillhöra två ömsesidigt uteslutande roller, men kan inte utföra dem inom samma transaktion. Fördelen med SSOD är enkelheten, DSOD är stor flexibilitet. [15] Vanligtvis beskrivs maktdelningen av SoD-matrisen. Matrisens X- och Y-axlar representerar rollerna i systemet. Om två roller utesluter varandra, sätts en flagga i skärningspunkten mellan motsvarande kolumn och rad.

ERP Security Scanners

ERP System Security Scanner är ett datorprogram utformat för att söka efter sårbarheter i ERP-system. Skannern analyserar konfigurationen av ERP-systemet för osäker autentisering, åtkomstkontroll, krypteringsinställningar, kontrollerar om de senaste versionerna av komponenter är installerade, söker efter systemkomponenter som är kända för att vara osäkra. Dessutom verifierar skannern systeminställningarna mot tillverkarens rekommendationer och ISACAs granskningsprocedurer . Resultatet av säkerhetsskannern är en rapport som presenterar de upptäckta sårbarheterna och graden av kritik hos var och en av dem. [1] Anmärkningsvärda skannrar:

Anteckningar

  1. 1 2 3 http://www.dsec.ru/products/erpscan Arkiverad 10 oktober 2012 på Wayback Machine Digital säkerhet
  2. 1 2 3 4 Arkiverad kopia (länk ej tillgänglig) . Hämtad 21 november 2012. Arkiverad från originalet 4 mars 2016.   Säkerhetsproblem i ERP
  3. 1 2 http://www.dsec.ru/press_releases/pdf/business.pdf  (otillgänglig länk)
  4. 1 2 SAP-säkerhet i siffror / Digital säkerhetsblogg / Habrahabr . Hämtad 19 november 2012. Arkiverad från originalet 19 oktober 2012.
  5. http://dsec.ru/press_releases/infosec2009/infosec2009_polyakov_erp.pdf  (otillgänglig länk) ERP-säkerhet
  6. Digital säkerhet varnar för nya SAP DIAG-protokollhot - ERPScan SAP Security Scanner (länk ej tillgänglig) . Hämtad 11 november 2012. Arkiverad från originalet 16 april 2013. 
  7. SensePost - SapCap Arkiverad 29 oktober 2012.
  8. Administrera SAP J2EE Engine med Telnet (SAP Library - SAP NetWeaver Technical Operations Manual)
  9. Xakep Online > Flera sårbarheter i SAP RFC-biblioteket
  10. Alexander Polyakov (2009). Oracle-säkerhet genom en revisors ögon. Anfall och försvar. DMK Tryck. ISBN 978-5-94074-517-4
  11. Arkiverad kopia (länk ej tillgänglig) . Hämtad 21 november 2012. Arkiverad från originalet 19 juni 2012.   Markören snurrar
  12. Arkiverad kopia . Hämtad 22 november 2012. Arkiverad från originalet 11 juni 2014.
  13. http://csrc.nist.gov/rbac/ferraiolo-kuhn-92.pdf Arkiverad 18 oktober 2011 på Wayback Machine Roll-Based Access Controls
  14. ComplianceTutorial.com - Hur man skapar segregering av arbetsuppgifter Arkiverad 11 januari 2013.
  15. Enkel sökning (inte tillgänglig länk) . Hämtad 22 november 2012. Arkiverad från originalet 26 februari 2015.