Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
是一年護網(wǎng)季,現(xiàn)在甲方hw已經(jīng)主流采用SIEM平臺了,IPS、IDS、WAF、FW、EDR等安全數(shù)據(jù)經(jīng)過安全態(tài)勢感知這個二道販子展現(xiàn)在藍隊面前,勉強能用,今天來說一下SIEM中常見的CEF格式,Common Event Format,公共事件格式,國外主流的ArcSight和Splunk日志導出采用的都是CEF格式,而IBM的QRadar使用的是LEEF。
ailx10
網(wǎng)絡安全優(yōu)秀回答者
網(wǎng)絡安全碩士
去咨詢
CEF格式說下:
CEF:Version|Device Vendor|Device Product|Device Version|deviceEventClassId|Name|Severity|Extension
CEF格式舉例如下:
CEF:0|h3c|fw|1000|10086|worm successfully|10|src=10.0.0.1 dst=2.1.2.2 spt=1232 |
前7個字段的含義解析如下:
ello,親愛的小伙伴們,歡迎瀏覽“使用CefSharp和Javascript實現(xiàn)網(wǎng)絡爬蟲”。
最近我學習使用CefSharp和Javascript實現(xiàn)網(wǎng)絡爬蟲,自動獲取“悟空問答”站點的問題標題和地址信息,以及實現(xiàn)了“Bilibili”直播網(wǎng)站自定義彈幕自動回復,并做成了兩個工具小軟件,通過自動化程序提高效率。我準備將具體實現(xiàn)過程記錄下來,并分享給感興趣的小伙伴。
網(wǎng)絡爬蟲是一種按照一定規(guī)則,自動抓取互聯(lián)網(wǎng)上站點頁面信息的程序或腳本。說到網(wǎng)絡爬蟲,大家首先想到的是用Python實現(xiàn),既高效又方便。不過對于不太熟悉Python,而對于熟悉C#或Javascript的小伙伴們,可以嘗試使用CefSharp和Javascript實現(xiàn)網(wǎng)絡爬蟲。此外,使用CefSharp和Javascript做成的工具軟件,具有方便安裝、發(fā)布,使用界面友好的優(yōu)點,如果您還增加了不愿意公開的代碼邏輯,可以使用C#語言編譯加以保護。
首先我們簡單了解一下CefSharp和Javascript。CefSharp可以簡單理解為基于Google Chrome的開源版本—ChromiumEmbeddedFramework(CEF)實現(xiàn)的瀏覽器控件,CefSharp瀏覽器控件功能豐富且強大。 因為基于CEF,CefSharp支持Webkit & Chrome中實現(xiàn)的HTML5特性,并且在性能上,也接近Chrome。CefSharp是在C#應用程序中嵌入瀏覽器的最優(yōu)選擇,支持WinForms和WPF兩種類型應用程序,英文好的小伙伴可以訪問 : http://cefsharp.github.io/ 網(wǎng)址進行深入學習。
而Javascript是一種廣泛使用的 Web前端編程語言,使用CefSharp和Javascript實現(xiàn)網(wǎng)絡爬蟲需要使用Javascript進行DOM操作,DOM(Document Object Model ,文檔對象模型)是一種用于操作XML、HTML文檔常用方式,JavaScript都能通過DOM接口操作到每個HTML節(jié)點。下一篇我將對使用CefSharp和Javascript實現(xiàn)網(wǎng)絡爬蟲過程中會使用到的C#和Javascript主要知識進行介紹 。
efSharp是一個基于Chromium的開源.NET庫,可以在C#應用程序中嵌入Web瀏覽器。以下是使用CefSharp內(nèi)嵌網(wǎng)頁的步驟:
1. 安裝CefSharp NuGet包:在Visual Studio中打開NuGet包管理器,搜索并安裝CefSharp.WinForms或CefSharp.Wpf,根據(jù)應用程序的類型選擇相應的包。
2. 創(chuàng)建CefSharp瀏覽器控件:在Windows Forms或WPF應用程序中,創(chuàng)建一個WinForms或WPF控件,并將其設置為CefSharp的瀏覽器控件。例如,在Windows Forms應用程序中,可以使用以下代碼創(chuàng)建一個CefSharp瀏覽器控件:
```csharp
using CefSharp;
using CefSharp.WinForms;
public partial class Form1 : Form
{
private ChromiumWebBrowser browser;
public Form1()
{
InitializeComponent();
Cef.Initialize(new CefSettings());
browser = new ChromiumWebBrowser("https://www.google.com");
browser.Dock = DockStyle.Fill;
this.Controls.Add(browser);
}
protected override void OnFormClosing(FormClosingEventArgs e)
{
Cef.Shutdown();
base.OnFormClosing(e);
}
}
```
3. 加載網(wǎng)頁:使用瀏覽器控件的Load方法加載網(wǎng)頁。例如,可以使用以下代碼加載本地HTML文件:
```csharp
browser.Load("file:///C:/path/to/index.html");
```
4. 與JavaScript交互:使用CefSharp提供的方法,可以在C#代碼和JavaScript代碼之間進行交互。例如,可以使用以下代碼在JavaScript中調(diào)用C#方法:
```csharp
public class JsObject
{
public void ShowMessage(string message)
{
MessageBox.Show(message);
}
}
browser.RegisterJsObject("myObj", new JsObject());
```
在JavaScript中,可以使用以下代碼調(diào)用C#方法:
```javascript
myObj.ShowMessage("Hello from JavaScript!");
```
上面的代碼會在C#中彈出一個消息框,顯示“Hello from JavaScript!”。
注意,為了保證安全性,CefSharp默認禁用了跨域請求。如果需要在CefSharp中進行跨域請求,可以在CefSharp的初始化代碼中添加以下選項:
```csharp
var settings = new CefSettings();
settings.CefCommandLineArgs.Add("disable-web-security", "1");
Cef.Initialize(settings);
```
這樣就可以在CefSharp中進行跨域請求了。
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。