PHP-代码审计-文件删除
生活随笔
收集整理的這篇文章主要介紹了
PHP-代码审计-文件删除
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
概述
- 文件刪除漏洞出現在文件管理功能的應用上比較多,這些應用一般也都有文件上傳和讀取的功能,刪除原理漏洞原理跟文件讀取漏洞差不多,利用的函數不一樣而已
函數
- 常出現的函數是unlink()
挖掘經驗
- 直接搜索帶有參數變量的unlink(),依然采用回溯的方式即可
代碼分析
任意文件刪除分析
if($action=='delete'){if(is_array($filenames)){foreach($filenames as $filename){if fileext($filename)=='sql'{@unlink('../databack/'.$filename) }}}else{if(fileext($filenames)=='sql'){$filenamearray=explode(".sql",$filenames);@unlink('../../databack',$filenames);@unlink('../../databack/sql/metinfo_'.$filenamearray[0].".zip");}else{ //如果不是sql文件,直接刪除@unlink('../../databack/'.$fileon.'/'.$filenames);} }- 這段代碼首先判斷action參數值是否是delete。如果是就進入文件刪除功能,在代碼:
- 判斷如果不是sql文件后,就直接在databack目錄刪除提交的文件名,代碼$filenames函數從get中提交,只要請求
- 即可刪除index.php文件
總結
以上是生活随笔為你收集整理的PHP-代码审计-文件删除的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP-代码审计-文件上传
- 下一篇: PHP-代码审计-代码执行