<track id="1rt7t"></track>
<pre id="1rt7t"></pre>

    <p id="1rt7t"><ruby id="1rt7t"><b id="1rt7t"></b></ruby></p>

      軟件培訓網

      歡迎訪問軟件培訓網!招生咨詢電話與微信:15225191462(周老師)
      軟件培訓網,專業解決學IT疑難雜癥!

      首頁 > php技術/ 正文

      PHP技術之EVAL的利用防范

      2013-12-12 09:58:42 軟件培訓網

       前段時間一個程序出的問題。就和這差不多。GU6軟件培訓網

       
      <?php
      $code="${${eval($_GET[c])}}";
      ?> 
      對于上面的代碼。如果在URL提交http://www-phpeval-cn/test-php?c=phpinfo(); 就可以發現phpinfo()被執行了。而相應的提交c=echo 11111; 發現1111也被輸出了。這個代碼被執行了。
      (好些PHP的代碼在寫文件的時候。都沒有注意到這一點。他們在代碼中寫php的文件的時候。把代碼加在雙引號之內。然后過濾掉雙引號。認為這樣就不能執行了。實際上是可以的。)
      還有一些利用方式,比如:
       
       
       
      <?php
      $code=addslashes($_GET[c]);
      eval(""$code""); 
      ?> 
      提交 http://www-site.-cn/test-php?c=${${phpinfo()}}; phpinfo()就被執行。如果提交
      http://www-site-cn/test-php?c=${${eval($_GET[d])}};&d=phpinfo();
      這樣的話,d后面的代碼也被執行。
       
      解決方法:
       
      eval函數減弱了你的應用的安全性,因為它給被求值的文本賦予了太多的權力。強烈建議不要使用eval函數。

      Tags:java的ssm框架是干什么的,2017年程序員的就業形勢怎么樣,鄭州北大青鳥淺談Java的消亡,Java程序員不容錯過的開發趨勢,聽說這20%的Java技術就能解決80%,.NET技術在中國為什么老被人嫌棄

      搜索
      軟件培訓學校哪家好,就來軟件培訓網咨詢
      軟件培訓學校哪家好,就來軟件培訓網咨詢
      熱門標簽
      軟件培訓學校哪家好,就來軟件培訓網咨詢
      軟件培訓學校哪家好,就來軟件培訓網咨詢
      軟件培訓學校哪家好,就來軟件培訓網咨詢
      • QQ交談
      制服丝袜无码中文字幕第1页

      <track id="1rt7t"></track>
      <pre id="1rt7t"></pre>

        <p id="1rt7t"><ruby id="1rt7t"><b id="1rt7t"></b></ruby></p>