Sådan overvåges Linux Server Security med Osquery


Osquery er en gratis open source, kraftfuld og platformoverskridende SQL-baseret operativsystem instrumentations-, overvågnings- og analyseramme til Linux-, FreeBSD-, Windows- og Mac/OS X-systemer, bygget af Facebook. Det er en enkel og nem at bruge operativsystem explorer.

Det kombinerer et antal værktøjer, der udfører OS-analyse og overvågning på lavt niveau; disse værktøjer afslører et operativsystem som en højtydende relationsdatabase som MySQL/MariaDB, PostgreSQL og mere, hvor OS-koncepter er repræsenteret i tabelform, hvilket giver brugerne mulighed for at anvende SQL-kommandoer til at udføre systemovervågning og analyse.

Osquery bruger et simpelt plugin og udvidelses-API til at implementere SQL-tabeller, der findes en samling af tabeller, der er klar til brug, og mere skrives. Nogle tabeller kan kun findes på et bestemt operativsystem, for eksempel finder du kun kernel_modules-tabellen på Linux-systemer.

Derudover kan du køre forespørgsler for at overvåge og analysere OS-tilstand på en enkelt vært via osqueryi-skallen eller på flere værter på et netværk via en planlægning eller udføre dem fra nogen af dine tilpassede applikationer ved hjælp af osquery Thrift API'er.

Sådan installeres Osquery i Linux

Osquery kan installeres fra det officielle lager ved hjælp af dnf-pakkehåndteringsværktøj på din respektive Linux-distribution som vist.

$ export OSQUERY_KEY=1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $OSQUERY_KEY
$ sudo add-apt-repository 'deb [arch=amd64] https://pkg.osquery.io/deb deb main'
$ sudo apt update
$ sudo apt install osquery
$ 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 --enable osquery-s3-rpm-repo
$ sudo yum install osquery
$ 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 --set-enabled osquery-s3-rpm
$ sudo dnf install osquery

Sådan overvåges og analyseres Linux ved hjælp af Osquery

Når du har installeret Osquery med succes på dit system, skal du starte osqueryi-skalen for at begynde at spørge tilstanden til dit operativsystem som vist.

$ osqueryi

Using a virtual database. Need help, type '.help'
osquery> 

For at få en opsummeret Linux-systeminformation skal du køre følgende kommando.

osquery> SELECT  * FROM system_info;

For at få en velformuleret liste over alle brugere på Linux-systemet skal du køre følgende forespørgsel.

osquery> SELECT * FROM users;

For at få en liste over alle Linux-kernemoduler og deres status, kør følgende forespørgsel.

osquery> SELECT * FROM kernel_modules;

For at få en liste over alle installerede RPM-pakker på CentOS, RHEL og Fedora, kør følgende forespørgsel.

osquery> .all rpm_packages;

For at få en information om kørsel af Linux-processer skal du køre følgende forespørgsel.

osquery> SELECT DISTINCT processes.name, listening_ports.port, processes.pid FROM listening_ports JOIN processes USING (pid) WHERE listening_ports.address = '0.0.0.0';

Hvis du kører osquery på et skrivebord og har Firefox eller Chrome installeret, kan du liste alle dine tilføjelser ved hjælp af følgende forespørgsel.

osquery> .all firefox_addons;
osquery> .all  chrome_extensions;

For at vise en liste over alle implementerede tabeller i Linux skal du bruge kommandoen .tables som vist.

osquery> .tables;	#list all implemented tables
osquery> .help; 	#view help message

Osquery leverer også FIM (File Integrity Monitoring) og funktioner til auditering af processer og sokler og mere, så det er et værktøj til påvisning af indtrængen, men dette kræver visse konfigurationer, før du kan implementere det til et sådant formål. Du kan finde flere oplysninger fra Osquery Github-arkivet.