史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 應用軟體使用技術文件
忘記密碼?
論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2006-07-06, 05:34 PM  
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 軟體 - Jetico in ubuntu Way 之:去蕪存菁

Jetico in ubuntu Way 之:去蕪存菁
主題:Jetico in ubuntu Way 之:去蕪存菁 (無廢話帶你解讀JPF手冊的精華部分,及我在使用中的經驗)
作者:ubuntu
版權聲明:本文采用
創作共用協議 在遵守創作共用協議,非商用,非盈利以及保留作者和版權聲明的前提下,您可以任意轉載本文。將本文用於商業用途請先聯繫作者,以獲得授權。作者不對讀者使用本文中軟件造成的損失承擔任何責任。
本文作者保留對違反本聲明的行為進行法律訴訟的權利。
附加聲明:在互相尊重的前提下,歡迎任何人指正及討論,本人願意回答與本帖有關的問題。與本帖無關問題,概不回答。您可以開新帖詢問其它有關Jetico的問題。對於不調查,不舉證,一概憑主觀臆測的評論,本人一律不予回復,以免口舌之爭。本人誓死捍衛您的言論自由,但前提是您要拿出令人信服的證據。
本來不打算再寫這種吃力不討好的指南,但是看到論壇有的朋友PM詢問一些問題,我決定寫完,回報給支持我的人。

欲善其事,必先利其器。要想用好JPF必須通讀幫助手冊。由於手冊是英文的,好多人不願意看,我就把精華部分挑出來,並結合自己的使用經驗,寫成此文。
說句實話,Jetico的手冊又臭又長,很多問題可以有更好的表達方式,它不用,我也懶的看。不過整個手冊,我還是看過的。
要設置規則,就得講原理,就要看手冊。知道英文的手冊有人懶的看,下面我揀最重要的講。詳細去看手冊,不多解釋。
JPF手冊英文的,裡面廢話一大堆。當然也有有用的。 下面我寫的,就是精華部分,你看不懂的話,就不要折騰啦,安全第一。我不管它JPF怎麼設計的,底層怎麼過濾的,它是三層也好,或者和樂百氏搞個幾十層。我只要事件,規則。
問題1:Root Table;Root Table由Application Table,Process Attack Table,Protocols Table,System IP Table,reject組成,不用看Jetico,你能記得它們的順序嘛?
問題2: 下面兩種情況,你會如何選擇?
http://i81.photobucket.com/albums/j205/ubuntu6/Jetico/RuleOrder.jpg
JPF管規則叫Rule,以後俺也叫Rule。 Filter,Event,Rule,再折騰也離不開這三個。牢記。
Rules of different types control different events. 牢記。
JPF的三層filter
Network Packet filter (由IP filter和Protocol filter組成)
Application filter
Process attack filter
看下面兩張圖,很好理解。TDI Filter就是Application Filter,它是內核級網路驅動的最高層,直接面向用戶級應用。
由於Network filter有兩部分,所以有4個過濾模塊。
http://i81.photobucket.com/albums/j205/ubuntu6/Jetico/Filter01.jpg
http://i81.photobucket.com/albums/j205/ubuntu6/Jetico/Filter02.jpg
Filter,Event,Rule三者的關係

Network packet filter 對應的 Rule types:
Network protocol rule
IP rule

Application filter 對應的 Rule types:
Application rule
Process attack filter 對應的 Rule types:
Process attack rule
去JPF -> configuration -> Optimal Protection -> Root 看到了嘛?
四種Rules對應於4個Table,實際上是4個規則組,Table就是規則的容器。 都用過Windows,Table就像資料夾,規則就像資料夾裡的文件。複雜嘛? 一點都不複雜。
QUOTE:
Network packet filter 對應的 Rule types:Network protocol rule; IP rule
Network protocol rule 對應的Events:
Event - select whether to match incoming packets, or outgoing packets or both
IP rule 對應的Event
Event - select whether to match incoming packets, or outgoing packets or both
QUOTE:
Application filter 對應的 Rule types:Application rule
Application rule,對應的Events:
Event - application network event type:
any
inbound connection
outbound connection
listening port
receive datagrams
send datagrams
listening datagrams
access to network

