跨域、sql注入、xss攻擊


這幾天遇到這三個問題,現在簡單的記錄下來。

1、跨域

    如我服務器的域名是www.test1.com,我在另一個服務器www.test2.com通過ajax訪問www.test1.com的數據時,就引起跨域的問題,提示錯誤 No 'Access-Control-Allow-Origin' header is present on the...

    網上有很多文章,可以搜索下。http://blog.csdn.net/liruxing1715/article/details/18707605   http://twlidong.github.io/blog/2013/12/22/kua-yuan-zi-yuan-gong-xiang-cross-origin-resource-sharing-cors/

    jquery已經考慮到了這個問題,在ajax中封裝了應對跨域的方法。參考上面黏出的第一個鏈接,我解決了問題。

2、xxs攻擊  xss表示Cross Site Scripting(跨站腳本攻擊),通過插入惡意腳本,實現對用戶游覽器的控制

   假如用戶提交的數據含有js代碼,不做任何處理就保存到了數據庫,讀出來的時候這段js代碼就變成了可執行的代碼,將會產生意向不到的效果。一般用戶提交的數據永遠被認為是不安全的,在保存之前要做對應的處理。這次我就遇到了這個問題,

   我提交的內容<script>alert(1111)</script>,或者<a href="www.baidu.com">百度</a>,讀出來的時候,將直接彈出1111,或者百度是有效的超鏈接,這個顯然是不行的。

   提交的數據用下面的這個方法過濾一下,可以有效的防范xxs的攻擊:

   

/*
  過濾用戶代碼
 */
function security($str){
	$str = trim($str);  //清理空格
    $str = strip_tags($str);   //過濾html標簽
    $str = htmlspecialchars($str);   //將字符內容轉化為html實體
    $str = addslashes($str);
    return $str;
}

  

3、sql注入攻擊    SQL注入攻擊中以SQL語句作為用戶輸入,從而達到查詢/修改/刪除數據的目的

    我用的PDO連接,但是如果不用參數綁定的話,是依然可以sql注入的。應該多注意使用綁定參數!

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM