AUSEARCH(8) Utilitare de administrare a sistemului AUSEARCH(8) NUME ausearch - un instrument pentru interogarea jurnalelor demonului de audit SINOPSIS ausearch [opiuni] DESCRIERE ausearch este un instrument care poate interoga jurnalele demonului de audit pe baza evenimentelor, in funcie de diferite criterii de cautare. Utilitarul ausearch poate accepta i intrari de la intrarea standard, atata timp cat intrarea este reprezentata de datele brute din jurnal. Fiecare opiune de linie de comanda data formeaza o instruciune ,,I". De exemplu, cautarea cu -m i -ui inseamna returnarea evenimentelor care au atat tipul solicitat, cat i ID-ul utilizatorului dat. O excepie o constituie opiunile -m i -n; intr-o cautare sunt permise mai multe tipuri de inregistrari i noduri, care vor returna orice nod i inregistrare ce coincid. De asemenea, trebuie menionat ca fiecare excursie syscall din spaiul utilizatorului in nucleu i inapoi in spaiul utilizatorului are un ID de eveniment unic. Orice eveniment audiabil declanat in timpul acestei excursii are acelai ID, astfel incat acestea sa poata fi corelate. Diferite pari ale nucleului pot adauga inregistrari suplimentare. De exemplu, un eveniment de audit pe apelul de sistem ,,open" va determina nucleul sa emita i o inregistrare PATH cu numele fiierului. Utilitarul ausearch va prezenta toate inregistrarile care alcatuiesc un eveniment impreuna. Acest lucru ar putea insemna ca, chiar daca cautai un anumit tip de inregistrare, evenimentele rezultate pot conine inregistrari SYSCALL. De asemenea, reinei ca nu toate tipurile de inregistrari conin informaiile solicitate. De exemplu, o inregistrare PATH nu conine un nume de gazda sau un loginuid. OPIUNI -a, --event id-eveniment-audit Cauta un eveniment pe baza ID-ului de eveniment id-eveniment-audit dat. Mesajele incep intotdeauna cu ceva precum msg=audit(1116360555.329:2401771). ID-ul evenimentului este numarul care urmeaza dupa ,,:". Toate evenimentele de audit inregistrate din apelul de sistem al unei aplicaii au acelai ID de eveniment de audit. Un al doilea apel de sistem efectuat de aceeai aplicaie va avea un ID de eveniment diferit. In acest fel, ele sunt unice. --arch CPU Cauta evenimente pe baza unei arhitecturi CPU specifice. Daca nu cunoatei arhitectura mainii dvs., dar dorii sa utilizai tabelul syscall pe 32 de bii i maina dvs. accepta 32 de bii, putei utiliza, de asemenea, b32 pentru arhitectura. Acelai lucru se aplica i tabelului syscall pe 64 de bii, putei utiliza b64. Arhitectura mainii dvs. poate fi gasita executand comanda ,,uname -m". -c, --comm nume-comun Cauta un eveniment pe baza numelui nume-comun dat. Numele comun este numele executabilului din structura sarcinii. --debug Scrie evenimentele incorect formatate care sunt omise la ieirea de erori standard. --checkpoint fiier-punct_verificare Verifica ieirea intre invocarile succesive ale ausearch, astfel incat numai evenimentele care nu au fost afiate anterior sa fie afiate in invocarile ulterioare. Un eveniment auditd este alcatuit din una sau mai multe inregistrari. La procesarea evenimentelor, ausearch definete evenimentele ca fiind complete sau incomplete. Un eveniment complet este fie un eveniment cu o singura inregistrare, fie unul al carui moment de producere a avut loc cu 2 secunde in urma faa de evenimentul procesat in prezent. Un punct de verificare se realizeaza prin inregistrarea ultimei ieiri a evenimentului finalizat impreuna cu numarul dispozitivului i nodul-i al fiierului in care a aparut ultimul eveniment finalizat in fiier-punct_verificare. La o invocare ulterioara, ausearch va incarca aceste date de punct de verificare i, pe masura ce proceseaza fiierele jurnal, va elimina toate evenimentele finalizate pana cand va gasi unul care corespunde punctului de verificare. In acest moment, va incepe sa afieze evenimentele finalizate. Daca fiierul sau ultimul eveniment verificat nu sunt gasite, va aparea una dintre numeroasele erori i ausearch se va inchide. Consultai EXIT STATUS pentru detalii. --eoe-timeout secunde Stabilete timpul de expirare pentru analizarea sfaritului evenimentului. Pentru detalii, consultai end_of_event_timeout in auditd.conf(5). Reinei ca stabilirea acestei valori va suprascrie orice valoare configurata gasita in ,,/etc/auditd/auditd.conf". -e, --exit cod-ieire_sau_errno Cauta un eveniment pe baza apelului de sistem dat cod de ieire sau errno. --escape opiune Aceasta opiune determina daca ieirea este eludapata pentru a face coninutul mai sigur pentru anumite utilizari. Opiunile sunt raw , tty , shell i shell_quote. Fiecare mod include caracterele modului precedent i eludeaza mai multe caractere. Adica shell include toate caracterele eludate de tty i adauga altele. tty este opiunea implicita. --extra-keys Cand modul format este csv, aceasta opiune va adauga o coloana finala cu informaii cheie, daca acestea exista pentru eveniment. Acest lucru se va intampla numai in cazul inregistrarilor SYSCALL care au fost rezultatul declanarii unei reguli de audit care definete o cheie. --extra-labels Cand modul format este csv, aceasta opiune va adauga coloane cu informaii despre etichetele subiectului i obiectului, daca acestea exista. --extra-obj2 Cand modul format este csv, aceasta opiune va adauga coloane cu informaii despre un al doilea obiect, daca acesta exista. Este rar ca un al doilea obiect sa faca parte dintr-un inregistrare. Cateva exemple sunt atunci cand un fiier este redenumit sau cand un dispozitiv este montat pe o ruta. --extra-time Cand modul format este csv, aceasta opiune va adauga coloane cu informaii despre timpul defalcat pentru a facilita crearea de subseturi. -f, --file nume-fiier Cauta un eveniment pe baza fiierului nume-fiier dat. Argumentul va corespunde atat fiierelor normale, cat i soclurilor af_unix. --format opiune Evenimentele care corespund criteriilor de cautare sunt formatate utilizand aceasta opiune. Formatele acceptate sunt: raw, default, interpret, csv i text. Opiunea raw este descrisa in seciunea dedicata opiunii liniei de comanda --raw. Opiunea default este cea pe care o obinei atunci cand nu sunt transmise opiuni de formatare. Aceasta include o linie ca separator vizual care indica marca temporala, urmata de inregistrarile evenimentului. Opiunea interpret este explicata in seciunea dedicata opiunii liniei de comanda -i. Opiunea csv afieaza rezultatele cautarii ca un eveniment normalizat in format CSV (comma separated value - valori separate prin virgule), potrivit pentru importul in programe analitice. Opiunea text transforma evenimentul intr-o propoziie in limba engleza, mai uor de ineles decat alte opiuni, dar cu preul pierderii detaliilor. In majoritatea cazurilor, acest lucru este perfect acceptabil, deoarece evenimentul original pastreaza toate informaiile originale. -ga, --gid-all id-grup Cauta un eveniment cu ID-ul grupului efectiv sau cu ID-ul grupului care corespunde cu ID-ul grupului dat. -ge, --gid-effective id-grup-efectiv Cautai un eveniment cu ID-ul id-grup-efectiv sau numele grupului dat. -gi, --gid id-grup Cauta un eveniment cu ID-ul de grup sau numele de grup dat. -h, --help Ajutor -hn, --host nume-gazda Cauta un eveniment cu numele de gazda nume gazda dat. Numele gazdei poate fi fie un nume de gazda, un nume de domeniu complet calificat sau o adresa de reea numerica. Nu se incearca rezolvarea adreselor numerice in nume de domeniu sau alias. Aceasta cautare coreleaza de obicei cu campul <> (adresa) sau <> (gazda) al evenimentelor de audit. A se vedea i comanda ,,--node", care cauta in campul <> (nod). -i, --interpret Interpreteaza entitaile numerice in text. De exemplu, uid este convertit in numele contului. Daca jurnalele de audit nu sunt imbogaite, conversia se face utilizand resursele curente ale mainii pe care se executa cautarea. Daca ai redenumit conturile sau nu avei aceleai conturi pe maina dvs., putei obine rezultate inelatoare. Daca jurnalele sunt imbogaite, se utilizeaza datele suplimentare pentru a efectua conversia. Acest lucru permite raportarea precisa a jurnalelor, chiar i atunci cand se executa pe o maina diferita de cea de unde provin jurnalele originale. -if, --input nume-fiier | director Utilizeaza fiierul sau directorul specificat in locul jurnalelor. Acest lucru faciliteaza analiza in cazul in care jurnalele au fost mutate pe un alt calculator sau doar o parte din jurnal a fost salvata. Lungimea rutei este limitata la 4064 octei. --input-logs Utilizeaza locaia fiierului jurnal din auditd.conf ca intrare pentru cautare. Acest lucru este necesar daca utilizai ausearch dintr-o sarcina cron. --just-one Oprete dupa emiterea primului eveniment care corespunde criteriilor de cautare. -k, --key ir-cheie Cauta un eveniment pe baza irului ir-cheie dat. -l, --line-buffered Golete ieirea pe fiecare linie. Foarte util atunci cand ieirea standard este conectata la o conducta i strategia implicita de stocare in bloc in memoria tampon nu este de dorit. Poate afecta performana. -m, --message tip-mesaj | lista-tip-mesaj-separate-prin-virgule Cauta un eveniment care corespunde tipului de mesaj tip-mesaj; (tipurile de mesaje sunt cunoscute i sub denumirea de tipuri de inregistrari). De asemenea, putei introduce o lista de tipuri de mesaje separate prin virgule sau mai multe tipuri de mesaje individuale, fiecare cu propria opiune -m. Exista un tip de mesaj ALL care nu exista in jurnalele reale. Acesta va permite sa obinei toate mesajele din sistem. Lista tipurilor de mesaje valide este lunga. Programul va afia lista ori de cate ori nu se transmite niciun tip de mesaj cu acest parametru. Tipul de mesaj poate fi text sau numeric. Daca introducei o lista, aceasta poate conine numai virgule i fara spaii intre elemente. -n, --node Cauta evenimente provenite de la o anumita maina. Sunt permise mai multe noduri, iar daca vreunul dintre noduri se potrivete, evenimentul este identificat. Aceasta cautare utilizeaza campul nod din evenimentele de audit. A se vedea i comanda ,,--host", care cauta evenimente legate de informaiile despre gazda in traseul de audit. -o, --object ir-context_SE-Linux Cauta evenimentul cu ir-context_SE-Linux (obiect) care corespunde irului. -p, --pid id-proces Cauta un eveniment care corespunde ID-ului de proces id-proces dat. -pp, --ppid id-proces-parinte Cauta un eveniment care corespunde ID-ului procesului parinte id-proces-parinte dat. -r, --raw Ieirea este complet neformatata. Acest lucru este util pentru extragerea inregistrarilor intr-un fiier care poate fi interpretat in continuare de instrumentele de audit sau atunci cand se transfera catre alte instrumente de audit. -sc, --syscall nume_sau_valoare-syscall Cauta un eveniment care corespunde cu syscall dat. Putei introduce fie valoarea numerica syscall, fie numele syscall. Daca introducei numele syscall, se va utiliza tabelul syscall pentru maina pe care o utilizai. -se, --context ir-context_SE-Linux Cauta evenimente cu ir-context_SE-Linux/subiect sau ir-context_SE-Linux/obiect care corespund irului dat. --session ID-sesiune-conectare Cauta evenimente care corespund ID-ului sesiunii de conectare dat. Acest atribut al procesului este stabilit cand un utilizator se conecteaza i poate lega orice proces de o anumita conectare a utilizatorului. -su, --subject ir-context_SE-Linux Cauta evenimentul cu ir-context_SE-Linux (subiect) care corespunde irului. -sv, --success valoare-succes Cauta un eveniment care corespunde valorii valoare-succes date. Valorile admise sunt yes i no. -te, --end [data-sfarit] [ora-sfarit] Cauta evenimente cu marcaje temporale egale sau anterioare orei de incheiere specificate. Formatul orei de incheiere depinde de configuraia regionala. Putei verifica formatul configuraiei regionale executand date '+%x'). Daca data este omisa, se presupune today. Daca ora este omisa, se presupune now. Utilizai ora in format de 24 de ore in loc de AM sau PM pentru a specifica ora. Un exemplu de data utilizand configuraia regionala en_US.utf8 este 09/03/2009. Un exemplu de ora este 18:00:00. Formatul de data acceptat este influenat de variabila de mediu LC_TIME. De asemenea, putei utiliza cuvintele: now (acum), recent (recent), this-hour (aceasta ora), boot (pornire), today (astazi), yesterday (ieri), this-week (saptamana aceasta), week-ago (saptamana trecuta), this-month (luna aceasta), this-year (anul acesta). Now inseamna incepand de acum. Recent inseamna acum 10 minute. Boot inseamna ora exacta, la secunda, la care sistemul a fost pornit ultima data. Today inseamna acum. Yesterday inseamna 1 secunda dupa miezul nopii din ziua precedenta. This-week inseamna incepand cu 1 secunda dupa miezul nopii din ziua 0 a saptamanii determinate de configuraia regionala (vedei localtime). Week-ago inseamna 1 secunda dupa miezul nopii exact acum 7 zile. This-month inseamna 1 secunda dupa miezul nopii in ziua 1 a lunii. This-year inseamna 1 secunda dupa miezul nopii in prima zi a primei luni. -ts, --start [data-inceput] [ora-inceput] Cauta evenimente cu marcaje temporale egale sau ulterioare datei de incepere specificate. Formatul datei de incepere depinde de configuraia regionala. Putei verifica formatul configuraiei regionale executand date '+%x'). Daca data este omisa, se presupune today (astazi). Daca ora este omisa, se presupune midnight (miezul nopii). Utilizai ora in format de 24 de ore in loc de AM sau PM pentru a specifica ora. Un exemplu de data utilizand configuraia regionala en_US.utf8 este 09/03/2009. Un exemplu de ora este 18:00:00. Formatul de data acceptat este influenat de variabila de mediu LC_TIME. De asemenea, putei utiliza cuvintele: now (acum), recent (recent), this-hour (aceasta ora), boot (pornire), today (astazi), yesterday (ieri), this-week (saptamana aceasta), week-ago (saptamana trecuta), this-month (luna aceasta), this-year (anul acesta). Now inseamna incepand de acum. Recent inseamna acum 10 minute. Boot inseamna ora exacta, la secunda, la care sistemul a fost pornit ultima data. Today inseamna acum. Yesterday inseamna 1 secunda dupa miezul nopii din ziua precedenta. This-week inseamna incepand cu 1 secunda dupa miezul nopii din ziua 0 a saptamanii determinate de configuraia regionala (vedei localtime). Week-ago inseamna 1 secunda dupa miezul nopii exact acum 7 zile. This-month inseamna 1 secunda dupa miezul nopii in ziua 1 a lunii. This-year inseamna 1 secunda dupa miezul nopii in prima zi a primei luni. checkpoint inseamna ca ausearch va utiliza marca temporala gasita intr-un fiier de puncte de verificare valid, ignorand nodul-i, dispozitivul, seria, nodul i tipul de eveniment inregistrate, care se gasesc, de asemenea, intr-un fiierde puncte de verificare (checkpoint). In esena, aceasta este aciunea de recuperare in cazul in care o invocare a ausearch cu o opiune ,,checkpoint" (de punct de verificare) eueaza cu o stare de ieire de 10, 11 sau 12. Ar putea fi utilizata intr-un script shell, de exemplu: ausearch --checkpoint /etc/audit/auditd_checkpoint.txt -i _au_status=$? if test ${_au_status} eq 10 -o ${_au_status} eq 11 -o ${_au_status} eq 12 then ausearch --checkpoint /etc/audit/auditd_checkpoint.txt --start checkpoint -i fi -tm, --terminal terminal Cauta un eveniment care corespunde valorii terminal date. Unii demoni, precum cron i atd, utilizeaza numele demonului pentru terminal. -ua, --uid-all id-utilizator Cauta un eveniment cu ID-ul utilizatorului, ID-ul utilizatorului efectiv sau ID-ul utilizatorului de conectare (auid) care corespunde cu ID-ul utilizatorului dat. -ue, --uid-effective id-utilizator-efectiv Cauta un eveniment cu ID-ul de utilizator efectiv id-utilizator-efectiv dat. -ui, --uid id-utilizator Cauta un eveniment cu ID-ul de utilizator id-utilizator dat. -ul, --loginuid id-autentificare Cauta un eveniment cu ID-ul de utilizator id-autentificare dat. Toate programele de intrare care sunt ,,PAMificate" trebuie configurate cu pam_loginuid necesar pentru sesiune, pentru ca cautarea pe loginuid (auid) sa fie precisa. -uu, --uuid uuid-invitat Cauta un eveniment cu UUID-ul invitatului dat. -v, --version Afieaza versiunea i iese -vm, --vm-name nume-invitat Cauta un eveniment cu numele de invitat nume-invitat dat. -w, --word Potrivirile bazate pe iruri trebuie sa corespunda intregului cuvant. Aceasta categorie de potriviri include: nume de fiier, nume de gazda, terminal, chei i context SE Linux. -x, --executable executabil Cauta un eveniment care corespunde numelui executabilui dat. STARE DE IEIRE 0 daca totul este OK, 1 daca nu se gasete nimic, sau erori de argument sau erori minore de acces/citire a fiierelor, 10 date de control nevalide gasite in fiierul punctelor de verificari, 11 eroare la procesarea punctului de verificare, 12 evenimentul punctului de verificare nu a fost gasit in fiierul jurnal corespunzator NOTA Opiunea de timp de pornire este o funcie convenabila i are limitari. Timpul calculat se bazeaza pe ora actuala minus /proc/uptime. Daca dupa pornire ceasul sistemului a fost ajustat, poate prin ntp, atunci calculul poate fi greit. In acest caz, va trebui sa specificai ora complet. Putei verifica data+ora care trebuie utilizata ruland: date -d "`cut -f1 -d. /proc/uptime` seconds ago" EXEMPLE Cauta un utilizator specific: # ausearch --start today --loginuid john -i Verifica jurnalul SELinux pentru a vedea daca au existat refuzuri astazi. # ausearch --start today -m avc -i Afieaza orice jurnal SELinux recent # ausearch -m avc,user_avc,selinux_err,user_selinux_err -i -ts recent Jurnale de ieire in format text # ausearch --start today --format text Evenimente TTY de ieire interpretate i eludate shelln # ausearch --start today -m TTY -i --escape shell_quote CONSULTAI I auditd(8), auditd.conf(5), aureport(8), pam_loginuid(8). TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Red Hat iulie 2023 AUSEARCH(8)