欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

需要注意的幾個PHP漏洞小結(jié)

 更新時間:2012年02月05日 21:47:57   作者:  
幾個PHP漏洞小結(jié),從事php開發(fā)的朋友可以參考下
需要注意的幾個PHP漏洞
幾個重要的php.ini選項
  Register Globals
  php>=4.2.0,php.ini的register_globals選項的默認值預(yù)設(shè)為Off,當(dāng)register_globals的設(shè)定為On時,程序可以接收來自服務(wù)器的各種環(huán)境變量,包括表單提交的變量,而且由于PHP不必事先初始化變量的值,從而導(dǎo)致很大的安全隱患.
  例1:
復(fù)制代碼 代碼如下:

  //check_admin()用于檢查當(dāng)前用戶權(quán)限,如果是admin設(shè)置$is_admin變量為true,然后下面判斷此變量是否為true,然后執(zhí)行管理的一些操作
  //ex1.php
  
  if (check_admin())
  {
  $is_admin = true;
  }
  if ($is_admin)
  {
  do_something();
  }
  ?>

  這一段代碼沒有將$is_admin事先初始化為Flase,如果register_globals為On,那么我們直接提交 http://www.sectop.com/ex1.php?is_admin=true,就可以繞過check_admin()的驗證
  例2:
復(fù)制代碼 代碼如下:

  //ex2.php
  
  if (isset($_SESSION["username"]))
  {
  do_something();
  }
  else
  {
  echo "您尚未登錄!";
  }
  ?>

復(fù)制代碼 代碼如下:

  //ex1.php
  
  $dir = $_GET["dir"];
  if (isset($dir))
  {
  echo "";
  system("ls -al ".$dir);
  echo "";
  }
  ?>

 
 mixed eval(string code_str) //eval注入一般發(fā)生在攻擊者能控制輸入的字符串的時候
  //ex2.php
復(fù)制代碼 代碼如下:
  
  $var = "var";
  if (isset($_GET["arg"]))
  {
  $arg = $_GET["arg"];
  eval("$var = $arg;");
  echo "$var =".$var;
  }
  ?>

相關(guān)文章

最新評論