話說今天網路程式設計語言PHP的創始人 Rasmus到交大演講,我聽了學長的推廌之後,也跑去聽。
一聽之下,驚為天人!  很多自己目前寫 php code存在的問題他今天都有提到。
分享如下:

一、演講前我參考到的別人演講心得筆記
二、演講投影片分享  => http://talks.php.net/show/nctu
三、Callgrind => 一套程式追蹤工具
四、http_load => 網站壓力測試工具
五:XDebug => 一套除錯工具 
六:test-failures  =>  php程式碼錯誤
七:XSS => (Cross Site Scripting) 網站攻擊

心得:話說我學習php程式語言是大三的時候,那時修了資料庫相關的課,於是自己拿了一本書慢慢 k。我所有的php概念來源,幾乎都來自於那本書(包括學習html語法)。但是自從學會了基礎php後,其實我已經沒有再成長了,一直在寫程式,卻沒有再學習新的概念與新的方法,所用的方法都還是當初學PHP3的概念,反正程式交的出來就好了。

話說現在PHP已經進展到PHP5了。有些更方便的function比如foreach,安全性議題、MVC架構、AJAX語法、美工設計的概念,其實我一直沒有花時間去進修,每次都在很倉促的情況下要把程式趕出來。今天聽了演講以後,察覺到自己的不足之處,也剌激自己成長的動機。

以下是純技術的文章內容,非資工背景或沒摸過PHP語言的看不懂的人可以略過...

一、演講心得筆記

話說我本來還在考慮要不要去參加,看了這個網頁的介紹之後,馬上就心動了。心中就想著,演講者一定很有料。

二、演講投影片分享  => http://talks.php.net/show/nctu

除了本次演講的投影片,很多跟 php相關的投影片都放在http://talks.php.net/  那可真是個寶典,就看有沒有時間去挖倔。
比如星期一在中央大學講的Hacking with PHP 投影片也可以找的到。
有關安全性問題的投影片也有 http://talks.php.net/index.php/Security 
因為數量太多,不知從何下手,真的要花時間慢慢k了。


三、Callgrind => 一套程式追蹤工具

可以將程式執行的函數畫出很漂亮的流程圖,方便分析程式用
不過官方網站我剛剛連不上去,還需再研究一下。

四、http_load => 網站壓力測試工具

可以測試網站最多能讓多少人連線
這套我也是沒用過,以前都寫小網站,使用者人數不會很高,所以還沒不到,但可以留著以後參考

五:XDebug => 一套除錯工具 

XDebug 教學

這個就說到我心中的痛了,以前寫 php程式最麻煩的就是debug這部份。程式到底那裡出問題每次都讓我很頭大。
只透過猜測錯誤點然後慢慢echo的方式,算起來以前我寫程式的開發時間裡,大概有快1/2的時間拿來debug吧@@
以前也聽說過有XDebug這套工具,但總是懶的學習新的東西,反正慢慢echo還是會找的出問題,所以就一直給他echo下去了。
這次剛好又是個重新認識的機會。這次一定要把Xdebug弄熟。


六:test-failures  =>  php程式碼錯誤

以前寫程式曾經有遇過stack爆了,資料庫在特定語法會爆,或者是程式的陣列值異常,現在看到有test-failures列出了一堆已發現問題,才了解,原來不是只有我遇到這些問題,有些bug是程式語言本身所造成的。唉~~~ 每當出現一次這種bug,後面代表著是三個爆肝日的成果。

 

七:XSS => (Cross Site Scripting) 網站攻擊

我也遇過被入侵的問題,而且一直到重灌了,都還不知道是在那邊被入侵了。
所以這個就有的玩了,透過在正常的輸入裡改成惡意程式碼,達成不可告人的目的。
它舉了一個例子是使用Firefox 2.0.0.5版本的使用者,只要使用以下語法:
mailto:%00%00../../../../../../windows/system32/cmd".exe
../../../../../../../../windows/system32/calc.exe " - "

blah.bat
就可以執行任意程式 ( 相對路徑要指對、執行的程式可換 )
或者在沒有輸入欄位檢查的欄位裡使用    ?foo=';alert(0);//
就可以執行後面 alert(0);// 這段程式碼

而他也建議使用 filter來過濾異常字元,比如
XSS FILTER
$email = filter_input(INPUT_POST,"name',FILTER_VALIDATE_EMAIL);
$raw_msg = filter_input(INPUT_POST,'msg',FILTER_UNSAFE_RAW);

相關 php filter在這裡http://tw.php.net/filter

有關安全性議題的資訊可以在這裡看到 http://sla.ckers.org/forum/



以上啦哩啦雜的列了一堆,其實這是我的課後筆記啦,拿來給自己未來參考用

 

the end

 

arrow
arrow
    全站熱搜

    teralin 發表在 痞客邦 留言(0) 人氣()