Slik reviderer du Linux med Auditd Tool og Ausearch

Som systemadministratorer, støttegruppepersonell eller bare som et mål for å opprettholde de beste kontrollnivåene for både serveren og klientdatamaskinene i organisasjonen, reviderer den hele tiden operativsystemet for å være et skritt foran feilene som kan oppstå og dermed bevare systemets integritet og tilgjengelighet, så vel som dets roller, tjenester og elementer som er lagret i det.

Hva er en Linux -revisjonNår vi snakker om et revisjonssystem i et Linux -miljø, snakker vi om en mekanisme som gir en måte å spore informasjon som er relevant for sikkerhet i nevnte operativsystem.

En revisjon består av en undersøkelse av de forskjellige delene som utgjør dette systemet spesielt, med en kritisk evaluering, og tester om nødvendig innen ulike interesseområder.

Basert på dette konseptet, vil Solvetic i dag analysere to av de beste verktøyene for revisjonsprosessen i Linux: auditd og ausearch.

Det er viktig å presisere at revisjonen ikke gir ekstra sikkerhet til operativsystemet, men kan brukes til å oppdage brudd på sikkerhetspolicyene som brukes i systemet og dermed ha tilstrekkelig kunnskap om disse.

RevidertAuditd er Linux -revisjonssystemet som er avhengig av forhåndskonfigurerte regler for å generere loggoppføringer og dermed lagre så mye informasjon om hendelsene som skjer i systemet som mulig.

Denne informasjonen som samles inn er avgjørende for misjonskritiske miljøer for å fastslå brudd på sikkerhetspolitikken og handlingene de tok, og dermed la alle sikkerhetshandlinger og nye retningslinjer som er opprettet i organisasjonen fokusere på å forbedre hele driftsmiljøet.

Auditd kan registrere følgende loggfiler

  • Dato, tid, type og resultat av en hendelse.
  • Emne- og objektfølsomhetsetiketter.
  • Forening av en hendelse med identiteten til brukeren som utførte hendelsen.
  • Distribuer alle modifikasjoner for revisjonskonfigurasjon og forsøk på å få tilgang til revisjonsloggfiler.
  • Lagre all bruk av autentiseringsmekanismer, for eksempel SSH, Kerberos og andre.
  • Det er mulig å bytte til en hvilken som helst klarert database, for eksempel / etc / passwd.
  • Registrerer ethvert forsøk på å importere eller eksportere informasjon til eller fra systemet.
  • Inkluderer eller ekskluderer hendelser basert på brukeridentitet, emne- og objektetiketter og andre attributter.

KravPå samme måte er bruk av revisjonssystemet også et nødvendig krav for en rekke sertifiseringer knyttet til sikkerhet hvis det er påkrevd på et tidspunkt. Tilsynet er utformet for å oppfylle eller overgå kravene i følgende verdensomspennende retningslinjer for samsvar eller sertifiseringer:

  • Kontrollert tilgangsbeskyttelsesprofil (CAPP)
  • Merket sikkerhetsbeskyttelsesprofil (LSPP)
  • Ruleset Base Access Control (RSBAC)
  • National Industrial Security Program Operating Manual (NISPOM)
  • Federal Information Security Management Act (FISMA)
  • Betalingskortindustri - Datasikkerhetsstandard (PCI -DSS)
  • Sikkerhetstekniske implementeringsveiledninger (STIG)

Ytterligere fordelerNoen av de ekstra fordelene ved å bruke Linux -revisjonssystemet er som følger:

  • Det krever ikke eksterne programmer eller prosesser for å kjøre på et system som gjør det selvforsynt.
  • Det er svært konfigurerbart, og det er derfor det lar oss se hvilken som helst drift av systemet vi ønsker.
  • Det hjelper til med å oppdage eller analysere potensielle kompromisser på sikkerhetsnivå i et system.
  • Det er i stand til å fungere som et uavhengig deteksjonssystem.
  • Den kan fungere med system for inntrengingsdeteksjon for å muliggjøre inntrengingsdeteksjon.
  • Det er et viktig verktøy for rettsmedisinsk etterforskning.

