Как да наблюдавате сигурността на Linux с OSQuery

Сигурността винаги трябва да бъде една от основните причини, поради които търсим интегрални решения както вътрешно, така и външно на ниво хардуер, услуги, процеси и самите потребители. Несъмнено в Linux среди можем да използваме различните решения, разработени за подобряване на сигурността на нашите системи и поради тази причина Solvetic ще обясни специална програма, наречена OSQuery, и ще можем да разберем как благодарение на нея нивото на сигурност е добавено към нашата система и като администратори или ИТ група ще бъдем малко по -уверени, но без никога да се отказваме от традиционните съвети за сигурност.

Какво е OSQueryOSQuery е разработена като инструментална рамка за операционната система и е достъпна както за Windows, OS X (macOS), Linux, така и за FreeBSD. OSQuery има практични, но всеобхватни инструменти, които са отговорни за изпълнението на различни сканирания на операционни системи на ниско ниво и за мониторинг на производителността и всеки процес по изчерпателен начин.

OSQuery използва прост плъгин и разширение API за внедряване на SQL таблици, но вече съществува колекция от таблици, готови за използване, някои от тези таблици са достъпни само за специална система, например в случай на Linux ще видим само таблицата kernel_modules.

За да се разбере как работи OSQuery, този инструмент излага операционната система като високоефективна релационна база данни, така че благодарение на тази експозиция SQL заявките могат да бъдат написани за изследване на данните на операционната система по много по-дълбок начин. Когато използвате OSQuery, SQL таблиците се представят като абстрактни понятия, подобни на изпълнявани процеси, заредени модули на ядрото, отворени мрежови връзки, хардуерни събития, файлови хешове или повече.

Функции на OSQuery
Сред различните функции на OSQuery откриваме:

  • Той има високопроизводителен, но с ниска площ разпределен демон за мониторинг на хост, наречен osqueryd, благодарение на който ще бъде възможно да се планират заявки за изпълнение на цялата инфраструктура, монтирана в организацията.
  • Регистърът, генериран от osqueryd, може да бъде интегриран във вътрешните регистри благодарение на архитектурата на приставката, за да има винаги по -добри опции за сигурност.
  • Той има интерактивна конзола за заявки, наречена osqueryi, която е SQL интерфейс, разработен за тестване на нови заявки и задълбочено проучване на операционната система, тази конзола има всички предимства на пълния език на SQL и има стотици интегрирани таблици, които ще бъдат жизненоважни за инциденти отговор, диагностика на проблеми на ниво системни операции и др.
  • OSQuery е кръстосана платформа, независимо дали това приложение използва API на операционната система на ниско ниво, ние сме в състояние да изграждаме и използваме OSQuery на Windows системи, macOS, Ubuntu, CentOS и други дистрибуции на Linux на ниво компания.
  • OSQuery има собствени пакети за всички съвместими операционни системи, има и инструменти и много документация за създаването на пакети, с които имаме ресурси за тяхното администриране.
  • Кодовата база OSQuery се състои от високопроизводителни модулни компоненти, използващи публични API, за да разширят своите предимства.

Сега ще видим как да инсталираме OSQuery на Linux.

1. Инсталирайте OSQuery на Linux

Етап 1
OSQuery може да бъде инсталиран от официалното хранилище с помощта на инструментите за управление на пакети apt, yum или dnf в зависимост от дистрибуцията, използвана по този начин:

В Debian или Ubuntu среди

 експортиране на OSQUERY_KEY = 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $ OSQUERY_KEY sudo add-apt-repository 'deb [arch = amd64] deb.bg pps // // /debquery 'sudo apt update sudo apt install osquery

В Fedora среди

 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

В среди CentOS 7За средите CentOS 7, които ще използваме в този урок, ще изпълним всеки от следните редове:

 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-активиране на osquery-s3-rpm sudo yum инсталиране на osquery

Стъпка 2
Но за CentOS 7 имаме възможност да инсталираме RPM „auto-repo-add“ или да добавим дестинацията на хранилището. Тези RPMs работят на всеки Linux x86-64 с базова инсталация от 2011 г. и първо изпълняваме следното:

 sudo rpm -ivh https://osquery-packages.s3.amazonaws.com/centos7/noarch/osquery-s3-centos7-repo-1-0.0.noarch.rpm

Стъпка 3
След това стартираме инсталацията на OSQuery така.

 sudo yum инсталира osquery 

Стъпка 4
Въвеждаме буквата y, за да потвърдим изтеглянето и инсталирането на OSQuery в CentOS 7. В един момент от инсталацията трябва да разрешим инсталирането на GPG ключа:

Стъпка 5
Въвеждаме буквата s, за да потвърдим това и ще видим, че OSQuery е правилно инсталиран в CentOS 7.

2. Използвайте OSQuery за анализ на Linux

Етап 1
След като OSQuery е инсталиран правилно в CentOS 7, ще стартираме черупката osqueryi, за да стартираме заявките за състоянието на операционната система, за това изпълняваме:

 osqueryi 

Стъпка 2
За да получим обобщена информация за нашата операционна система Linux, ще изпълним следната команда:

 SELECT * FROM system_info; 
Стъпка 3
В резултатите ще видим подробности като:
  • Име на хост
  • IP адрес
  • Използва се тип процесор
  • UUID и др

Стъпка 4
Ако искаме да получим списък с всички потребители в системата Linux, ще изпълним следната OSQuery заявка:

 SELECT * FROM потребители; 

Стъпка 5
За да получите списък с всички модули на ядрото на Linux и съответното им състояние, нека изпълним следното.

 SELECT * FROM kernel_modules; 

Стъпка 6
Ако е необходимо да получите достъп до списъка с всички RPM пакети, инсталирани в CentOS, RHEL и Fedora, ще изпълним следната заявка:

 .всички rpm_пакети;

Стъпка 7
За достъп до информация за това как да стартирате процеси в Linux ще бъде полезна следната заявка:

 SELECT DISTINCT процес.име, слушане_порт.порт, процеси. 
Стъпка 8
За да изброим всички изпълнени таблици, които изпълняваме:
 .таблици 

Стъпка 9
За да изброим схемата (колони, типове) на конкретна таблица, изпълняваме един от следните редове:

 .schema table_name pragma table_info (table_name);

Стъпка 10
За да покажем общата помощ, ще изпълним следното:

 .помогне 

Стъпка 11
За да излезем от OSQuery, изпълняваме:

 .изход 
С OSQuery ще бъде възможно да получите достъп до подробна информация за много системни параметри, за да подобрите административните задачи и винаги да имате страхотни функционални функции.

wave wave wave wave wave