作者 主題: 請教關於PHP的register_globals = on 開放後安全性問題?  (閱讀 6478 次)

0 會員 與 1 訪客 正在閱讀本文。

myz

  • 活潑的大學生
  • ***
  • 文章數: 433
    • 檢視個人資料
請各位大大幫幫忙...
想請教關於register_globals = on 開放後安全性問題
這是公司之前請別人寫的php程式,有購物車功能
對方說要開放register_globals = on 才行,但是我對PHP程式不熟,我只知道開放register_globals = on 有危險。
以下是對方回覆信件的內容,可否請各位大大幫忙,是否正確?

--------------------------------------------
您好
 
非常抱歉
本系統使用的是與 OSCommerce 類似的語法
這是目前全球市場率最高的OSCommerce軟體都需要啟用register_globals = on
 
 
但本系統只採用session而未採用globals variable
因此不會有globals變數被遠端攻擊的問題
ps.那是因為原先的Linux設計,是將session的暫存資料置於/tmp,而/tmp是所有人都可以存取,internet也可以喔
ps.您那台機器的session是置於/var/lib/php/session 下,只要限制不被非法區域存取就不會有問題
 
 
本系統只是啟用register_globals = on 讓 session可寫入 Linux內安全的暫存區
所謂安全的暫存區係指internet無法存取的暫存區
 
如果不用session而改用cookie那麼問題會更多,
例如,使用者如果不啟用cookie那購物車就會動不了
 
如果改用post或get 那駭客攻擊就會更?#91;容易
ps.遠端猜就可以,還不用進入您的新機
 
linux系統的預設警告是說
要用register_globals = on 是可以
不過要避免暫存區被「溢位攻擊」
基本上,如果學過作業系統都知道,任何系統都需要暫存區以進行運算與運作
只是要懂得保護它
 
例如:把暫存區換位置或者把session.name = PHPSESSID 改名字
 
此外,我在每個重要的form內,有偷偷藏了隱藏變數,要寫入資料庫,要先猜到那個變數,再猜到那個值,
而且也要猜到session的變數與session的值,如果真的猜得到,那root的密碼早就被猜到了
這可是比OSCommerce安全
 
其實,還有可以更安全的絕招
那就是把root更名,
再建一個只有一般權限的假root
 
那最算會被入侵,它也動彈不得
 
ps.一般而言,那它一定是內賊
 
 
 
所以無需改寫
非常抱歉
--------------------------------------------

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4048
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
只有想【混混沌沌】過日子才會繼續使用 on 的設定值!

因為它無法區分來源是 post, get, file, server, session.... 等,

在 php.ini 裡的說明,
register_globals = Off         [Security, Performance]

拿舊程式來當作現在的搪塞理由,基本觀念都錯了,那還..............唉
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4048
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
越看他的說明越火大,這次被騙就算了,下次注意點就好了,

下次找梁楓出版的 php 認證班的寫好了,至少不會有這種鳥問題。
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

kiang

  • 活潑的大學生
  • ***
  • 文章數: 310
    • 檢視個人資料
    • 就這間電腦工作室
呵呵,與 OSCommerce 類似的語法,這說詞真有趣,明明就是 OSCommerce 改出來的...

OSCommerce有能夠在 register_globals = off 環境下作業的 hack,只是他們懶得改罷了。
****************************************************
Finjon Kiang / 江明宗
Just This Computer Studio / 就這間電腦工作室
Website: http://olc.tw
****************************************************

thucop

  • 憂鬱的高中生
  • ***
  • 文章數: 148
    • 檢視個人資料
引述: "myz"
請各位大大幫幫忙...
想請教關於register_globals = on 開放後安全性問題
這是公司之前請別人寫的php程式,有購物車功能
對方說要開放register_globals = on 才行,但是我對PHP程式不熟,我只知道開放register_globals = on 有危險。
以下是對方回覆信件的內容,可否請各位大大幫忙,是否正確?

--------------------------------------------
您好
 
非常抱歉
本系統使用的是與 OSCommerce 類似的語法
這是目前全球市場率最高的OSCommerce軟體都需要啟用register_globals = on
 
 
但本系統只採用session而未採用globals variable
因此不會有globals變數被遠端攻擊的問題
ps.那是因為原先的Linux設計,是將session的暫存資料置於/tmp,而/tmp是所有人都可以存取,internet也可以喔
ps.您那台機器的session是置於/var/lib/php/session 下,只要限制不被非法區域存取就不會有問題
 
 
本系統只是啟用register_globals = on 讓 session可寫入 Linux內安全的暫存區
所謂安全的暫存區係指internet無法存取的暫存區
 
