下午好,安全的笨
我有關於CI中的安全性有些懷疑,第一個是:
我有一個控制器:news.php,並在其中我有一個方法所謂視圖
例子:
class News extends CI_Controller{
public function view($id)
{
$this->load->model('news_model');
$this->news_model->get_by_id($id);
// ...
}
}
這種工作形式是安全的?沒有通過URL注入SQL的風險?考慮到這個頁面是如此訪問mywebpage/news/number_id。通過intval()或不必要的過濾會很有趣?
我的第二個問題是:
默認情況下笨XSS過濾器可以POST和GET,但未知的方式通過笨篩選HTML,我創建了一個幫手笨下來,有一些類似於原生方式笨?
function remove_xss_html($string){
if(is_array($string)){
$return_array = array();
foreach($string as $item)
{
if(!get_magic_quotes_gpc())
{
$return_array[] = addslashes(htmlspecialchars(strip_tags($item)));
}
else
{
$return_array[] = htmlspecialchars(strip_tags($item));
}
}
return $return_array;
}
else
{
return htmlspecialchars(strip_tags($string));
}
}
第三和最後一個問題是:
如果我把一個變量$這個 - >輸入 - >後(「my_var」)直接向沒有過濾器的數據庫,我運行的風險一個SQL注入? CodeIgniter或過濾器如此安全?
IMPORTANTE:我的英語不太好,我用谷歌翻譯和修復我可以。
謝謝大家......
感謝您的解釋,但我用的活動記錄,是的,我總是確定的功能EX功能測試:該參數的默認值($ ID = false){},那麼我會顯示一個替代內容if($ id){} – user875690