php://filter是php中特有協議流,"中間流"來處理其他流,就比如可以用:post請求通過base64將php原始碼編譯並輸出;localhost:
80/index.php?php:
//filter/write=convert.base64-decode/resource=index.php //輸出的檔名
總結:
2.使用不同的引數可以達到不同的目的和效果;3.利用base64獲得原始碼 / 通過讀寫編碼實行繞過操作;
<?php
$content
='<?php exit; ?>'
;$content.=
$_post
['txt'];
file_put_contents
($_post
['filename'],
$content
);
$content函式使用了"exit"即使寫入了一句話木馬也會被退出所以嘗試繞出;
思路:php://filter進行繞過
1.通過一句話base64encode;
2. convert(兌換)
3. php://filter/read=convert.base64decode進行解碼;
4. **tips:**那麼<?php exit;?>這一部分在經過解碼後,php不對其解析,而我們想要寫入的一句話正好被成功解碼。因此得以成功上傳webshell。
工控系統後台滲透拿flag題目,也是通過php:filter進行編碼輸出的;
審計phppreg_replace()
函式preg_replace 函式執行乙個正規表示式的搜尋和替換。語法:
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int katex parse error: expected 'eof', got '&' at position 19: …it = -1 [, int &̲count ]] )
搜尋 subject 中匹配 pattern 的部分, 以 replacement 進行替換。
引數說明:$pattern:要搜尋的模式,可以是字串或乙個字串陣列。
$replacement:用於替換的字串或字串陣列。
$subject:要搜尋替換的目標字串或字串陣列。
$limit:可選,對於每個模式用於每個 subject 字串的最大可替換次數。 預設是-1(無限制)。
$count:可選,為替換執行的次數。
php 的 preg_replace()函式存在乙個安全問題:示例:
//訪問的url:?pat=/./e&rep=phpinfo()&sub=aa就會觸發phpinfo()的執行
?pat=/.
/e&rep=
phpinfo()
&sub=just test 就會觸發phpinfo
//方便的實現輸入輸出的功能,正在開發中的功能,只能內部人員測試if(
CTF 攻防練習之FTP服務後門
主機 192.168.32.152 靶機 192.168.32.156 首先檢視靶機開放的埠 nmap t4 a v 192.168.32.156 服務對應版本號 21埠ftb是開放的 ftp伺服器 file transfer protocol server 是在網際網路上提供檔案儲存和訪問服務的計...
織夢DedeCMS防黑客入侵或DDOS攻擊的方法
織夢dedecms防黑客入侵或ddos攻擊的方法 dedecms開源是美好的,但很多時候 出了問題,特別是 被黑客入侵攻擊等,往往只能寄希望與官方。而這,有時候並不能達到效果,因為很多時候 被黑,也不一定是官方系統的漏洞,或者是老系統的漏洞,但由於我們的 太過龐大,公升級不易,從而讓漏洞一直得不到公...
入侵檢測系統
網路入侵概念 入侵檢測 通過計算機網路或計算機系統的關鍵點收集資訊並進行分析,從中發現網路或系統中是否有違反安全策略的行為和被攻擊的跡象。入侵檢測系統 ids 入侵檢測是軟體與硬體的組合,是防火牆的合理補充,是防火牆之後的第二道安全閘門。檢測的內容 試圖闖入,成功闖入,冒充其他使用者,違反安全策略,...