any - any event is suitable
inbound connection - connection with local application initiated by remote end
outbound connection - connection to remote server initiated by local application
listening port - local application waits for incoming connections
receive datagrams - local application receives data within connectionless communications
send datagrams - local application sends data within connectionless communications
listening datagrams - local application waits for incoming data within connectionless communications
access to network - special event which means general access to networking subsystem preceding to all network communications. While 'access to network' is not enabled for an application, it won't be permitted to execute any network-related function

QUOTE:
Process attack filter 對應的 Rule types:Process attack rule
Process attack rule,對應的Events:
attacker installs system-wide Windows hook
Attacker starts application with hidden window
Attacker writes to application's memory
Attacker injects own code into application
Attacker modifies child process
Low-level access to system memory

Attack type - suspicious action type
attacker installs system-wide Windows hook
Microsoft Windows operating systems provide so-called hooking mechanism. Application are allowed to install 'hook' function which can intercept some events (mouse actions, keystrokes, etc.) before they reach the target application.
The key point of some hooks is that hook function code must be executed on behalf of other application.
Windows hooking mechanism is widely used both by legal applications and trojans. As soon as trojan installs Windows hook, it can access network via its hook function. Since the hook function can reside in legal process' space (for example, in Explorer.exe process), the user will not realize that network is accessed by the trojan.
Attacker starts application with hidden window
Trojan program can run another trusted application with command-line arguments and make the application accessing network. Of course, the user will notice that something is going wrong if he/she sees unexpectedly appeared Internet Explorer's windows. So the trojan program can simply run Internet Explorer's windows in hidden mode.
Jetico Personal Firewall reports about the event, but it should be noted that legal programs often run their modules with hidden windows, for example, when such a module supports icon in the system tray.
Attacker writes to application's memory.
Trojan program can modify memory of another trusted application. Usually trojan replaces contents of memory where legal code of the trusted application resides by the code of the trojan's procedure that accesses network. As soon as the procedure runs, it accesses network so that everything looks like the trusted application itself decides to access network.
Attacker injects own code into application.
When Windows application runs, it may have one or several so-called "threads". Every thread works in parallel with other threads and executes its own code in the context of the application's process.
Windows allows creating of remote threads, i.e. one process can create thread that will work in context of another trusted process. In this case Windows beleives that this trusted process is responsible for everything that the remote thread makes.
Trojan programs can use the technology of remote threads to hide their activity.
Attacker modifies child process.
Trojan program (attacker) can run another trusted application and modify its memory before the process of trusted application will run. Since the trusted process is not running yet, it may be difficult to detect after some time that the trusted application will run the code of trojan program.
Low-level access to system memory.
Trojan program can harm loaded Windows system modules or running applications by modifying contents of system physical memory. Since the physical memory is common for all the processes running on the computer, such a dangerous program can make any process doing what the trojan program wants. Windows security mechanisms normally does not allow programs to make such a trick, but it is still possible. If Jetico Personal Firewall detects this kind of attack, it definitely means that the reported program is a trojan.

