Archive for August, 2007

變數在 xx 的處理方式

這陣子抓 bug 的時候發現連自己都要想半天,還是整理起來好了… 假設 $v 是未經過濾的變數,要放到不同地方要做不同的處理:

  • MySQL Statement:這已經是標準了,mysql_escape_string($v) 或是 mysql_real_escape_string($v),或是改用 prepare + execute 的模式。
  • 放在 HTML Form 的 input 元素裡面:要用 htmlentities($v, ENT_QUOTES) 過濾後用 double-quote 包起來,原因是 $v 可以是 "><script> ... (一堆邪惡 js 程式碼) ... </script>",這是一種 XSS 攻擊。
  • 放在網址的 GET 參數裡:用 urlencode($v)
  • 呼叫外部程式帶入參數時 (像是 system() 呼叫):用 escapeshellarg($v)

lighttpd 1.4.17

我在 Lighttpd 1.4.16 的 404 Handler 行為改變 提到的情況被視為是 bug,在 1.4.17 修正了:1.4.17 – for the sake of the server.error-handler-404

看起來又修正了一堆東西,看起來有些還蠻重要的… 不過,lighttpd 1.5 看起來還好遙遠啊:1.5.0 的 unclosed ticket

Redirection Plugin

的 Blog 上看到的 WordPress Plugin,以往必須寫在 .htaccess 寫 mod_rewrite 的工作,現在可以用 這套 Plugin 設定。

在網頁上有個五分鐘的影片可以看,看完以後就大致知道要怎麼操作,除了一般的一對一對應外,還可以設定 Regular Expression (像是把 /blog/plugins/(.*) 重導到 /plugins/$1),甚至還可以做 proxy (影片中的 )。另外還有一些奇怪的功能 (像是可以設定 /fun 指到隨機的頁面 XD),其實看起來還蠻有趣的…

可是實際會需要這個用途的人到底有多少呢… @_@

Bloglines Beta

剛剛看到 Bloglines Beta:

看得出來抄了很多 的優點,但有很多小細節還是沒注意到。

GPL 與 PHP License

這陣子在 的 mailing list 上剛好提到 PHP binding 的問題,結果引伸出來的 license 問題。查了資料以後,在 上有張表格:List of FSF approved software licenses

簡單來說, 不相容的原因都一樣:因為廣告條款的關係。

想要用其他方式解套 (像是有人提出用 過水) 都會因為 有感染性而不太容易處裡: 軟體本身是 MIT-style 與 BSD-style license,但是他產生出來的 wrapper code 因為使用了 GPL library,所以包成 binary 時還是會受到 GPL 影響。

反正這類問題滿天飛…

狼與辛香料 II 以及動畫化消息

買回來以後其實很快就看完了 (這本在我書單裡的優先權很高的),一直沒有 post 出來而已 :p 照的說法是:

01:16 <@S> 鹹狼第二本….. 這….. 商業詐欺 期貨破產 黑吃黑 威脅利誘 都來了… !@#$%

我覺得這個描述實在太棒了 XDDD 總而言之,這本輕小說仍然保持著極高的水準,依然是強烈推薦大家買來看。

動畫化的消息是在日文版第五本的書腰上公佈的,不過這種小說水準超高 + 內心戲超多的情況下,請不要太期待 XDDD

jQuery 1.1.4

1.1 的最後一個版本:

這個版本速度比 1.1.3.1 更快,看起來是對幾個最簡單、最常用的 Selector 特殊處理,像是 $("#id") 的改善就很明顯,在所有的瀏覽器裡都快了許多。另外多了一些新的功能,像是 .slice()… (這功能好!)

大小的部份,可以看到 慢慢變大了。1.1.2 是 21235 bytes,1.1.3 是 21472 bytes,1.1.3.1 是 21557 bytes,1.1.4 是 22679 bytes,這次長了 1KB。

1.1.3.1 到 1.1.4 中間的新功能與 bug fix 在 可以看到,看起來不少 bug 被修正… (這代表會有更多 bug?XD)

CSS 攻擊法

這篇講到的兩個誘導使用者進行不安全操作的方法:

  • CSS overlays:利用 iframe + CSS,只顯示部份的內容,讓使用者去誤擊某些不安全的操作。
  • Submit buttons:把 submit button 的 border 拿掉,字體改一改,讓他看起來很像普通的 link。

前面那個可以用 js + Referer 解決大部分的問題 (對於有防火牆把 Referer 擋掉,而且沒有 js ability 的用戶,暫時想不到解法…),後面可以用 Double Cookie 解決。

來找看看 有沒有 Plugins 可以加強這些安全上的問題…

長豆芽的鍵盤

這篇 Keyboard with Plants Growing Inside is More Gross Than Cool 的鍵盤看起來好棒,綠意盎然啊 XD

(圖片就不 link 了,自己連過去看吧)

WWW SQL Designer

上看到這個用 JavaScript 做出來的介面,拿來畫 SQL 關係圖還不錯:

要注意的是他產生出來的 SQL 指令並沒有把 FK 放進去 (至少 都是),所以畫完後要自己轉成 SQL CREATE TABLE 的指令。雖然如此,但對於拿來釐清一些複雜的架構還不錯…