Sikkerhed bør altid være en af hovedårsagerne til, at vi søger integrerede løsninger både internt og eksternt på hardware, tjenester, processer og brugerne selv. Uden tvivl kan vi i Linux -miljøer gøre brug af de forskellige løsninger, der er udviklet til at forbedre vores systems sikkerhed, og det er af denne grund, at Solvetic vil forklare en speciel kaldet OSQuery, og vi vil være i stand til at forstå, takket være det en mere sikkerhedsniveau tilføjes til vores system, og som administratorer eller IT -gruppe vil vi være noget mere selvsikre, men uden nogensinde at opgive traditionel sikkerhedsrådgivning.
Hvad er OSQueryOSQuery blev udviklet som en instrumenteringsramme til operativsystemet og er tilgængelig til både Windows, OS X (macOS), Linux og FreeBSD. OSQuery har praktiske, men alligevel omfattende værktøjer, der er ansvarlige for at køre forskellige operativsystemscanninger på lavt niveau og overvåge både ydeevne og hver proces på en omfattende måde.
OSQuery gør brug af et simpelt plugin og et udvidelses -API for at implementere SQL -tabeller, men der findes allerede en samling tabeller, der er klar til brug, nogle af disse tabeller er kun tilgængelige for et specielt system, for eksempel i I tilfælde af Linux vil vi kun se tabellen kernel_modules.
For at forstå, hvordan OSQuery fungerer, udsætter dette værktøj operativsystemet som en højtydende relationsdatabase, så takket være denne eksponering kan SQL-forespørgsler skrives for at udforske operativsystemdata på en meget dybere måde. Når du bruger OSQuery, repræsenteres SQL -tabeller som abstrakte begreber, der ligner kørende processer, indlæste kernemoduler, åbne netværksforbindelser, hardwarehændelser, fil -hash eller mere.
OSQuery -funktioner
Blandt de forskellige funktioner i OSQuery finder vi:
- Det har en højtydende, men lavt fodaftryk, distribueret hostovervågningsdæmon kaldet osqueryd, takket være det vil være muligt at planlægge forespørgsler til at køre på hele den infrastruktur, der er monteret i organisationen.
- Registret genereret af osqueryd kan integreres i de interne registre takket være en plugin -arkitektur for altid at have bedre sikkerhedsmuligheder tilgængelige.
- Den har en interaktiv forespørgselskonsol, kaldet osqueryi, som er en SQL -grænseflade udviklet til at teste nye forespørgsler og grundigt udforske operativsystemet, denne konsol har alle fordelene ved det fulde SQL -sprog og har hundredvis af integrerede tabeller, som vil være afgørende for hændelser svar, problemdiagnostik på systemdriftsniveau og mere.
- OSQuery er en tværplatform, uanset om denne applikation gør brug af operativsystemets API'er på lavt niveau, kan vi bygge og bruge OSQuery på Windows-systemer, macOS, Ubuntu, CentOS og andre Linux-distributioner på virksomhedsniveau..
- OSQuery har indbyggede pakker til alle kompatible operativsystemer, der er også værktøjer og en masse dokumentation om oprettelse af pakker, som vi har ressourcer til deres administration med.
- OSQuery-kodebasen består af højtydende, modulære komponenter, der bruger offentlige API'er til at udvide deres fordele.
Nu skal vi se, hvordan vi installerer OSQuery på Linux.
1. Installer OSQuery på Linux
Trin 1
OSQuery kan installeres fra det officielle lager ved hjælp af apt, yum eller dnf pakkehåndteringsværktøjer afhængigt af den anvendte distribution på denne måde:
I Debian- eller Ubuntu -miljøer
eksporter OSQUERY_KEY = 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $ OSQUERY_KEY sudo add-apt-repository 'deb [arch = amd64] deb https: // pkg/deb64] /debquery 'sudo apt opdater sudo apt install osquery
I Fedora -miljøer
curl -L https://pkg.osquery.io/rpm/GPG | sudo tee / etc / pki / rpm-gpg / RPM-GPG-KEY-osquery dnf config-manager --add-repo --add-repo https://pkg.osquery.io/rpm/osquery-s3-rpm. repo sudo dnf config-manager-sæt-aktiveret osquery-s3-rpm sudo dnf installer osquery
I CentOS 7 -miljøerFor CentOS 7 -miljøer, som vi vil bruge i denne vejledning, skal vi udføre hver af følgende linjer:
curl -L https://pkg.osquery.io/rpm/GPG | sudo tee / etc / pki / rpm-gpg / RPM-GPG-KEY-osquery sudo yum-config-manager-add-repo https://pkg.osquery.io/rpm/osquery-s3-rpm.repo sudo yum -config-manager-aktiver osquery-s3-rpm sudo yum install osquery
Trin 2
Men for CentOS 7 har vi mulighed for at installere RPM "auto-repo-add" eller tilføje destinationen for depotet. Disse RPM'er fungerer på alle Linux x86-64 med en basisinstallation fra år 2011, og først udfører vi følgende:
sudo rpm -ivh https://osquery-packages.s3.amazonaws.com/centos7/noarch/osquery-s3-centos7-repo-1-0.0.noarch.rpm
Trin 3
Derefter kører vi OSQuery -installationen sådan.
sudo yum installer osquery
Trin 4
Vi indtaster bogstavet y for at bekræfte download og installation af OSQuery i CentOS 7. På et tidspunkt i installationen skal vi godkende installationen af GPG -nøglen:
Trin 5
Vi indtaster bogstavet s for at bekræfte dette, og vi vil se, at OSQuery er installeret korrekt i CentOS 7.
2. Brug OSQuery til at analysere Linux
Trin 1
Når OSQuery er installeret korrekt i CentOS 7, starter vi osqueryi -skallen for at starte forespørgslerne om operativsystemets status, for dette udfører vi:
osqueryi
Trin 2
For at få en opsummerende information om vores Linux -operativsystem, vil vi udføre følgende kommando:
VÆLG * FRA systeminfo;Trin 3
I resultaterne vil vi se detaljer som:
- Værtsnavn
- IP -adresse
- CPU -type brugt
- UUID og mere
Trin 4
Hvis vi ønsker at få en liste over alle brugere på Linux -systemet, vil vi udføre følgende OSQuery -forespørgsel:
VÆLG * FRA brugere;
Trin 5
For at få en liste over alle Linux -kernemoduler og deres respektive status, lad os køre følgende.
VÆLG * FRA kernel_modules;
Trin 6
Hvis det er nødvendigt at få adgang til listen over alle RPM -pakker installeret i CentOS, RHEL og Fedora, vil vi udføre følgende forespørgsel:
.alle rpm_pakker;
Trin 7
For at få adgang til oplysninger om, hvordan man kører processer på Linux, vil følgende forespørgsel være nyttig:
VÆLG DISTINCT processer.navn, listening_ports.port, process.pid FRA listening_ports Deltag i processer BRUG (pid) WHERE listening_ports.address = '0.0.0.0';Trin 8
For at liste alle de implementerede tabeller, vi udfører:
. tabeller
Trin 9
For at vise skemaet (kolonner, typer) for en bestemt tabel udfører vi en af følgende linjer:
.skema tabelnavn pragma tabel_info (tabelnavn);
Trin 10
For at vise den generelle hjælp vil vi udføre følgende:
.Hjælp
Trin 11
For at afslutte OSQuery udfører vi:
.AfslutMed OSQuery vil det være muligt at få adgang til detaljerede oplysninger om mange systemparametre for at forbedre administrationsopgaver og altid have store funktionalitetsfunktioner.