比如把sql的新增查詢修改直接寫在index.php裡面,會比放在另外一個sql.php,然後用include("sql.php");更危險嗎?
感覺直接右鍵檢視原始碼就能看到sql語法很危險,但具體危險在哪裡呢?
.PHP 是屬於 Server Side 的程序,所以,
在瀏覽器檢是原始檔,是完全看不到 PHP 的原始碼。
PS:前提,你的 .PHP 檔是要執行 Server Side CGI 的路由,如果沒設,那當然只是一般檔案,那瀏覽器當然可以看到原始碼。
一般將 sql 指令統統寫到index.php
危險程度當然是有。
但並不是你想像的看網頁原始碼就可以看到程式碼。
當然,這的確也是原因可能性之一。
因為如果說WEB SERVER沒裝PHP的情況下。
確實有機會會直接將程式碼用文字模式全部秀出來。
但理論上來說,在有能執行PHP的情況下。是一定在網頁上看不到的PHP相關的程式碼。
(不要跟我說echo或print, 我一定會很想打你)
一般會擔心的危險。大多數是容易被猜到及容易運行。
畢竟 index.php 來說,都是指定的預設運行。並不需要用 「域名/index.php」就可以運行的。
所以當然在安全性上就多了十分危險性。也比較容易被人家注入。
如果還想要更進一步了解資安安全議題。利用一下這一次的鐵人賽吧。
我記得好像有資安的主題存在。去看看人家寫的。
我覺得會有危險應該是資料庫帳密外流,但資料庫連線預設的是localhost除非你有開遠端連線的權限,但也要剛好你開的是對外全開但通常會開會限定連線ip。至於sql注入使用pdo連線可避免。
通常會有危險的是人不會是程式,程式你寫的再爛沒有外流別人也很難破解,你可以看有opensouse的cms,三不五時會要你更新因為有人找到漏洞你不更新等著被入侵。
遇過主機被入侵被植入跳板程式,還有phpmyadmin密碼被破解,這都是因為管理階層完全沒有資安概念只覺得主機裝好可以用就好,就沒人去管他連防火牆也沒裝,連幫phpmyadmin設定安全目錄都沒有。
結論危險的永遠是無知的人,而不是程式。