3. 總結
擴充套件使用osquery的thrift api在osqueryi或osqueryd與擴充套件過程之間進行通訊。
擴充套件是單獨的過程,它們通過[thrift](通道與osquery ** core **通訊,以註冊乙個或多個外掛程式或虛擬表
示例**位置:
//1.必須引入sdk.h
#include #include #include using namespace osquery;
//2.定義乙個外掛程式或者**
class exampletable : public tableplugin ;
} tablerows generate(querycontext& request)
};//3. 使用register_external來註冊我們的外掛程式或者表
register_external(exampletable, "table", "example");
int main(int argc, char* ar**)
//5. 最後進行關閉
runner.waitforshutdown();
return 0;
}
安裝專案構建的過程,生成目標碼進行訪問就好.
構建過程可看我的文章02_osquery_osquery的構建
cd build
cmake --build . --config release -j2
使用powershell(管理員)(a)
進入到目標程式目錄(build/osquery/release
)
.\osqueryi.exe --extension d:\osquery\build\external\examples\read_only_table\release\read_only_table_extension.ext.exe --allow_unsafe=true
首先,請注意:如果檔案的許可權允許非特權帳戶寫入或修改檔案,則osquery將拒絕從檔案系統載入擴充套件可執行檔案。
在windows上,由於許可權繼承,僅更改檔案的所有者是不夠的。您還必須更改父目錄的所有者,刪除所有繼承的dacl,並禁用繼承。例如,如果您的osquery副檔名位於.\extensions
目錄中,則以下命令將設定滿足osquery的許可權
icacls .\extensions /setowner administrators /t
icacls .\extensions /grant administrators:f /t
icacls .\extensions /inheritance:r /t
icacls .\extensions /inheritance:d /t
osquery> .tables
=> ...(略)
=> example (列出的表中會有這個表出現)
=> ...(略)
osquery> select * from example;
+--------------+-----------------+
| example_text | example_integer |
+--------------+-----------------+
| example | 1 |
+--------------+-----------------+
osquery的外掛程式機制也能為我們想要的功能擴充套件osquery, DISCUZ 外掛程式機制
1 參考 2 由第一點中的官方提供的參考庫可以基本可以了解怎麼去開發乙個外掛程式。這裡簡述幾點重要的 一 配置檔案中config global.php中加上 config plugindeveloper 1 就可以在後台 應用 外掛程式 中設計新外掛程式。將上述變數中的值設定成為2,就可以看disc...
jQuery 外掛程式機制
簡介 利用jquery提供的 fn.extend 和 extend 方法,擴充套件 extend 擴充套件jquery的類方法 作用 1.合併物件 var a var b 後面加到前面,屬性相同的後面覆蓋前面的屬性 console.log extend a,b 2.擴充套件jquery類方法 var...
jQuery外掛程式機制
為了擴充套件jquery庫函式,jquery提供了兩種方式 jquery.extend object 擴充套件jquery物件本身,主要是用來擴充套件jquery全域性函式 呼叫時直接 函式名 引數 如下例子 jquery.fn.extend object 擴充套件 jquery 元素集,主要用於擴...