Selv om noen termer kan virke merkelige, er dette utvilsomt et av de beste alternativene hvis vi er opptatt av sikkerhet.

1. Linux auditd revisjonssystemkomponenter


Revisjonssystemet har to grunnleggende komponenter som er:
  • Brukerprogrammer og verktøy eller verktøy
  • Systemanropsbehandling på kernnivå, som godtar systemanrop fra brukerplassapplikasjoner og sender dem gjennom tre typer filtre: bruker, oppgave, avslutt eller ekskluder.
Den viktigste delen er brukerrevisjon -demonen (auditd) som samler informasjonen basert på forhåndskonfigurerte regler, fra kjernen og genererer oppføringer i en loggfil: standardloggen er:
 /var/log/audit/audit.log
I tillegg til dette er audispd en hendelsesmultiplexer som samhandler med auditd og sender hendelser til andre programmer som ønsker å utføre hendelsesbehandling i sanntid.

Det er flere brukerplassverktøy for å administrere og hente informasjon fra revisjonssystemet som er:

AuditctlDet er et verktøy for å kontrollere kjerneovervåkingssystemet.
AusearchDet er et verktøy for å søke i revisjonsloggfiler etter bestemte hendelser.
AureportDet er et verktøy for å lage rapporter om registrerte hendelser.

For denne analysen vil vi bruke CentOS 7

2. Installer og konfigurer auditd på CentOS 7


Det første trinnet er å sørge for at revisjonsverktøyet er installert på systemet ved hjelp av rpm -kommandoen og grep -verktøyet slik:
 rpm -qa | grep revisjon
Resultatet blir:

Hvis vi ikke har revisjonspakkene, må vi utføre følgende kommando som rotbrukere:

 yum installere revisjon
Når vi er installert må vi konfigurere om auditd er aktivert, for dette vil vi utføre en av følgende kommandoer i rekkefølgen:

På CentOS eller RHEL 7

 systemctl er aktivert auditdsystemctl status auditdsystemctl start auditd (starter tjenesten) systemctl aktiverer auditd (aktiverer tjenesten)

På CentOS eller RHEL 6

 service auditd statusservice auditd start (starter tjenesten) chkconfig auditd on (aktiverer tjenesten)

Vi kan se at statusen er aktiv.

3. Auditd -konfigurasjon


For å konfigurere auditd må vi bruke hovedkonfigurasjonsfilen /etc/audit/auditd.conf siden det vil være mulig å kontrollere hvordan tjenesten kjøres, for eksempel å definere plasseringen av loggfilen, maksimalt antall loggfiler, postformatet , hvordan du håndterer fulle disker, opptaksrotasjon og flere alternativer.
For dette bruker vi den foretrukne redaktøren:
 nano /etc/audit/auditd.conf
Der vil vi se følgende:

Vi kan se at hver linje lar oss angi en bestemt handling, og vi kan endre den etter behov.

4. Revisjonsregler i Linux


Som nevnt ovenfor bruker auditd regler for å samle inn spesifikk informasjon fra kjernen. Disse reglene er i utgangspunktet auditctl -alternativer som kan forhåndskonfigureres i filen /etc/audit/rules.d/audit.rules.

Det er tre typer revisjonsregler som kan defineres som er:

KontrollreglerDisse tillater endring av oppførselen til revisjonssystemet og noen av dets innstillinger.
FilsystemreglerDisse reglene tillater revisjon av tilgang til en bestemt fil eller katalog.
SystemanropsreglerDisse tillater registrering av systemanrop foretatt av ethvert program.

For å få tilgang til disse reglene går vi til følgende rute ved hjelp av ønsket editor:

 nano /etc/audit/rules.d/audit.rules
Vi vil se følgende:

