999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

誘捕惡意攻擊“簡易裝”
——Dionaea低交互式蜜罐介紹

2011-11-09 13:43:22代恒諸葛建偉
中國教育網絡 2011年11期
關鍵詞:數據庫服務信息

文/代恒 諸葛建偉

誘捕惡意攻擊“簡易裝”
——Dionaea低交互式蜜罐介紹

文/代恒 諸葛建偉

COST論壇由CCERT、《中國教育網絡》雜志于2008年共同發起,采取會員制,面向個人,完全免費,以開放、平等、自由的互聯網精神運作。如需獲取COST技術論壇視頻、錄音等資料,請登錄:。

有別于高交互式蜜罐采用真實系統與服務誘捕惡意攻擊,Dionaea被設計成低交互式蜜罐,它為攻擊者展示的所有攻擊弱點和攻擊對象都不是真正的產品系統,而是對各種系統及其提供的服務的模擬。

Dionaea(捕蠅草)低交互式蜜罐的定義

Dionaea低交互式蜜罐(http://dionaea.carnivore.it/)是Honeynet Project的開源項目,起始于Google Summer of Code 2009,是Nepenthes(豬籠草)項目的后繼。Honeynet Project是成立于1999年的國際性非盈利研究組織,致力于提高因特網的安全性,在蜜罐技術與互聯網安全威脅研究領域具有較大的影響力。

Dionaea蜜罐的設計目的是誘捕惡意攻擊,獲取惡意攻擊會話與惡意代碼程序樣本。它通過模擬各種常見服務,捕獲對服務的攻擊數據,記錄攻擊源和目標IP、端口、協議類型等信息,以及完整的網絡會話過程,自動分析其中可能包含的shellcode及其中的函數調用和下載文件,并獲取惡意程序。

有別于高交互式蜜罐采用真實系統與服務誘捕惡意攻擊,Dionaea被設計成低交互式蜜罐,它為攻擊者展示的所有攻擊弱點和攻擊對象都不是真正的產品系統,而是對各種系統及其提供的服務的模擬。這樣設計的好處是安裝和配置十分簡單,蜜罐系統幾乎沒有安全風險,不足之處是,不完善的模擬會降低數據捕獲的能力,并容易被攻擊者識別。

圖1 Dionaea整體結構和工作機制

Dionaea的工作機制

技術原理和整體結構

Dionaea是運行于Linux上的一個應用程序,將程序運行于網絡環境下,它開放Internet上常見服務的默認端口,當有外來連接時,模擬正常服務給予反饋,同時記錄下出入網絡數據流。網絡數據流經由檢測模塊檢測后按類別進行處理,如果有shellcode則進行仿真執行;程序會自動下載shellcode中指定下載或后續攻擊命令指定下載的惡意文件。從捕獲數據到下載惡意文件,整個流程的信息都被保存到數據庫中,留待分析或提交到第三方分析機構。

Dionaea整體結構和工作機制如圖1所示。

模擬服務

Dionaea通過模擬常見的Internet服務引誘網絡上以這些服務為目標的攻擊,因為蜜罐系統其實并不提供任何服務,可以假定所有服務請求都是惡意的。目前支持的協議類型和服務有SMB、http、ftp、tftp、MSSQL、MySQL、SIP(VoIP),同時還支持IPv6和TLS(Transport Layer Security,傳輸層安全)。

按默認配置啟動蜜罐,程序自動獲取網絡接口IP地址,在IPv4和IPv6同時開啟監聽服務。服務開放的端口,TCP端口對應有web服務80、443端口,ftp服務21端口,MSSQL的1433端口,MySQL的3306端口,支持SMB的445端口,RPC(Remote Procedure Call,遠程過程調用)和DCOM(分布式組件對象模型)服務使用的135端口,wins服務42端口;udp端口有VoIP使用的SIP(Session Initiation Protocol,會話發起協議)對應的5060端口,tftp服務69端口。新的服務可以通過編寫python腳本的方式添加到蜜罐中,具有很強的擴展性。MySQL服務即為2011年5月發布的新版本中最新添加的模擬服務。

捕獲攻擊數據

對于模擬服務的監聽連接,Dionaea直接獲取外來連接數據,然后根據模擬服務的實現向外返回數據;從沒有模擬服務支持的端口收到的連接包則會先被記錄,然后丟棄。獲取的外來數據可以提交給檢測模塊進行檢測,同時有關此連接的信息,如源IP、目的IP、源端口、目的端口、協議類型等會被記錄到數據庫中,方便進行分析和統計。

Shellcode檢測和仿真引擎

外來數據提交到檢測模塊后,若檢測到shellcode,就被放到程序自帶的虛擬機中進行仿真執行。檢測和仿真引擎采用libemu,同樣是由Honeynet Project開發的x86下shellcode檢測和仿真程序庫。它采用GetPC啟發式模式來檢測數據流中是否有shellcode,發現后在虛擬機中運行代碼,并記錄API調用和參數,對于多級shellcode同樣可以仿真。

Libemu按字節檢查輸入數據,發現連續的機器指令則提取出來,交給程序的虛擬機進行仿真。以metasploit中的pay-load “download_exec”為例,Dionaea收到溢出數據流并處理后,在下載參數中發現url字符串,則利用curl程序到此url下載文件并保存。以metasploit中的payload “shell_bind_tcp”為例,設置參數為開放4444端口后門,Dionaea會開放4444端口并等待進一步的連接數據,如黑客連接后門的操作,程序會對命令做相應反饋以吸引更多輸入數據,當然Dionaea對后門的模擬與高交互式蜜罐相比差距很大。

惡意文件下載

Dionaea蜜罐會自動檢測shellcode中的文件下載地址或黑客指定的下載地址,并嘗試下載文件。http下載利用curl模塊,而ftp下載和tftp下載利用的是程序自帶的和tftp.py這兩個python腳本。

事件記錄

默認安裝目錄為/opt/dionaea/,當有針對模擬服務的惡意攻擊發生時,一系列出入數據會被記錄下來,保存到/opt/dionaea/var/dionaea/bistreams目錄下按時間命名的目錄中。文件下載成功后,會被保存到/opt/dionaea/var/dionaea/binaries目錄下。而用戶向模擬服務上傳的文件將被保存在/opt/dionaea/var/dionaea/wwwroot目錄下。

檢測到的事件信息將被保存到事件數據庫中。Dionaea使用的是SQLite數據庫,數據庫文件logsql.sqlite默認位于/opt/dionaea/var/dionaea/目錄下。

圖2展示了Dionaea事件數據庫主要的幾個表和關系結構。數據庫以connections表為核心,記錄了外部攻擊和蜜罐的每一次連接行為,包括IP、端口、協議類型和時間戳等信息。其中connection_root鍵記錄引起本次連接的最初一個連接編號,connection_parent鍵記錄引起本次連接的上一個連接編號,通過這兩個鍵可以將一次連續的攻擊提取出來。如連接Link1溢出攻擊的shellcode控制主機連接到攻擊控制端,新建連接Link2,則Link1是Link2的“root”和“parent”。

以connections表為軸,其他表記錄詳細攻擊行為信息。dcerpcbinds表和dcerpcrequests表當連接使用SMB協議時會產生記錄,其中UUID標識調用的分布式遠程過程,兩表分別記錄調用所采用的編碼規則和請求操作號(Operation number)。emu_profiles表和emu_serivces表記錄libemu程序對數據流中shellcode檢測得到的結果,分別記錄檢測到的shellcode函數調用、參數和判斷出的shellcode開啟的后門。downloads表記錄了下載的惡意文件的信息,包括下載地址和對文件的md5值。offers表記錄shellcode中提供的文件下載url。logins表和mssql_commands表記錄對MSSQL服務的攻擊行為,分別記錄嘗試登陸的用戶名、密碼和對數據庫提交的命令以及命令完成情況。

圖2 事件數據庫主要結構

Dionaea蜜罐安裝過程

Dionaea目前版本是0.1.0,采用源碼安裝。軟件運行依賴于以下庫:libev,libglib,libssl,liblcfg,libemu,python,sqlite,readline,cython,lxml,libudns,libcurl,libpcap。安裝過程詳見http://dionaea.carnivore.it/#compiling,需要注意的是安裝Python-3.2時注意按說明修改setup.py以確保zlib庫能正確安裝。

安裝時要注意依賴庫成功安裝,否則Dionaea可能不能正常工作。網上也有提供利用腳本整合安裝的方法,具體可參考以下網址:

http://carnivore.it/2010/05/18/debianization

http://aur.archlinux.org/packages.php?ID=36944

http://maimed.org/~pyllyukko/stuff.shtml

Dionaea使用方法

Dionaea根據命令參數運行,可選擇不同的運行環境、任務和篩選事件記錄內容。配置文件則具體規定蜜罐運行后開啟的模塊,記錄文件的保存位置和擴展功能的參數等信息。默認配置下Dionaea自動選擇一個網絡接口進行監聽。

Dionaea的命令格式

Dionaea具體的命令格式如下:

選項的意義分別是:

-c:指定運行程序所使用的配置文件,默認下配置文件是/opt/dionaea/etc/dionaea.conf。

-D:后臺運行。

-g:指定啟動后切換到某個用戶組,默認下保持當前組。

-G:收集垃圾數據,用于調試內存泄露。不能用于valgrind軟件。

-h:幫助信息。

-H:幫助信息,包括默認值信息。

-l:選擇事件記錄級別,可以選擇all, debug, info,message, warning, critical, error這些值,多選使用“,”做分隔,排除使用“-”。

-L:選擇域,支持通配符“*”和“?”,多選使用“,”,排除使用“-”。

-u:指定啟動后切換到某個用戶,默認下保持當前用戶。

-p:記錄pid到指定文件。

-r:指定啟動后切換根目錄到指定目錄,默認下不切換。

-V:顯示版本信息。

-w:設定進程工作目錄,默認下為/opt/dionaea。

Dionaea配置文件

Dionaea默認下配置文件是/opt/dionaea/etc/dionaea.conf。配置文件內容分為logging,processors,downloads,bistreams,submit,listen,modules七個部分。

日志logging部分配置日志的存放位置、事件記錄級別和所在域,包括普通日志和錯誤日志,默認下位于/opt/dionaea/var/log目錄下,分別記錄所有事件和警告、錯誤事件。

處理器processors部分配置libemu和用于導出數據流的模塊streamdumper。libemu部分可增減允許的協議,配置shellcode檢測時支持的最大流大小、跟蹤步數限制和并發執行數等性能參數。streamdumper部分配置導出數據流時允許和拒絕的協議,數據流保存的位置。

文件下載downloads和數據流bistreams部分分別配置惡意文件下載和數據流保存的位置。

提交submit部分設置自動通過http提交惡意文件到特定地址,具體配置信息依賴于服務器的設定。

監聽設置listen部分配置Dionaea進行監聽的網絡接口IP,默認下自動獲取。

工作模塊modules部分配置各種模塊的工作參數。部分必須模塊,如curl、libemu、pcap、模擬的服務services等信息,建議保存默認配置。其他可供擴展的模塊將在第五部分Dionaea進階使用高級功能進行介紹。

Dionaea使用實例

Dionaea安裝完成后可按需求進行一定配置,但通常使用默認配置也可實現決大多數功能。下面對Dionaea默認配置下的使用和工作情況作簡單介紹。

以下Dionaea 0.1.0安裝于Ubuntu 10.10,測試機為BT5(back track 5)。啟動Dionaea:dionaea -l all,-debug -L'*'。記錄除debug之外所有事件,工作于所有可見域。

模擬的服務

圖3顯示使用nc(netcat)連接Dionaea開放端口(80)和未開放端口(81)時蜜罐的處理情況。連接端口80(藍色框內)時Dionaea接受連接,根據應用服務模擬模塊中的實現提供低交互式的模擬交互環境,并將記錄網絡會話過程;而連接81(紅色框內)端口時連接被Dionaea拒絕,僅通過pcap模塊記錄連接嘗試。

漏洞掃描

使用漏洞掃描軟件掃描Dionaea蜜罐,可以看到軟件識別出多個安全漏洞,雖然這些漏洞都不實際存在。使用Nessus掃描時,共掃描出5個高危漏洞、13個中等威脅漏洞和28個低威脅漏洞,而用OpenVAS進行掃描,選用模式“Full and fast”,掃描出1個高危漏洞、1個中等威脅漏洞和17個低威脅漏洞。

從掃描結果可以看出,Dionaea雖然可以捕獲針對漏洞的攻擊數據,但在模擬漏洞吸引攻擊方面還做的不夠,更多的漏洞模擬理論上可以捕獲更多的攻擊數據。當然,這是低交互式蜜罐普遍存在的問題,需待以后進一步研究。

事件記錄的讀取

Dionaea提供兩個python腳本用于事件數據庫的簡單讀取查看,腳本在安裝源碼保存位置的modules/pythom/目錄下。

腳本readlogsqltree.py可以讀取數據庫文件logsql.sqlite中保存的攻擊連接信息,包括網絡連接信息、時間、針對的漏洞、shellcode調用的API和參數、下載文件的url,若配置過virustotal 提交分析,還可以顯示提交分析的結果,如下命令格式輸出24小時內的事件記錄:

腳本gnuplotsql.py統計事件數據庫中記錄的連接數,然后輸出統計圖形。可以按日期統計不同協議、不同連接類型的連接數。使用前需安裝gnuplot程序:

下面的命令執行后,將生成所有連接和smbd 、epmapper、mssqld、httpd、ftpd五種協議的連接統計圖,同時輸出按年和月統計的圖形:

還可以直接使用能讀取sqlite格式數據庫文件的軟件查看事件記錄。如windows下的軟件SQLiteSpy。

圖3 nc連接80和81端口Dionaea蜜罐輸出

圖4 校外服務器數據庫連接統計圖示例

Dionaea進階使用高級功能

除默認功能外,Dionaea還提供一些非常實用的擴展功能,或者增強信息獲取能力,或者幫助對惡意攻擊和惡意文件進行分析。

圖5 Virustotal掃描反饋的部分結果(Conficker蠕蟲)

圖6 xmpp日志提交流程

配置p0f程序提供遠程主機OS信息

程序p0f用于通過網絡連接被動識別遠程操作系統指紋。在配置文件中工作模塊modules部分的ihandlers結構中開啟p0f,可以獲取連接的遠程操作系統信息。

使用此功能需要預先安裝p0f:apt-get install p0f。使用時,先以命令“sudo p0f -i any -u root -Q /tmp/p0f.sock -q -l”啟動p0f,之后啟動Dionaea蜜罐。當有連接進入時就能獲取p0f判斷的操作系統信息,此信息同時保存到數據庫中。

多網絡接口支持

Dionaea可安裝于多網卡主機,同時監聽多個網絡接口。默認情況下Dionaea自動獲取監聽IP,存在多IP時,需要更改配置文件listen部分為手動填寫IP,同時添加所需多個IP。舉例如下:

Dionaea的樣本掃描和分析

Dionaea支持以http/POST形式將下載的惡意文件自動提交到第三方分析機構,如VirusTotal,CWSandbox,Norman Sandbox,也可提交到自己配置的服務器。

VirusTotal提供對提交的文件進行多引擎掃描服務。Dionaea對VirusTotal做了支持,設置提交惡意文件到VirusTotal,首先要到網站http://www.virustotal.com注冊,獲取網站提供的apikey,再把apikey寫到配置文件中工作模塊modules部分的virustotal結構中,同樣到ihandlers結構開啟virustotal功能。之后蜜罐如果成功下載惡意文件,則會自動提交到virustotal,提交信息和反饋的檢測信息保存到數據庫中。

XMPP日志提交

Dionaea支持分布式部署,蜜罐節點可以通過xmpp協議將捕獲的攻擊的信息(與事件數據庫文件logsql.sqlite中內容相同)和下載的惡意文件提交到中心服務器。使用此功能需在Dionaea配置文件中ihandlers結構開啟xmpp提交功能,在xmpp提交配置選項部分填寫提交參數,同時在中心服務器安裝xmpp服務程序,中心數據庫,并運行將xmpp服務收到的數據記錄到數據庫中的腳本。

如圖,每個dionaea節點將捕獲的信息發送到xmpp服務器,dionaea源碼包中提供的python腳本modules/pythom/util/xmpp/pg_backend.py可以提取xmpp記錄的信息,并將這些信息儲存到數據庫中。XMPP服務和數據庫安裝在同一臺主機,數據庫默認使用postgresql,安裝好后用源碼包中modules/pythom/util/xmpp/pg_schema.sql文件完成建表操作。這樣,分布式蜜罐捕獲的信息集中到postgresql數據庫中,可以通過pgadmin等管理工具或web方式查看。

Dionaea利用XMPP日志提交實現分布式功能,通過查詢中心數據庫,可以方便快捷地獲取大范圍內網絡安全威脅信息,為進一步分析提供基本條件。

Dionaea低交互式蜜罐是一款安裝配置簡單,具有較強惡意攻擊捕獲能力和擴展能力的蜜罐系統,它支持分布式部署,可以很方便地通過大范圍部署提高對網絡惡意攻擊的監測能力。當然,Dionaea不能完全避免低交互式蜜罐的普遍弱點,即對網絡服務的模擬與真實服務存在差距,可能無法捕獲某些對環境敏感的攻擊,這個缺點目前只能通過不斷擴展模擬服務腳本,以及結合專用服務的蜜罐軟件來進行完善。

(作者單位為清華大學網絡中心,CCERT應急響應組)

華勝天成打造產品化服務

華勝天成日前發布“華勝天成i3投資管理軟件”,產品可對投資過程進行全方位的信息化管理。從投資管理者切實需求出發,依據投資管理概念模型三個維度、投資管理的三個層次與三套指標體系,幫助投資管理者構建標準化、體系化、實用性強的投資管理統籌平臺。

據記者了解,華勝天成i3不僅能夠為市場提供產品化服務,而且產品還具備專業成熟的技術平臺及模型,可根據企業與政府等用戶實際需求而定制開發相應產品套裝,以滿足用戶對于投資管理的信息化需求。目前,華勝天成i3分為企業版和政府版兩個版本。

猜你喜歡
數據庫服務信息
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 亚洲一区第一页| 亚洲AV无码一区二区三区牲色| 亚洲成综合人影院在院播放| 欧美翘臀一区二区三区| 538国产在线| 国产精品视屏| 欧美精品v日韩精品v国产精品| 2021天堂在线亚洲精品专区| 亚洲精品视频免费看| 国产亚洲高清在线精品99| www.99精品视频在线播放| 欧美国产菊爆免费观看| 美女扒开下面流白浆在线试听 | 亚洲av无码牛牛影视在线二区| 在线视频一区二区三区不卡| 亚洲精品国产首次亮相| 国产免费自拍视频| 狠狠色丁香婷婷综合| 五月激情综合网| 伊人色在线视频| 在线观看免费AV网| 国产人前露出系列视频| 人妻熟妇日韩AV在线播放| 中文字幕人妻av一区二区| 老司国产精品视频91| 久久国产精品77777| 国产美女在线观看| 日韩色图区| 色天天综合| 国产精品久久久久久久久久久久| 国产大片喷水在线在线视频| 片在线无码观看| 精品国产电影久久九九| 国产又爽又黄无遮挡免费观看| 99久久精品免费看国产电影| 第九色区aⅴ天堂久久香| 中文无码伦av中文字幕| 亚洲国产精品一区二区第一页免| 欧美成人日韩| 亚洲AⅤ无码国产精品| 成人免费一区二区三区| 成人福利在线免费观看| 欧美啪啪网| 在线人成精品免费视频| 亚洲成a∧人片在线观看无码| 国产欧美一区二区三区视频在线观看| 日韩欧美国产成人| 国产精品久久国产精麻豆99网站| 国产欧美视频在线| 粉嫩国产白浆在线观看| 色婷婷成人| 久久99精品国产麻豆宅宅| 亚洲精品色AV无码看| 國產尤物AV尤物在線觀看| 日韩a级毛片| 日本成人精品视频| 日韩在线影院| 国产成人乱无码视频| 亚洲天堂在线免费| 欧美日韩一区二区在线免费观看| 中文字幕人成人乱码亚洲电影| 狠狠躁天天躁夜夜躁婷婷| 国产精品午夜电影| a级毛片免费看| 日本免费一级视频| 狠狠色丁香婷婷综合| 99人妻碰碰碰久久久久禁片| 成人福利免费在线观看| 欧美精品伊人久久| 国产午夜无码专区喷水| 久久国产成人精品国产成人亚洲| 九九九久久国产精品| 婷婷五月在线| 精品国产香蕉在线播出| 97色伦色在线综合视频| 日韩无码视频播放| 日韩免费毛片| 亚欧乱色视频网站大全| 她的性爱视频| 亚洲国产亚洲综合在线尤物| 久久精品这里只有精99品| 国产精品美女自慰喷水|