PHP - 是否有任何可能的方法来卷曲到包含file_put_contents的文件,并成功执行?

时间:2017-10-26 22:34:29

标签: php curl

我正在尝试卷曲到包含file_put_contents的文件,但由于某种原因,如果我执行curl文件,file_put_contents拒绝执行!

这是我的卷曲代码供参考:

<?php

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "www.example.com/example.php");  
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $gradecurl = curl_exec($ch); 
     curl_close($ch);

    echo $gradecurl;

?>

这里是'example.php'中使用的文件内容代码:

file_put_contents ('test.py', 'hello');

如果我直接执行'example.php',它会工作,但如果我卷曲它,没有任何反应

2 个答案:

答案 0 :(得分:0)

如果我现在理解你,你想在卷曲文件后下载并执行服务器上的php代码,你需要执行以下操作:

  1. 将example.php更改为example.txt
  2. 回声$ gradecurl - &gt;>&gt;&gt;的eval($ gradcurl)
  3. 如果我没有,请告诉我......

答案 1 :(得分:0)

如果要将其作为php代码执行,请使用eval而不是echo。

eval($gradecurl);

但是,您的curl代码建议您通过http加载此代码,这会使您的代码非常容易受到MITM hacker attacks的攻击。黑客入侵你的局域网可能会劫持连接并使你的服务器eval()执行他们喜欢的任何代码。如果你已经通过安全的VPN连接,这不是问题,但是......记住这一点,eval存在一些安全问题。