I denne filen, i den første delen må vi legge til kontrollregler. Deretter legger du til revisjonsreglene i den midtre delen, og til slutt inneholder den siste delen uforanderlige parametere som også er kontrollregler.

Noen eksempler på disse reglene er:

Fjern alle tidligere regler

 -D

Definer bufferstørrelse

 -b 3074

Svikt genererer et panikkalternativ

 -f 4

Lag maksimalt 120 revisjonsmeldinger per sekund

 -r 120

Et eksempel på en regel er som følger:

Der har vi følgende:

Brukes til å spesifisere en fil eller katalog som skal vises.

 -w

TillatelserDe er tillatelsene til å bli registrert, r - for lesetilgang, w - for skrivetilgang, x - for å utføre tilgang og - for endring av fil eller regiattributt.

 -s

Identifiser sett med reglerLar deg angi en valgfri kjede for å identifisere hvilken regel (eller et sett med regler) som opprettet en bestemt registeroppføring.

 -k

Når reglene er definert, bruker vi tastekombinasjonen Ctrl + O for å lagre filen og Ctrl + X for å gå ut av den. Vi vil legge til disse reglene, ved å ta reglene i eksemplet ved å utføre følgende linjer som rot:

 auditctl -w / etc / passwd -p wa -k passwd_changesauditctl -w / etc / group -p wa -k group_changesauditctl -w / etc / sudoers -p wa -k sudoers_changes
For å se gjeldende regler utfører vi følgende:
 sudo auditctl -l

På denne måten blir auditd et verdifullt revisjonsverktøy i CentOS 7.

5. Ausearch Linux


Ausearch -verktøyet er designet for å tillate søk i revisjonsloggfiler etter bestemte hendelser basert på hendelser og forskjellige søkekriterier, for eksempel hendelsesidentifikator, nøkkelidentifikator, CPU -arkitektur, kommandonavn, vertsnavn, gruppenavn eller gruppe -ID.

Som standard ser ausearch ut i /var/log/audit/audit.log -filen. Du kan angi en annen fil ved å bruke kommandoen ausearch options -if filnavn. Å gi flere alternativer i en ausearch -kommando tilsvarer bruk av AND -operatøren.

For å bruke standardverdien og se gjeldende logger, vil vi utføre en av følgende kommandoer:

 cat /var/log/audit/audit.logcat /var/log/audit/audit.log | mindre

Som vi kan se, kan dataene som er representert her være forvirrende, og derfor bruker ausearch syntaks (opsjon) for å filtrere disse resultatene og få en visjon som er mye lettere å administrere.

Vi har alternativer som:

Kontroller utførelsen av prosessloggerDer kan vi bruke parameteren -p pluss PID for å oppnå et spesifikt resultat:

 ausearch -p 579

Kontrollerer revisjonsloggfilen for påloggingsforsøkI dette tilfellet må vi bruke parameteren -m for å identifisere spesifikke meldinger og -sv for å definere de vellykkede resultatene.

 ausearch -m USER_LOGIN -sv nr

Finn brukeraktivitet i Auditd -loggfilenFor dette resultatet bruker vi parameteren -ua pluss brukernavnet:

 ausearch -ua Solvetic

Finn endringer i brukere, grupper og rollerMed dette alternativet vil det være mulig å gå gjennom alle systemendringene som brukes med brukerkontoer, grupper og roller; Vi kan spesifisere flere typer meldinger atskilt med kommaer som følger:

 ausearch -m ADD_USER, DEL_USER, USER_CHAUTHTOK, ADD_GROUP, DEL_GROUP, CHGRP_ID, ROLE_ASSIGN, ROLE_REMOVE -i
Vi vil se følgende:

Se hjelp fra ausearchFor å se de forskjellige alternativene til dette verktøyet vil vi utføre følgende:

 mann ausearch

Så vi kan se de forskjellige alternativene når vi gjennomfører en fullstendig og effektiv revisjon i CentOS eller RedHat.

wave wave wave wave wave