看明白沒,三大filter,都是處理各自的Events,沒有交集。他們是平行關係,不是從屬關係。那麼filter是做什麼的?
1.攔截屬於自己的Event,然後2. 去Security Policy裡,通常是Optimal Protection裡查找對應的Rules,根據Rules對Events進行處理。 Allow or Block 這就是問題所在。
Root Table;Root Table由Application Table,System IP Table,Protocols Table,Process Attack Table,reject組成。Root Table是個特例,只有它包括任何類型的規則,可以處理任何類型的事件。其它Table只能接受特定的事件和規則如:Application Table只能處理Application Event,而不能處理Process Attack Event。
Rules of different types control different events. 牢記。 意思就是說,不同的Rule支配管理駕馭對應不同的Event。再詳細點:比如,svchost.exe inbound connection TCP local 135 port Event發生了,事件只會在Application Rule Table裡找到匹配的規則,它絕不會在IP Rule Table裡找到匹配的規則。不屬於這個Event的Rule全部被無視了,它們相當於不存在。
於是,我看到有人問,都是屏蔽135連接阜的Rules,到底是svchost.exe裡的優先,還是IP Rules裡的優先。 我現在告訴你,它們是平行的,沒有優先級的關係。JPF只會根據Events來選擇對應的Rules。如果事件屬於Application Table,Application rule被執行,無視System IP Table。如果事件屬於System IP Table, System IP rule被執行,無視Application Table。
處理問題要抓主要矛盾,你看看Process attack filter的介紹太煩了,我們先把Process attack filter忽略掉。為什麼,比如JPF有很多視窗是由Process attack filter彈出的,實際沒聯網你就開始彈視窗啦,我不喜歡這個,我只要它在聯網的時候才彈出視窗,這點做的沒CPF好。有人說關了不安全,那好,既然是不聯網你都彈,我關掉你,裝PG或 SSM GSS或者KAV6的Proactive Defence,這樣即減少了JPF的複雜性,又不損失安全性,兩全啊。注意Process attack filter不監控網路訪問,關掉Process attack filter,並不影響其它filter對網路訪問的監控,這需要你瞭解Process attack filter對應的事件。
Network protocol rule,IP rule 這兩個沒點基礎的人,也不會設置,先丟一邊,以後再說。
那麼我們的重點就是Aplication Rules,實際上就是Application Rules裡的Ask User,就是這裡。
Application Rule搞定後,再去設置Network protocol rule,IP rule 最後你有興趣的話再去設置Process attack rule。
規則的匹配是自上到下的順序,這點要記住。
所有Action的圖示說明:
http://i81.photobucket.com/albums/j205/ubuntu6/Jetico/action01.jpg
Application Rules相關事件Event的說明:
我說JPF的手冊廢話一大堆,可不是胡說。比如下面這些事件:
QUOTE:
Event - application network event type:
any
inbound connection
outbound connection
listening port
receive datagrams
send datagrams
listening datagrams
access to network

然後你去看手冊對事件的解釋,一般人根本不知道它在說什麼。
你按字面直譯:向外連接,向內連接,接收資料,發送資料,監聽連接阜,監聽資料,訪問網路? 翻譯完了,天書嘛!你也搞不清它在說什麼?你Event都搞不清楚,寫出來的規則還不是一塌糊塗。
我下面用Rule Based Firewall的語言來解釋一下,真正給防火牆寫過規則的人,應該能看明白。我知道給OP,Kerio寫過規則的人看者比較親切。LNS的規則寫法比較特別,熟悉的應該也能看懂。
QUOTE:
inbound connection(Jetico) 是 TCP inbound/incoming TCP入站/傳入(OP Kerio Comodo) 在LNS裡要設成TCP雙向(LNS)
outbound connection (Jetico) 是 TCP outbound/outgoing TCP出站/傳出(OP Kerio Comodo) 在LNS裡要設成TCP雙向(LNS)
listening port (Jetico) 是 listening TCP port 監聽TCP連接阜
receive datagrams (Jetico) 是 UDP inbound/incoming UDP入站/傳入 (OP Kerio Comodo LNS)
send datagrams (Jetico) 是 UDP outbound/outgoing UDP出站/傳出 (OP Kerio Comodo LNS)
listening datagrams (Jetico) 是 listening UDP port 監聽UDP連接阜
access to network 這個以後再解釋 @@

很明顯,我的解釋簡單明瞭,手冊裡的說法晦澀難懂。
以上都是我所理解的Jetico手冊裡的精華部分,當然還有一些手冊裡沒有,我自己的觀點。但願它們是有用的。授人以魚不如授人以漁。

QUOTE:
問題:
怎麼設置可以允許一個信任的程式去hook其它的程式?不要讓他總是提示xxxx入侵xxxx的記憶體~~
答案:
QUOTE:
add to application trust zone
這是某人問過的問題? 看懂本文的人應該很清楚答案是否正確。
QUOTE:
20060603 第一版發佈
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
舊 2006-08-04, 04:01 PM   #16 (permalink)
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

