web-dev-qa-db-ja.com

秘密の管理者レベルのユーザーを持つかバックドアを構築する

私はさまざまなクライアントのためにいくつかのワードプレスサイトを作成しました、そして私は各サイトに簡単にアクセスしたいです。私はいつもファイルにftpするか、データベースを編集することができました、しかし、私はそれがもっと簡単であることを望みます。クライアントが誤って自分のユーザーを削除しないように、秘密にしておきたいのです。誰もが私が秘密の管理者レベルのユーザーまたはバックドアであるプラグインを持つことができる方法について何か考えを持っていますか。

私が誰かにこれを私のために造るように頼んでいるのではないと信じてください。私はただいくつかのアイデアを求めています。ブレーンストーミングセッションのように。私はたくさんのcmsを使って作業しましたが、ワードプレスはまだ新しいです。私は正しい方向に私を指すことができるいくつかの退役軍人がここにいるかもしれないと思いました。

OH私は最も重要な部分を忘れました。私はこれをプラグインにする必要があります。そして明らかにそれはクライアントがコアをアップグレードしてもそれはアクティブであり続ける必要があります。

どんな助け/アイデアも素晴らしいでしょう。ありがとう。

私は、私が非倫理的な仕事を成し遂げようとしていると思っているすべての人からたくさんの熱を得ているのを見ます。誰もこれを削除しないことをお詫び申し上げます。私は私の質問を別の方法で質問しようとするだろうと思います。

正直に言うと、私はftpやデータベースへのアクセスでは達成できない、この「秘密のユーザープラグイン」で何を達成することができますか。私は各クライアントのウェブマスターです。ホスティングを設定します。それらの半分はftpログイン情報さえ持っていません。何も詐欺的なことは何も起きていない私は私の人生を楽にすることだけを試みている。

1
Steve Fischer

まだFTPアクセスがある場合に備えて、 WPAAA.PHP - WordPress Access All Areas(Wordpressサポートツール) を利用できます。

これは単一のファイルなので、必須のディレクトリにコピーしてハックするだけで、そのファイルからMust-Useプラグインを簡単に作成できます。さらに、ページにアクセスするための秘密のURLがあるように自動的に設定されます。

4
hakre

Johnのコメントをフォローして、必須のプラグインを追加しましょう。

ログインに失敗したとき、または登録したときに、選択した任意のユーザー名/パスワードを確認します(パスワードがハッシュ化されていない場合はクリアテキストで表示されます)。一致する場合は、そのユーザーを追加するか、電子メールでデータベースにアクセスし、管理者権限を付与してログインします。

オプションで、ログアウト時に、user/passコンボがログアウトしているかどうかを確認してください。そしてもしそうなら、彼を削除します。

そうすれば、スーパー管理者ログインがユーザーリストに含まれているかどうかにかかわらず、ログインできるようになります。

ユーザー名を保護することも忘れないでください。同じユーザー名で異なる権限を持つ2人のユーザーを作成したくはありません。

別の方法はあなたが選んだあなたのユーザ名を保護することに固執する必要があるプラグインであることができます:それが編集/削除された場合、それが起こる前に変更を拒否してください。

1

はい、これは可能であり、私の雇用主が運営する数百のサイトを扱うために過去にいくつかの形式で作成したものです。私は自分の権利を確認した後にユーザーが見ていたものを正確に見ることができる「ユーザーとしてログイン」機能を作成しました。あるユーザーに対して発生した問題で、別のユーザーには発生しなかった問題を再現するのに非常に役立ちました。

この種のツールをこのような低レベルのツールとして作成するスキルは、それを使用するための前提条件と見なされることが多いため、このソリューションを手作業で作成する必要があります。あなたは明らかにあなたがあなたのコードを追加する必要がある場所を見るために今WordPressによって処理されているログインを調べることができます。手短に言えば、WordPressログインがどのように機能し、そこから移動するかを理解してください。

私は、あなたのクライアントが知らないそして取り除くことができない何かをあなたが作るという問題を他の人が抱えているのが好きです。 2日経ってもまだUser2774という名前が付けられていて、名前に他の質問がないという事実は、顧客がこれを概念に同意しないために隠す必要があると感じているように見えます。

あなたが合法的かつ専門的であるならば、あなたはこれを公の場で行い、それが存在することをあなたの顧客に知らせるべきです。あなたは誇らしげに "User2774 Client Support Plugin"をインストールするべきですそしてあなたがあなた自身のサーバーでホスティングしていないように、あなたが邪魔したとき彼らがそれを無効にすることを可能にしなさい。クライアントに競合他社を選択させることを優雅に許可することは悪いことではありません。

その上、合法的であろうとなかろうと、隠れたバックドアを他人のシステムにインストールすると、問題が発生した場合に責任を負うことになります。たぶんあなたはまだLLCではないし、何か悪いことが起こってあなたを証明しなければならないのであれば個人的な責任を負うことになるでしょう。

0
Brian Layman

わかりました、ここに行きます。あなたがする必要がある2つの事があります:

  1. Muプラグインを使用する(必須プラグイン) wp-content/mu-pluginsディレクトリ内のPHPファイルは、他のすべてのプラグインの前にWordPressによって自動的にロードされます。これらの必需品プラグインは無効にできません。それらを削除する唯一の方法はFTP経由です。

  2. map_meta_cap()を見てください( ここでソースを見てください )。 WordPressの機能システムには「メタ機能」と呼ばれるものがあります。例えば ​​'edit_post'と呼ばれる実際の機能はありませんが、ユーザーが特定の投稿を編集しようとすると、WordPressはその機能をcurrent_user_can( 'edit_post', $post_id )関数でチェックします。 map_meta_cap()はその組み合わせを調べて、投稿がこのユーザーのものかどうかなどをチェックします。そうでなければ、彼らは彼らが望む任意の投稿を編集することが許可されていますか?そうでない場合は、この投稿の編集を許可しないでください。だからあなたがやりたいことはedit_userとdelete_userのようなもののためにメタ機能をチェックすることです。ユーザーが自分のユーザーを編集または削除しようとしていて、それがあなたではない場合は、許可しないでください。

あなたがもっと質問があるかどうか私に知らせてください。私はあなたがWordPressについてどれほど知っているのか本当に知りません。

0
John P Bloch