⑴ 不會php和SQL,能做漏洞挖掘嗎
如果基礎不夠扎實、自己開發還是比較冒險的,如果想防止漏洞可以下載pageadmin cms、discua cms都是比較簡單的、直接下載就可以使用。
⑵ php漏洞與代碼審計過程中需要注意的幾點
1.xss + sql注入
其中佔大頭的自然是XSS與SQL注入,對於框架類型或者有公共文件的,建議在公共文件中統一做一次XSS和SQL注入的過濾。寫個過濾函數,可由如下所示:
$_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);
這里有一點需要說明,$_REQUEST雖然等於$_GET+$_POST,但他們是獨立的數組,也就是說假設改變了$_GET的值,但$_REQUEST的值還是原來的值,所以過濾時都不能落下,至於其他的如$_FILE之類的就可忽略了。
最簡單的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 if(empty($_GET['a'])) {…} ?>
表面上似乎沒問題,可是當請求變為 xx.php?a[]=1時,即參數變為數組的時候,就會發生錯誤以致路徑泄露,而用isset判斷則不會,當然一個個防太麻煩,建議在配置文件中關閉錯誤提示,或者在公共文件中加入如下代碼以關閉錯誤顯示功能:
<?php error_reporting(0);?>
⑶ php中有哪些容易導致漏洞的危險函數
最危險的當屬:eval了,eval — Evaluate a string as PHP code,把字元串當做php代碼來執行,很多一句話木馬就是用的這個函數來構造的,你可以去搜」php一句話木馬「看看。
include/require 這兩個函數也被黑客經拿來引用木馬。
⑷ php漏洞修復
打開php配置文件,php.ini,然後在裡面搜索dll,把你下載的布丁照著格式復制一行就行了。比如你下載的補丁為abc.dll;就加一行extension=abc.dll
⑸ 關於PHP漏洞修復
因為官方已經停止更新了,是不會出新包的。如果想要修復,只能把自己的版本迭代,升級到php7。物競天擇,只能狠狠心更新版本了,項目可能要大換血
⑹ PHP漏洞有哪些
首先和ASP一樣,對敏感字元過濾不嚴會導致注入..
還有PHP很有特點,他得運行程序是很人性化得,如果設置不好,隨便提交個有錯得地址之類就會告訴你絕對路徑之類得敏感信息.
PHP包含過濾不嚴會導致讀取任意文件.
變數過濾不嚴會導致偽造數據欺騙伺服器.
等等等等好多..我說得這些都是比較常見和常用得
⑺ 零基礎如何學習挖漏洞
師傅領進門,修行在個人。
國內研究洞挖掘所謂的「地面」的習慣,吃各種各樣的編程書籍,然後研究挖洞,這個問題不是好學的編程式控制制的程度,和純首先學習編程也很無聊,很多人可能無法堅持。
漏洞利用
讓我們來看看一些更高級的漏洞,比如各種可變覆蓋漏洞,例如由unserialize引起的代碼執行,我們可能會發現很難開始查看這些漏洞。然後你需要回過頭來看看提取和其他函數的具體用法。
每一對$_REQUEST的變數生成過程是什麼?unserialize函數的執行流程是什麼?然後去看以前的技術文章將會是開明的。
這只是一個基本的PHP漏洞挖掘,然後熟練地嘗試查看一些漏洞分析框架,比如thinkphp,這些也涉及OOP的知識,所以回到學習PHP OOP編程,然後繼續。
總結
所以我認為還是先好好學習好語言,然後再學其他的會更扎實。
⑻ thinkphp 怎麼利用漏洞
可以在騰訊智慧安全頁面申請使用騰訊御點
然後使用這個軟體上面的修復漏洞功能
直接對電腦的漏洞進行檢測和修復就可以了