Jetico2.0 Beta試用體會小結
描述:一、功能(1)支持MAC卡位址和底層協議
圖片:
http://bbs.crsky.com/1128632305/Mon_0608/22_115975_d287571ade27612.jpg

描述:二、ACL
圖片:
http://bbs.crsky.com/1128632305/Mon_0608/22_115975_949daf67e5bf23e.jpg

描述:三、間接訪問細節控制
圖片:
http://bbs.crsky.com/1128632305/Mon_0608/22_115975_30a4c9fb6b7678f.jpg

昨天下載並試用了Jetico 2.0Beta,雖然程式的卸載和載入以及i18n還有Bug,但其核心功能卻已經十分完善了。下面就我試用Jetico新功能的體會及與大家分享。
1、新版本已經支持低級的底層協議和MAC
地址。防護深度勘比LnS,用Jetico2.0可以輕易防範ARP攻擊(見圖1)
2、新版本已經支持多語言,i18n特性大為提高。以後使用jetico將再也沒有語言門檻。
3、引入應用程式和IP分組的特性。組的規則可以實現一對多的對應。相比Tiny只能對組規一一對應而言,定制更靈活方便。
4、與系統結合緊密。可以根據ACL來分配用戶對Jetico的操控權限(見圖2)
5、支持IP位址的範圍定義的功能。以前的版本可以用";"(分號)來分隔若干個IP,顯現可以用"-"(短劃)來定義一個範圍的IP了
6、規則參數交談視窗中的Advanced按鈕似乎不能啟動,可能在beta版中還沒有打開這個功能。
7、支持手動的應用程式HASH校驗。可以手動定義、更新應用程式的HASH碼,防止篡改。
8、4大防護手段:序訪問網路;間接訪問網路;通訊;工作行程攻擊可以自定義忽略、停止和學習3種模式為。可以減少部分類型的彈出視窗。
9、增強了indirect的細節控制。將高階木馬採用的反彈、dll注入、父工作行程繼承、守護工作行程呼叫等技術細緻入微地辨別出來。(見圖3)
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
舊 2006-08-25, 08:07 PM   #17 (permalink)
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

Q:
用Jetico的進來,關於Jetico局域網設置和配置嚮導的問題

我用jetioc 的配置嚮導定義了trust Zone為我的本機網路192.168.0.0/24,即192.168.0.0/255.255.255.0。可是儲存設置後,在Jetico的System IP table->System Trust Zone這個標籤裡卻沒有增加相關的規則。不得不用手動方式來新增規則。

大家在使用配置嚮導的時候有這個情況嗎?


A:

trust Zone為我的本機網路192.168.0.0/24,即192.168.0.0/255.255.255.0。

用來保證你的LAN網裡的機器可以連到你的機器不受JPF的限制

Jetico的System IP table->System Trust Zone這個標籤裡的規則是用來規定你的機器程式的執行

兩個沒什麼關聯。怎麼回扯到一起?



Q:
可是做過Trust Zone的定義後,應該會有相應的規則產生。我定義了TrustZone後在log裡卻仍然可以看見jetico阻擋了網路廣播,導致我不能訪問網上的芳鄰。我手動新增network類形規則才使得局域網訪問正常



A:你把System Trust Zone標籤裡放應用程式?!看看字面意義就應該知道System Trust Zone不是用來定義程式的規則的


用過Jetico,但沒有用System Trust Zone。
Jetico不能從日誌直接創建規則這點不太好


======================================



jetico ip黑名單的製作 by tonyshek2000

jetico 的 ip 黑名單的製作有兩種辦法
1. 通過 jetico 的 configuration wizard (在start->program->jetico 裡可以找到), 用戶可以手動新增要block 的ip, 但是這種方法很麻煩,特別是在新增大量ip的時候。
2. 通過修改設置文件(C:\Program Files\Jetico\Jetico Personal Firewall\Config\setting.xml). 用記事本打開它,可以看到以下的代碼:
<?xml version="1.0" ?>
<?xml-stylesheet href='settings.xsl' type='text/xsl'?>
<settings>

