Inštalácia Osquery v Ubuntu
Osquery balíky nie sú k dispozícii v predvolenom úložisku Ubuntu, takže pred jeho inštaláciou musíme pridať Osquery úložisko apt spustením nasledujúceho príkazu v termináli.
[chránené e-mailom]: ~ $ echo "deb [arch = amd64] https: // pkg.osquery.io / deb deb main "|sudo tee / etc / apt / sources.zoznam.d / osquery.zoznam
Teraz importujeme podpisový kľúč spustením nasledujúceho príkazu v termináli.
[chránené e-mailom]: ~ $ sudo apt-key adv --keyserver keyserver.ubuntu.com--recv-kľúče 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
Po importe podpisového kľúča aktualizujte systém spustením nasledujúceho príkazu v termináli.
[chránené e-mailom]: ~ $ sudo apt-get aktualizáciaTeraz nainštalujte Osquery spustením nasledujúceho príkazu
[chránené e-mailom]: ~ $ sudo apt-get install osqueryPo inštalácii Osquery, teraz musíme skontrolovať, či bola správne nainštalovaná, spustením nasledujúceho príkazu
[chránené e-mailom]: ~ $ osqueryi --verziaAk poskytuje nasledujúci výstup, je nainštalovaný správne
Pomocou Osquery
Teraz po inštalácii sme pripravení na použitie Osquery. Spustením nasledujúceho príkazu prejdete na výzvu interaktívneho shellu
[chránené e-mailom]: ~ $ osqueryi
Získanie pomoci
Teraz môžeme spúšťať dotazy založené na SQL, aby sme získali údaje z operačného systému. Môžeme získať pomoc o Osquery spustením nasledujúceho príkazu v interaktívnom prostredí.
osquery> .Pomoc
Získanie všetkých tabuliek
Ako bolo spomenuté predtým, Osquery vystavuje údaje z operačného systému ako relačnú databázu, takže má všetky údaje vo forme tabuliek. Všetky tabuľky môžeme získať spustením nasledujúceho príkazu v interaktívnom prostredí
osquery> .stoly
Ako vidíme, spustením vyššie uvedeného príkazu môžeme získať veľa tabuliek. Teraz môžeme z týchto tabuliek získať údaje spustením dotazov založených na SQL.
Zoznam informácií o všetkých používateľoch
Všetky informácie o používateľoch môžeme vidieť spustením nasledujúceho príkazu v interaktívnom prostredí
osquery> SELECT * FROM users;Vyššie uvedený príkaz zobrazí gid, uid, popis atď. všetkých používateľov
Môžeme tiež extrahovať iba príslušné údaje o používateľoch, napríklad chceme vidieť iba používateľov, a nie ďalšie informácie o používateľoch. Spustením nasledujúceho príkazu v interaktívnom prostredí získate užívateľské mená
osquery> VYBERTE používateľské meno OD POUŽÍVATEĽOV;Vyššie uvedený príkaz zobrazí všetkých používateľov vo vašom systéme
Podobne môžeme užívateľské mená spolu s adresárom, v ktorom sa užívateľ nachádza, získať spustením nasledujúceho príkazu.
osquery> VYBERTE užívateľské meno, adresár OD POUŽÍVATEĽOV;
Podobne môžeme pomocou podobných príkazov zadať dotaz na toľko polí, koľko chceme.
Môžeme tiež získať všetky údaje konkrétnych používateľov. Napríklad chceme získať všetky informácie o užívateľovi root. Všetky informácie o užívateľovi root môžeme získať spustením nasledujúceho príkazu.
osquery> SELECT * FROM users WHERE username = "root";
Môžeme tiež získať konkrétne údaje z konkrétnych polí (stĺpcov). Napríklad chceme získať ID skupiny a meno používateľa root. Spustením nasledujúceho príkazu získate tieto údaje.
osquery> VYBERTE užívateľské meno, gid OD POUŽÍVATEĽOV KDE užívateľské meno = ”root”
Týmto spôsobom môžeme z tabuľky dopytovať čokoľvek, čo chceme.
Zoznam všetkých procesov
Môžeme uviesť prvých päť procesov spustených v ubuntu spustením nasledujúceho príkazu v interaktívnom shelle
osquery> SELECT * FROM procesy LIMIT 5;
Pretože v systéme beží veľa procesov, zobrazili sme pomocou kľúčového slova LIMIT iba päť procesov.
Môžeme nájsť ID procesu konkrétneho procesu, napríklad chceme nájsť ID procesu mongodb, aby sme spustili nasledujúci príkaz v interaktívnom shelle
osquery> VYBERTE PID Z procesov WHERE name = "mongod";
Vyhľadáva sa verzia Ubuntu
Verziu nášho systému Ubuntu nájdeme spustením nasledujúceho príkazu v interaktívnom prostredí
osquery> SELECT * FROM os_version;Ukáže nám verziu nášho operačného systému
Kontrola sieťových rozhraní a adries IP
IP adresu, Masku podsiete sieťových rozhraní, môžeme skontrolovať spustením nasledujúceho dotazu v interaktívnom prostredí.
osquery> SELECT interface, address, mask FROM interface_addressesKDE rozhranie NEMÁ RÁD „% lo%“;
Kontrola prihlásených používateľov
Môžeme tiež skontrolovať prihlásených používateľov vo vašom systéme dotazom na údaje z tabuľky „loged_in_users“. Spustením nasledujúceho príkazu vyhľadáte prihlásených používateľov.
osquery> VYBERTE užívateľa, hostiteľa, čas OD prihlásených_uživateľov KDE Tty NIE JE AKO '-';
Kontrola systémovej pamäte
Môžeme tiež skontrolovať celkovú pamäť, voľnú pamäť uloženú v pamäti atď. spustením nejakého príkazu založeného na SQL v interaktívnom prostredí. Ak chcete skontrolovať celkovú pamäť, spustite nasledujúci príkaz. Takto získate celkovú pamäť systému v bajtoch.
osquery> SELECT memory_total FROM memory_info;
Ak chcete skontrolovať voľnú pamäť vášho systému, spustite nasledujúci dotaz v interaktívnom prostredí
osquery> VYBERTE memory_free FROM memory_info;Keď spustíme vyššie uvedený príkaz, dá nám voľnú pamäť dostupnú v našom systéme
Môžeme tiež skontrolovať medzipamäť systému pomocou tabuľky memory_info spustením nasledujúceho dotazu.
osquery> vyberte z pamäte cache_info;
Zoznam skupín
Všetky skupiny vo vašom systéme nájdeme spustením nasledujúceho dotazu v interaktívnom prostredí
osquery> SELECT * FROM groups;
Zobrazenie posluchových portov
Všetky interaktívne porty na počúvanie nášho systému môžeme zobraziť spustením nasledujúceho príkazu v interaktívnom prostredí
osquery> SELECT * FROM listening_ports;
Môžeme tiež skontrolovať, či port počúva alebo nie, spustením nasledujúceho príkazu v interaktívnom prostredí
osquery> SELECT port, adresa FROM listening_ports WHERE port = 27017;Takto získate výstup, ako je znázornené na nasledujúcom obrázku
Záver
Osquery je veľmi užitočný softvérový nástroj na vyhľadanie akýchkoľvek informácií o vašom systéme. Ak ste si už vedomí dotazov založených na SQL, je pre vás použitie veľmi jednoduché alebo ak neviete o dotazoch založených na SQL, pokúsil som sa zo všetkých síl ukázať vám niektoré dôležité dotazy, ktoré sú užitočné pri hľadaní údajov. Spustením podobných dotazov môžete nájsť akýkoľvek druh údajov z ľubovoľnej tabuľky.