<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            php語言

            PHP的漏洞-如何防止PHP漏洞

            時間:2024-12-27 07:38:25 php語言 我要投稿
            • 相關推薦

            PHP的漏洞-如何防止PHP漏洞

              漏洞無非這么幾類,XSS、sql注入、命令執行、上傳漏洞、本地包含、遠程包含、權限繞過、信息泄露、cookie偽造、CSRF(跨站請求)等。下面是小編為大家帶來的關于PHP的漏洞的知識,歡迎閱讀。

              1.xss + sql注入

              其中占大頭的自然是XSS與SQL注入,對于框架類型或者有公共文件的,建議在公共文件中統一做一次XSS和SQL注入的過濾。用PHP寫個過濾函數,可由如下所示:

              $_REQUEST = filter_xss($_REQUEST);

              $_GET = filter_xss($_GET);

              $_POST = filter_xss($_POST);

              $_COOKIE = filter_xss($_COOKIE);

              $_POST = filter_sql($_POST);

              $_GET = filter_sql($_GET);

              $_COOKIE = filter_sql($_COOKIE);

              $_REQUEST = filter_sql($_REQUEST);

              最簡單的filter_xss函數是htmlspecialchars()

              最簡單的filter_sql函數是mysql_real_escape_string()

              當然,誰都知道這種過濾filter_sql只能過濾字符型和搜索型的注入,對于數字型是沒有辦法的,但也說明做了這層過濾后,只需在后面注意數字型的SQL語句就可以了,遇到了加intval過濾就可以了,這就變得容易多了。

              2. 命令執行

              對于命令執行,可以從關鍵字入手,總共可分為3類

              (1) php代碼執行 :eval等

              (2)shell命令執行:exec、passthru、system、shell_exec等

              (3) 文件處理:fwrite、fopen、mkdir等

              對于這幾類需要注意其參數是否用戶可控。

              3.上傳漏洞

              對于上傳漏洞,也是重點關注的地方,要仔細分析它的處理流程,針對上傳的繞過方式是很多的,最保險的方式:在保存文件是采用文件名隨機命名和后綴白名單方式。其次要注意的一點是上傳文件的地方可能不止一處,不要有遺漏,可能會碰到這樣的情況,突然在某個目錄里面包含了一個第三方的編輯器在里面。

              文件包含漏洞涉及的函數如include() 、include_once()、require()、require_once()、file_get_contents()等

              最常見的還是出在下載文件功能函數,例如download.php?file=../../../etc/passwd 這種類型中。

              4. 權限繞過

              權限繞過可分為兩類吧

              (1)后臺文件的未授權訪問。后臺的文件沒有包含對session的驗證,就容易出現這樣的問題

              (2)未作用戶隔離,例如mail.php?id=23顯示了你的信件,那么換個ID, mail.php?id=24就查看到了別人的信件,編寫代碼是方便,把信件都存在一個數據表里,id統一編號,前端展現時只需按id取出即可,但未作用戶隔離,判定歸屬,容易造成越權訪問。

              這樣的例子是很常見的,給某銀行做評估是就經常發現這種漏洞。

              5. 信息泄露

              信息泄露算是比較低危的漏洞了,比如列目錄這種就屬于部署問題,而與代碼審計無關了,而像暴路徑、暴源碼這種是需要防止的。曾經遇到這樣的代碼


            【PHP的漏洞-如何防止PHP漏洞】相關文章:

            php防止sql注入漏洞過濾函數的代碼08-22

            PHP頁面漏洞分析的方法08-13

            PHP漏洞:命令注入攻擊10-23

            PHP網站常見的安全漏洞11-07

            PHP常見漏洞的防范措施11-08

            如何用fuzz技術挖掘Android漏洞 Android漏洞該如何防御11-01

            如何堵住路由器漏洞11-14

            php怎么防止sql注入10-15

            php防止SQL注入的方法10-13

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看