<group id="IP_ADDRESS">
<var id="Trusted Zone">

</var>
<var id="Blocked Zone">

</var>
</group>
</settings>
比如要把123.45.67.89加入黑名單,只要在<var id="Blocked Zone">與</var>之間加入<value>123.45.67.89</value>即可。注意要每個ip單獨一行。白名單(trusted zone)的新增方式也類似。

另外,要保證ip 黑名單被jetico使用,在system ip table 裡一定要有兩條ip規則:
Action log level Source Address Destination Address
reject alert Blocked Zone any
reject alert any Blocked Zone

log level---alert 是為了便於在jetico的log當中察看(所有alert 顯示為紅色)

白名單的規則類似。注意:上面提到的規則必須放在system ip table 最後的那條規則Blocked All not Processed IP Packets 之上,最好是system ip table的開頭,先來白名單規則,然後是黑名單規則。

下面介紹ip 黑名單的取得
http://www.bluetack.co.uk/converter/index.php
上面這個鏈接是ip格式文件的轉換器,包括很多防火牆的ip文件格式
轉換方法:
1. 在options中選擇output format為CIDR Notation, 然後saving setting。source format並不重要,可以隨意選擇。

http://bbs.crsky.com/1128632305/Mon_0606/22_149694_d56f79c6c84f5d1.jpg

2. 選擇source lists,比如ad tracker ,然後點擊open,最後點擊convert. 在output當中可以看到結果。

http://bbs.crsky.com/1128632305/Mon_0606/22_149694_5e872f7b615a014.jpg


http://bbs.crsky.com/1128632305/Mon_0606/22_149694_c5eda6f0abea87f.jpg

3. 把結果複製到一個臨時的txt 文件裡。
4. 如果需要,可以重複上述步驟,選擇其他list,我個人感興趣的除了ad tracker, 還有hijacked ip blocks, spyware list, trojan and portscanners




第三步就是把那個臨時文件裡的ip地址轉換成jetico可以識別的格式。
比如 123.45.67.89 變成123.45.67.89,由於一個ip地址為一行,所以我們需要一個具有批量轉換的文本編輯器。但是為了照顧不同的用戶,我選擇了一個比較通用的ms excel, 它也可以完成上述的工作。
轉換步驟
1. 用excel 打開txt 文件。由於不是表格文件,所以excel會有詢問視窗。你只要一路next,最後finish 就可以了。打開後,可以先對column A 作一個排序。
2.
http://bbs.crsky.com/1128632305/Mon_0606/22_149694_519cfe597ede2f2.jpg

對column B 的其他單元格複製B1的公式,只要拉動B1黑框的右下角就可以了。
3.複製整個column B到jetico設置文件的相應位置(參見第一帖)
最後儲存設置文件。
我的設置文件: settings.zip
有人說jetico的設置很煩比較複雜,確實如此。現附上自己的防火牆的bcf 配置文件: shek.zip
最後的一點說明:在黑名單中你可能發現有這樣的一個ip,比如12.3.249.0/24,他意味著12.3.249.0-12.3.249.255整個區段被列入黑名單。如果你發現12.3.249.12不應該被block, 很簡單只要在白名單裡加入該ip即可(具體方法見帖一)。這也就是設置文件裡白名單(trusted zone)位置在黑名單(blocked zone)之上的原因。
簡單介紹一下CIDR,自己看吧。 (下面的介紹來自stem from wilderssecurity.com,如果有不懂的自己google 二進制的相關資料)


http://bbs.crsky.com/1128632305/Mon_0606/22_149694_a776474a14326a5.jpg
再附帶說兩句:
1. 使用ip 黑名單的原因是防止惡意網站更改網址以逃過hosts文件對他們的屏蔽。

2. 雖然偶得設置文件裡包含的ip 估計有十幾萬個,但是在實際使用過程,網路速度並沒有影響,jetico的記憶體佔用也沒有怎麼升高,一切正常。

3.bluetack的ip lists是經常更新的,所以如果有需要的話,可以嘗試每隔一兩周就更新一次自己的ip名單。
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
 


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 01:43 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1