首頁 >後端開發 >php教程 >常見的php攻擊(6種攻擊詳解)

常見的php攻擊(6種攻擊詳解)

不言
不言原創
2018-04-03 11:26:212316瀏覽

這篇文章介紹的是常見的php攻擊(6種攻擊詳解),在這裡分享給大家,也可以給有需要幫助的人一個參考,大家一起來看一看吧

#1、SQL注入 

SQL注入是一種惡意攻擊,使用者利用在表單欄位輸入SQL語句的方式來影響正常的SQL執行。還有一種是透過system()或exec()指令注入的,它有相同的SQL注入機制,但只針對shell指令。


[python] view plain copy


 常見的php攻擊(6種攻擊詳解) 常見的php攻擊(6種攻擊詳解)

  1. #$username = $_POST['username'#] ;  

  2. $query = "select * from auth where username = '".$username..$ #"'";  

  3. #echo $query;  

  4. $db = new mysqli('localhost''demo'##, 'demo

  5. # ', 'demodemo'
  6. );  

    $result = $db->query($query);  ## ###################if###### ($result && $result->num_rows) {  ##################### #########    echo ###"
    Logged in successfully"######;  #####################;  ##########
  7. else {  

  8. ##    echo "
    Login failed";  

  9. }  










#防止SQL注入選項:

*使用mysql_real_escape_string()過濾資料常見的php攻擊(6種攻擊詳解)*手動檢查每一資料是否為正確的資料類型常見的php攻擊(6種攻擊詳解)

*使用預處理語句並綁定變數
  1. *使用準備好的預處理語句*分離資料和SQL邏輯*預處理語句將自動過濾(如:轉義)

    *把它當作一個編碼規範,可以幫助團隊裡的新人避免遇到以上問題
  2. [python] view plain copy

  3.  

  4. $query = 

    'select name, district from city where countrycode=?'
  5. ;  

    #############if###### ($stmt = $db->prepare($ query) ){  ######################    $countrycode = ###'hk'###########    $countrycode = ###'hk'###########    ###########################################1 ############    $stmt->bind_param(###"s"######, $countrycode);  ##################」 #######    $stmt->execute();  #######
  6.     $stmt->bind_result($name, $district);  

  7. ##    while    while

  8. #    while#   # ( $stmt ($stmt->fetch() ){  

  9.         echo $name.',       echo $name.',       echo $name.',       echo $name.

    ',       echo $name.
  10. ',       echo $name.
  11. ',  ”##', 

    ##.$district;  

  12.         echo '
    '# 

  13. ##    }  


    $stmt->close();  


#}  








#2、XSS攻擊 

XSS(跨站點腳本攻擊)是一種攻擊,由使用者輸入一些資料到你的網站,其中包含客戶端腳本(通常JavaScript)。另一個web頁面,這個腳本將被執行。 #*損壞網頁或表單*竊取cookie
*AJAX(XMLHttpRequest)
防止XSS攻擊

為了防止XSS攻擊,使用PHP的htmlentities()函數過濾再輸出到瀏覽器。 #htmlentities()的基本用法很簡單,但也有許多進階的控制,請參考XSS速查表。安全,假設一個PHPSESSID很難猜測。

#4、會議捕獲和劫持 


這是與會話固定有著相同的想法,然而,它涉及竊取會話ID。可以透過XSS和JavaScript竊取。請確保使用者使用SSL

5、跨站點請求偽造(CSRF) 


CSRF攻擊,是指一個頁面發出的請求,看起來就像是網站的信任用戶,但不是故意的。它有許多的變體,例如下面的範例:


[python]

 view plain copy



  1. 常見的php攻擊(6種攻擊詳解)'http://example.com/single_click_to_buy.php?user_id=123&item=12345' #>  


#防止跨網站請求偽造
一般來說,確保使用者來自你的表單,並且匹配每一個你發送出去的表單。有兩點一定要記住:
對使用者會話採用適當的安全措施,例如:給每一個會話更新id和使用者使用SSL。
產生另一個一次性的令牌並將其嵌入表單,保存在會話中(一個會話變數),在提交時檢查它。


6、程式碼注入 

#程式碼注入是利用電腦漏洞透過處理無效資料所造成的。問題出在,當你不小心執行任意程式碼,通常透過檔案包含。寫得很糟糕的程式碼可以允許一個遠端檔案包含並執行。如同許多PHP函數,如require可以包含URL或檔名,例如:


#[python] view plain copy


常見的php攻擊(6種攻擊詳解)常見的php攻擊(6種攻擊詳解)

  1.   

  2. ##。

  3. #    Choose theme:  

  4.     

          ##¡## green>Green  
  •         

    以上是常見的php攻擊(6種攻擊詳解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

    陳述:
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn