
OsQuery adalah kerangka kerja, pemantauan, dan kerangka kerja sistem operasi SQL.
Tersedia untuk Linux, MacOS, dan Windows.


OsQuery memaparkan sistem operasi sebagai database relasional berkinerja tinggi. Ini memungkinkan Anda untuk menulis kueri berbasis SQL untuk mengeksplorasi data sistem operasi. Dengan OsQuery, tabel SQL mewakili konsep abstrak seperti menjalankan proses, modul kernel yang dimuat, koneksi jaringan terbuka, plugin browser, acara perangkat keras atau hash file.
Tabel SQL diimplementasikan melalui plugin sederhana dan Extensions API. Berbagai tabel sudah ada dan banyak lagi sedang ditulis: https://osquery.io/schema. Untuk paling memahami ekspresi yang diberikan kepada Anda oleh OsQuery, pertimbangkan pertanyaan SQL berikut:
Daftar users :
SELECT * FROM users; Periksa processes yang dapat dieksekusi yang dihapus:
SELECT * FROM processes WHERE on_disk = 0 ;Dapatkan nama proses, port, dan pid, untuk proses mendengarkan di semua antarmuka:
SELECT DISTINCT processes . name , listening_ports . port , processes . pid
FROM listening_ports JOIN processes USING (pid)
WHERE listening_ports . address = ' 0.0.0.0 ' ;Temukan setiap macOS launchdaemon yang meluncurkan yang dapat dieksekusi dan membuatnya tetap berjalan:
SELECT name, program || program_arguments AS executable
FROM launchd
WHERE (run_at_load = 1 AND keep_alive = 1 )
AND (program != ' ' OR program_arguments != ' ' );Periksa anomali ARP dari perspektif host:
SELECT address, mac, COUNT (mac) AS mac_count
FROM arp_cache GROUP BY mac
HAVING count (mac) > 1 ;Atau, Anda juga bisa menggunakan sub-kueryu SQL untuk mencapai hasil yang sama:
SELECT address, mac, mac_count
FROM
( SELECT address, mac, COUNT (mac) AS mac_count FROM arp_cache GROUP BY mac)
WHERE mac_count > 1 ;Pertanyaan ini bisa:
Untuk mengunduh build stabil terbaru dan untuk informasi repositori dan instruksi instalasi, kunjungi https://osquery.io/downloads.
Kami menggunakan skema versi bernomor sederhana XYZ , di mana X adalah versi utama, Y adalah minor, dan Z adalah tambalan. Kami merencanakan rilis kecil kira -kira setiap dua bulan. Rilis ini dilacak di halaman Milestones kami. Rilis patch digunakan ketika ada bug yang tidak terduga dengan rilis minor kami dan kami perlu dengan cepat ditambal. Rilis 'revisi' yang langka dapat digunakan jika kita perlu mengubah konfigurasi build.
Rilis utama, minor, dan patch ditandai pada github dan dapat dilihat di halaman rilis. Kami membuka masalah daftar periksa rilis baru ketika kami menyiapkan rilis minor. Jika Anda tertarik pada status rilis, silakan temukan masalah daftar periksa yang sesuai, dan perhatikan bahwa masalah tersebut akan ditandai ditutup ketika kami selesai daftar periksa. Kami mempertimbangkan rilis 'dalam pengujian' selama periode hosting unduhan baru di situs web kami dan menambahkannya ke repositori yang di -host kami. Kami akan menandai rilis sebagai 'stabil' pada github ketika pengujian yang cukup telah terjadi, ini biasanya memakan waktu dua minggu.
Membangun OsQuery dari Sumber dianjurkan! Lihat panduan build kami. Lihat juga panduan berkontribusi kami dan bergabunglah dengan komunitas di Slack.
Ada banyak manajer armada OsQuery di luar sana. Proyek OsQuery tidak mendukung, merekomendasikan, atau menguji ini. Mereka disediakan sebagai titik awal
| Proyek | Lisensi |
|---|---|
| Armada | Buka inti |
| Kolide | Komersial |
| Osctrl | Open source |
| Zentral | Open source |
Dengan berkontribusi pada OsQuery, Anda setuju bahwa kontribusi Anda akan dilisensikan sebagaimana didefinisikan pada file lisensi.
Kami melacak pengumuman keamanan dalam catatan rilis versi tag kami di GitHub. Kami juga mengumpulkan ini menjadi Security.md.
Dokumentasi OsQuery tersedia secara online. Dokumentasi untuk rilis lama dapat ditemukan dengan nomor versi, juga.
Jika Anda tertarik untuk mempelajari lebih lanjut tentang OsQuery, baca posting blog peluncuran untuk latar belakang proyek, kunjungi Panduan Pengguna.
Diskusi Pengembangan dan Penggunaan terjadi di Osquery Slack, raih undangan di sini!