コード監査 - PHP

RCE

RCE機能
evalを、にpreg_replace + / E模式、assertJavascript:evalVbscript:、EvalPythonを実行します。exec
<?phpのは、($ _、SERVER [ ' DOCUMENT_ROOT ' ]。' /btslab/header.php '); ?>
  <BR/> <B>のPing:</ b>のドメイン名またはIPアドレスを入力してください:<BR/>は
  <フォームアクション= " cmd.php "メソッド= " 得ます" >
  <INPUT TYPE = " テキスト"名前= " ホスト"値= "" />
  <BR/>は<入力タイプ= " 提出"名前= " 行く"値= " 行きます" />
  </フォーム>
  <BR/>

<?PHPの 
 場合(ISSET($ _ GET [ ' ホスト' ]))
{
もし(strtoupper(SUBSTR(PHP_OS、03))=== ' WIN ' 
{
$結果 =もしくはshell_exec(" ピング" $ _ GET [ ' ホスト' ]);
}

{
$結果 =もしくはshell_exec(" ピング-C 4 " $ _ GET [ ' ホスト' ])。
}

エコー" :</ B> </ BR> <前> <B>結果"。$結果を。" </ PRE> " ;
}
?>

<?phpのは、($ _、SERVER [ ' DOCUMENT_ROOT ' ]。' /btslab/footer.php '); ?>
コードの表示

防衛

防衛        
 1 。直接の使用を最小限にするかまたは無効にする機能を実行して        
 2は、パラメータ値の使用を含む作るために引用        
 3 つの機能を使用して機能を確保する、動的機能を使用する前に、指定        
 4。進入機能実行コマンド/ メソッド前、フィルタパラメータ、敏感な文字エスケープ        
 5 。他のプロシージャを呼び出すことはありません、仕事を解決するために、スクリプトを使用することができます。コマンドを実行する機能の使用を最小限に抑え、且つdisable_functionsで無効になって        
 6 点は制御可能なパラメータの値である場合について、点はescapeshellcmdフィルタ関数を使用して制御可能なプロセスパラメータである場合に、使用することは、フィルタリング機能にescapeshellarg        
 7 パラメータの値は引用符ラップを利用して、スプライシング前に脱出するにaddslashesを呼び出すために        
タイムリーなパッチ適用は、特定の脆弱性に起因するサードパーティのコンポーネントのために、私たちがしなければならないで、インストール時にデフォルトの設定を変更します    

 

おすすめ

転載: www.cnblogs.com/AtesetEnginner/p/11325892.html