私は再び自分のサイトを悪意のある攻撃などから保護するceberセキュリティプラグインを使います。
今日チェックして、20以上のロックアウトがありました。私はIPアドレスを確認しましたが、選挙区はありませんでした、彼らは世界中から来ました。
彼らが共通して持っていた一つのことは彼らが入力したユーザー名、すなわち私の管理者ユーザー名の一つでした。
A)どうやってそれを手に入れたのでしょうか。ページの更新などから、ソースを調べることで見つける方法があるのでしょうか。
B)管理者のユーザー名が一般に公開されないようにする方法
また、フロントエンドとバックエンドを分離する方法はありますか。つまり、ログインした場合、バックエンドにアクセスして変更を加えることはできません。
どんな助けでも素晴らしいでしょう:-)
ユーザー名を列挙する簡単な方法は次のとおりです(標準のWP installを使用)。このようなURLを使用するだけです。 https://www.example.com/?user= 1 (追加注: https://www.example.com/aのように、実際のページ/投稿URLを使用する必要があるかもしれません。 -real-page?user = 1 。)そのユーザーアカウントに関する情報(最初のユーザーアカウント、これは管理者レベルのユーザーになります)を取得したら、開始できます。強引なアクセス。 (WPインストールでは、最初に作成されたユーザーは管理者レベルのユーザーです。したがって、上記のURLから管理者のユーザー名がわかる可能性があります。
また、同じリクエストに対して複数のリクエストを許可するxmlrpc.prgを使用すると、さらに高速に実行できます。
ユーザー列挙を防ぐ方法は次のとおりです。
function redirect_to_home_if_author_parameter() {
$is_author_set = get_query_var( 'author', '' );
if ( $is_author_set != '' && !is_admin()) {
wp_redirect( home_url(), 301 );
exit;
}
}
add_action( 'template_redirect', 'redirect_to_home_if_author_parameter' );
あなたがすでにadminとしてログインしているのでなければ、それはどんなユーザ列挙要求(私が言及したURL)もリダイレクトするでしょう。
また、もう1つの注意点はxmlrpc.prgを無効にすることです。そして、 'admin'という名前のユーザーを持たないようにします(または持っている場合は、管理者以外のレベルに変更します)。
これでxmlrpc.prg(あなたのサイトをハッキングする機会がたくさんあります)を無効にします。
add_filter('xmlrpc_enabled', '__return_false');
両方のコードを自分のfunctions.php(できればあなたの子テーマ)に置きます。あるいは上記のコードで簡単なプラグインを作成することもできます。
私のブログ のユーザー列挙問題の詳細はこちら 。