如果不用session而改用cookie那麼問題會更多,
例如,使用者如果不啟用cookie那購物車就會動不了
 
如果改用post或get 那駭客攻擊就會更?#91;容易
ps.遠端猜就可以,還不用進入您的新機
 
linux系統的預設警告是說
要用register_globals = on 是可以
不過要避免暫存區被「溢位攻擊」
基本上,如果學過作業系統都知道,任何系統都需要暫存區以進行運算與運作
只是要懂得保護它
 
例如:把暫存區換位置或者把session.name = PHPSESSID 改名字
 
此外,我在每個重要的form內,有偷偷藏了隱藏變數,要寫入資料庫,要先猜到那個變數,再猜到那個值,
而且也要猜到session的變數與session的值,如果真的猜得到,那root的密碼早就被猜到了
這可是比OSCommerce安全
 
其實,還有可以更安全的絕招
那就是把root更名,
再建一個只有一般權限的假root
 
那最算會被入侵,它也動彈不得
 
ps.一般而言,那它一定是內賊
 
 
 
所以無需改寫
非常抱歉
--------------------------------------------


如果單單是購物車,這個 session 有什麼關係呢?
有其它方法可以克服的!
只是限制比較多而已!
~ 學無止境 ~~

日京三子

  • 全區板主
  • 俺是博士!
  • *****
  • 文章數: 8829
    • 檢視個人資料
    • http://www.24online.cjb.net
簡單的說,因為懶得改,因為寫CODE的人不想修改之前的模組....



很多問題都是來自於這樣子開始.....  :evil:
哈克不愛的多合一輸入平台----->新香草口味
過去的時間不斷流逝,抹去的眼淚已成追憶;
乾枯的雙手無力阻止,再會了我遠去的曾經。

twu2

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 5394
  • 性別: 男
    • 檢視個人資料
    • http://blog.teatime.com.tw/1
引述: "日京三子"
簡單的說,因為懶得改,因為寫CODE的人不想修改之前的模組....


其實也很難說是誰的問題.
因為... 由以前的經驗來看, 有很多人客都認為花錢買了之後, 後續的修改都應該是免費的...

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4048
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
引述: "twu2"
引述: "日京三子"
簡單的說,因為懶得改,因為寫CODE的人不想修改之前的模組....


其實也很難說是誰的問題.
因為... 由以前的經驗來看, 有很多人客都認為花錢買了之後, 後續的修改都應該是免費的...


專案經理不是吃剩飯就幹的來的,和客戶接洽協調整個案子的進度,到最後收錢、維護,什麼是 bug ?什麼又是 fix?要被凹到什麼程度?這都不是一天到晚搞技術可以去了解掌握的。

最後真的快要變老話了,【搞電腦搞技術的,快快跳脫吧!除了電腦上的技術這個世界大的很,想要維持自己的競爭力,就快去看看外面的世界吧!】
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

myz

  • 活潑的大學生
  • ***
  • 文章數: 433
    • 檢視個人資料
引述: "twu2"
引述: "日京三子"
簡單的說,因為懶得改,因為寫CODE的人不想修改之前的模組....


其實也很難說是誰的問題.
因為... 由以前的經驗來看, 有很多人客都認為花錢買了之後, 後續的修改都應該是免費的...

這案子還沒核銷耶~~~我應該可以要求吧~~

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4048
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
引述: "myz"
這案子還沒核銷耶~~~我應該可以要求吧~~


簡單,業主說改就改,哪來那麼多廢話,要不然叫它證明 on, off 安全性的差異,

on 會被入侵 off 也會,當然效能的差異也請她實際測試出兩者無差異,

要是他無法證明就叫他改。
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

kiang

  • 活潑的大學生
  • ***
  • 文章數: 310
    • 檢視個人資料
    • 就這間電腦工作室
引述: "myz"

這案子還沒核銷耶~~~我應該可以要求吧~~


一定要的 :wink:
****************************************************
Finjon Kiang / 江明宗
Just This Computer Studio / 就這間電腦工作室
Website: http://olc.tw
****************************************************