麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > OS > Win2003 > 正文

win2003 PHP服務器的突破新思路

2024-09-10 16:49:14
字體:
來源:轉載
供稿:網友
從WIN2000到WIN XP, 再到WIN2003, MS IIS服務器安全性的提高是顯而易見的。 在WIN2000中, 一個普通的PHP SHELL便能把它打垮; 在WIN XP, 即使Safe mode = off,你也無法用system() 等函數執行系統命令, 但是我們還能用com()函數進行突破;到WIN 2003,即使IIS 和PHP都是默認安裝,你用system(), com()也可能拿它沒轍。這時候你就不得不使用一些新的方法來進行突破了。
  1、disable_functions的突破
  在php -4.0.1以上的版本,php.ini里引入了一項功能disable_functions , 這個功能比較有用,可以用它禁止一些函數。比如在php.ini里加上disable_functions = passthru exec system popen 那么在執行這些函數的時候將會提示Warning: system() has been disabled for security reasons,同時程序終止運行。但是也不是沒有辦法執行系統命令了。因為php采用了很多perl的特性,比如還可以用(`)來執行命令,示例代碼如下:
  <?$output = `ls -al`;echo "<pre>$output</pre>";?>
  據說這個只有設成safe_mode為on才能避免,但上次我在一臺國外的服務器上使用的時候還是失敗了,人并不是什么時候都能那么走運的:)
  2、dl()函數的應用
  當任何PHP的內部命令執行數和''都無法使用的時候,可以嘗試dl(),該方法只能用于safe mode=off, 因為它在安全模式下是被禁用的。利用dl()你可以直接調用W32api 函數,可惜這個擴展已被移動到 PECL 庫中,且自PHP 5.1.0以下版本起不再被綁定。以下是手冊里的例子:
  // 加載此擴展
  dl("php_w32api.dll");
  // 注冊 GetTickCount 函數,來自 kernel32.dll
  w32api_register_function("kernel32.dll",
  "GetTickCount",
  "long");
  // 注冊 MessageBoxA 函數,來自 User32.dll
  w32api_register_function("User32.dll",
  "MessageBoxA",
  "long");
  // 取得開機時間信息
  $ticks = GetTickCount();
  // 轉換為易于理解的文本
  $secs = floor($ticks / 1000);
  $mins = floor($secs / 60);
  $hours = floor($mins / 60);
  $str = sprintf("You have been using your computer for:".
  "/r/n %d Milliseconds, or /r/n %d Seconds".
  "or /r/n %d mins or/r/n %d hours %d mins.",
  $ticks,
  $secs,
  $mins,
  $hours,
  $mins - ($hours*60));
  // 顯示一個消息對話框,只有一個 OK 按鈕和上面的開機時間文本
  MessageBoxA(NULL,
  $str,
  "Uptime Information",
  MB_OK);
  ?>
  可惜我還沒有理解透徹dl()和W32api, 所以就不亂舉例子了, 免得誤導讀者。
  3、COM 和 .Net(Windows)函數的應用
  COM(Component Object Model,組件對象模型)是微軟開發的軟件規范,它用于開發面向對象的、編譯好的軟件組件,它允許把軟件抽象成為二進制的部件,主要運用于windows平臺。
  PHP 的 Windows 版本已經內置該擴展模塊的支持。無需加載任何附加擴展庫即可使用COM函數。它的使用方法類似于C++或Java中類的創建的語法,并把COM的類名作為參數傳遞到構造函數。例如使用在PHP中調用“WScript.Shell”執行系統命令:
  $cmd=” E:/cert/admin/psexec.exe”;
  if($com=new COM("WScript.Shell")) echo "yes";
  if(!$cmd1=$com->exec($cmd))
  {
  echo "can not exec()";
  }
  if(!$cmd2=$cmd1->stdout())
  {
  echo "can not stdout()";
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一级全毛片 | 成人区一区二区 | 亚洲国产精品一区二区精品 | 国产jjizz一区二区三区视频 | 国产69精品久久久久久野外 | 欧美精品日日鲁夜夜添 | 伊人yinren22综合网色 | 欧美成人午夜精品久久久 | 久久草在线看 | 成人免费影院 | 久久综合久久精品 | 国产精品视频一区二区噜噜 | 久久777国产线看观看精品 | 男女羞羞视频在线免费观看 | 精品久久久久久久久久久久久久久久久久久 | 日本中文不卡视频 | 欧美一级做 | 黄色成年在线观看 | 黄色视频a级毛片 | 婷婷一区二区三区 | 国产人妖一区二区 | 91九色精品 | 国产精品久久久久久久不卡 | 久久精品亚洲一区二区 | 毛片毛片免费看 | 成人福利视频在线 | 精品一区二区三区免费毛片爱 | 毛片小网站 | 黄色av免费电影 | 亚洲视频在线观看免费 | 国产一国产精品一级毛片 | 国产免费让你躁在线视频 | 黄色成人av在线 | 色啪综合 | 国产美女的小嫩bbb图片 | 久草在线视频福利 | 三级国产三级在线 | 在线高清中文字幕 | fc2成人免费人成在线观看播放 | 影视免费观看 | 国产中出视频 |