Home » Computer » Archive by category "Security" (Page 121)

eMule 的 Encrypted Connection

那邊看到 不打算加入 Encrypted Connection 的功能:emule 發展者對加密傳輸的政策

在 eMule 的 forum 上,Frequently Asked Features, read this before posting a new Request 這篇文章裡:

Features you won't see in eMule:
Encrypted transfer - This only wastes resources and offers you no advantage. It doesn't offer you more privacy as the receiver of the data always has to decrypt it and the receiver could be any untrusted person. Encryption would only help against a Man-In-The-Middle attack which never happens for P2P-Networks as there are easier ways (see the sentence above).

不過似乎沒抓到重點,Encrypted Connection 的目的只是要閃開 P2P Filtering 的設備...

Google Pack

剛剛在 那邊的 Google Pack 這篇看到 裡居然有 Norton AntiVirus 2005 Special Edition (六個月的試用期) 就跑去裝起來試看看 :p (雖然交大一直都有買 Norton AntiVirus Enterprise Edition 的授權,不過我都沒裝,主要是中文版軟體裝在英文版 Windows 上每次都會有奇怪的問題...)

裝起來之後病毒碼是 2005 九月的版本,Live Update 更新到 2006 一月的,用起來還可以,就測到下次重灌 Notebook 吧。

無名小站的 XSS 安全漏洞

前言

Year.new(2006) 這篇幹剿無名小站的 XSS 安全漏洞,沒有講的很明白,加上我這陣子沒在實驗室遇到 (是的,我跟他是同一個指導教授),所以一直沒有跟他說這個在國外已經「開發」好一陣子的安全漏洞。

Javascript 是在使用者端 (Browser) 跑的程式,理論上來說,讓使用者輸入自己的 Javascript 並不會有什麼問題,但實際上自從 XMLHttpRequest() 被大量應用後 (一開始發展 所使用的核心技術之一),有些人就發現 XMLHttpRequest() 是可以拿來當作攻擊的工具。

舉例說明

舉個例子說明會比較清楚。以目前最大的 為例,「修改個人資料」的頁面是在 http://www.wretch.cc/user/modify.php?admin_user=1 這個位置,會以 POST 的方式送給 http://upload.wretch.cc/user/do_modify.php,那麼我就可以在文章裡面嵌入一段 Javascript:(修改自 Use the XMLHttpRequest Object to Post Data)

var objHTTP, strResult;
objHTTP = new ActiveXObject('Microsoft.XMLHTTP');
objHTTP.Open('POST',
  "http://upload.wretch.cc/user/do_modify.php",false);
objHTTP.setRequestHeader('Content-Type',
  'application/x-www-form-urlencoded');
objHTTP.send("依照 form 的內容填入一些東西");
strResult=objHTTP.responseText;

上面的程式碼是 IE Only 的程式碼,但是要弄 IE & 並存的程式碼其實只是加個 if 判斷句後改用 new XMLHttpRequest 而已...

原因

問題來了:為什麼這樣做有效?那我隨便用 丟個東西進去 server 不就炸了?

答案是:使用 XMLHttpRequest() 連線時,會送出使用者的 Cookie,於是 server 端會以這個 Cookie 的擁有人去做 Javascript 要做的事情!接下來就 !@#$%^...

再一個例子

你會說我只是隨便講講?其實這件事情在兩個月前已經在 MySpace.com 上發生過了,而且還寫成 worm 自動感染:Cross-Site Scripting Worm Floods MySpace ()。

Google 應對的方法

回過頭來提 Google 對 XSS 的應對 這篇所提到的例子。

假設有個人在他自己的網站上 (假設是 www.example.com) 放個 Javascript,用 XMLHttpRequest() 連 mail.google.com (Gmail) 的某些 function,幫使用者刪除所有的 mail。在平常的時候,會因為 example.com != google.com 而無法產生 XMLHttpRequest Object,但是在「頁庫存檔」的時候就會在同一個 Domain 下!於是 必須避免這種情況:硬把 www.google.com 換成 IP address,這樣就沒問題了。

你可以測試 http://www.google.com/search?q=cache:http://www.google.com/ 這個頁面,會發現 會故意換到 IP address。

的另外一個服務是 。你會發現 可以讓你隨便修改 Template 填入各種 code,於是你就可以對 *.blogspot.com 下面的 site 進行 XSS 攻擊:但實際上 的 Control panel 放在 blogger.com,於是根本不怕你利用 Template 惡搞。

結語

最後,Javascript 是邪惡的,平常逛網站請不要打開 Javascript:請安裝 以避免被 ox 掉 :p

非官方的 WMF vulnerability Patch

已經有一堆網站在利用 WMF vulnerability (0 day!) 攻擊使用者了,而 居然說:我們將在 1/10 的例行性安全更新。換句話說,大約有一個星期的時間你的電腦將暴露在外?

Windows漏洞攻擊已出現 修補程式還不來

剛剛在 看到這份非官方版本的 patch (WMFHotfix-1.4.msi):

Unofficial temporary fix for the critical Windows WMF vulnerability which Microsoft will patch on 1/10/06. Tested on Windows 2000, Windows XP, and Windows XP Professional 64 Bit. The author recommends switching to the official MS patch when it becomes available. Includes c++ source.

FreeBSD 6.0 與 jail

因為要惡搞一些東西,不方便在現有的系統上跑,於是就跑去弄個 jail 出來用。比起 FreeBSD 4.x 需要自己寫一些 shell script 丟到 /usr/local/etc/rc.d/ 下,6.0 下的 jail 已經整合到系統內了,所以不太需要在自己寫 shell script。

而且 6.x 的 jail 也修掉不少 bug,像是 dmesg 偶而會出不來 (喂喂),reboot 不會理你 (喂喂)... 另外 df 也只會看到 /,不會看到其他的 slice 了。

要生出 jail 的環境,先是:

make buildworld
make installworld DESTDIR=/da1/jail0
make distribution DESTDIR=/da1/jail0

然後改 /da1/jail0/etc/master.passwd,把自己加進去,用 pwd_mkdb -d /da1/jail0/etc /da1/jail0/etc/master.passwd 重新編過一次,記得把家目錄開好 :p

然後是 /etc/rc.conf

ifconfig_fxp1_alias0="inet 192.168.113.10/24"
jail_enable="YES"
jail_list="testbase"
jail_testbase_devfs_enable="YES"
jail_testbase_devfs_ruleset="devfsrules_jail"
jail_testbase_exec="/bin/sh /etc/rc"
jail_testbase_hostname="testbase"
jail_testbase_ip="192.168.113.10"
jail_testbase_rootdir="/da1/jail0"
pf_enable="YES"

接下來弄 pf 的設定,所以去改 /etc/pf.conf

nat on fxp0 from 192.168.113.0/24 to any -> (fxp0)
nat on fxp1 from 192.168.113.0/24 to any -> (fxp0)

接下來把 jail 裡面的東西設一設,像是 resolv.conf

最後用系統給的 jail 就可以啟動了:

/etc/rc.d/jail start

第一次跑起來應該會卡在 ssh 產生金鑰的地方,所以就去喝個飲料之類的 :p (也可以自己先在 host 產生好,不過我這邊懶得講了,請自己去 /etc/rc.d/sshd 翻,需要三組金鑰)

弄完以後就可以 ssh 進去玩了,如果要跟 host 共用 ports directory,可以用 mount_nullfs 以 read-only 掛上來 (security issue),然後修改 /etc/make.conf,把本來會寫入的部分都改到 /tmp 下:

DISTDIR=        /tmp/distfiles
WRKDIRPREFIX=   /tmp/WRKDIR

這樣應該就沒什麼大問題了 :D

Google 對 XSS 的應對

自從 提到 Javascript 的邪惡之處後 (尤其是 ,Cross Site Scripting),我跟 Blake 學長就把 給裝起來了... 另外一方面,看到一些東西就比較常去思考要怎麼惡搞 :p

在防禦 XSS 這方面,就可以看出 有想到不少細節在做:

  • Blogger.com (Control Panel) 與 Blogspot.com (Template)。
  • Google 的頁庫存檔會使用 IP address 而不是用 "www.google.com"。

很明顯的,無名小站自訂 CSS 的地方...

無名小站沒禮貌的 Bot

看 awstats 統計記錄的時候發現從 mail.wretch.cc 來的連線量超大,而且超頻繁,去翻 log 發現原來是個沒禮貌的 bot:(列出最後幾筆)

203.133.33.2 - - [25/Dec/2005:00:13:50 -0800] "GET /feed/ HTTP/1.0" 200 21656 "-" "wcpan fetcher"
203.133.33.2 - - [25/Dec/2005:00:14:35 -0800] "GET /feed/ HTTP/1.0" 200 21656 "-" "wcpan fetcher"
203.133.33.2 - - [25/Dec/2005:00:18:57 -0800] "GET /feed/ HTTP/1.0" 200 21656 "-" "wcpan fetcher"
203.133.33.2 - - [25/Dec/2005:00:19:42 -0800] "GET /feed/ HTTP/1.0" 200 21656 "-" "wcpan fetcher"
203.133.33.2 - - [25/Dec/2005:00:24:24 -0800] "GET /feed/ HTTP/1.0" 200 21656 "-" "wcpan fetcher"

不支援 Last-Modified 浪費我的頻寬,然後次數又超頻繁,用 .htaccess 擋掉:

#
order allow,deny
deny from 203.133.33.
allow from all

Update:據說修好了,先改回來...

Gmail 所使用的防毒軟體

雖然 不願意透露 是使用哪套防毒軟體,有人還是利用邪惡的方法 (把病毒丟進去看看有哪些被抓出來,然後再跟已知軟體的列表比較) 找出來了, 使用 Which Software Scans Gmail's Attachments?Gmail AntiVirus = Sophos

測試的報告在 這裡這裡,與 Sophos 完全符合。

我本來以為 會自己搞 (因為我覺得 的量太大,傳統的作法可能不適合?),沒想到還是採用現有的 pattern 掃瞄 :)

Archives