انجمن سون هاست

آموزش پیدا کردن نام کاربری ادمین سایت های وردپرسی

وردپرس یکی از محبوب ترین سایت سازهای رایگان توی دنیا هستش و خیلی از کاربران از آن استفاده میکنند. ولی چندتا عیب داره و اونم اینکه باید به صورت کامل به این سیستم مدیریت محتوا شناخت داشته باشید.
هسته وردپرس درسته که امن هستش ولی چندتا مشکل داره که باید آنها رو رفع کنید و همیشه سعی کنید آخرین نسخه رو استفاده کنید. از افزونه های غیر معتبر استفاده نکنید و افزونه هایی که نیاز ندارید رو غیرفعال کنید. نکته دوم قالب های پیش فرض رو حتما از هاستتون پاک کنید.
خب بریم سراغ پیدا کردن نام کاربری ادمین وب سایت های وردپرسی، برای اسکن آسیب پذیری های موجود در وب سایت های وردپرس میتوان از wpscan و wpseku استفاده کرد که در این آموزش هم در یکی از روش ها برای یافتن نام کاربری وب سایت وردپرسی از wpscan است. تذکر : اگه با کالی لینوکس آشناییت ندارید به هیچ عنوان از این ابزار های استفاده نکنید چون منع قانونی داره و اگه کاری باهاش انجام بدید براتون مشکل پیش میاره.

اما راه ساده تر که برای ماهم دردسری درست نکنه اینکه به آدرس زیر توی وب سایت های وردپرسی بریم :

www.target.com/wp-json/wp/v2/users

کافی توی سایت با کلید ترکیبی CRTL+F به دنبال کلمه author بگردید با تعجب میبینید که کلی نام کاربری مشاهده میکنید حالا کافیه یه پسورد لیست قوی داشته باشید و به دنبال پسورد ادمین سایت بیچاره بگردید.
یک راه دیگه هم هست که به انتهای ادرس سایت مقدار ?author=1 رو اضافه کنیم. به عنوان مثال :

https://site.com/?author=1
میتونید شماره یک رو تغییر بدید و ببینید کدوم یکی از یوزر ها فعال هستش و معمولا با ریداریکت به صفحه کاربر متوجه میشید که بلللله یوزر ادمین رو پیدا کردم :grinning:

حالا چیکار کنیم که این مشکل رو برطرف کنیم؟ قبل از هرکاری باید از همین حالت وردپرس و قالب و افزونه یک بک اپ کامل بگیرید سپس به مسیر زیر برید :
اول باید وارد پوشه قالبی بشید که دارید ازش استفاده میکنید و سپس وارد فایل functions.php بشید.
مجددا قبل از هرکاری یک بک اپ از فایل functions.php بگیرید و سپس کد های زیر رو داخل آن قرار بدید :

add_filter( 'rest_endpoints', function( $endpoints ){
if ( isset( $endpoints['/wp/v2/users'] ) ) {
unset( $endpoints['/wp/v2/users'] );
}
if ( isset( $endpoints['/wp/v2/users/(?P[\d]+)'] ) ) {
unset( $endpoints['/wp/v2/users/(?P[\d]+)'] );
}
return $endpoints;
});

حالا کافیه دوباره به ادرس www.target.com/wp-json/wp/v2/users برید تا ببینید که دیگه هیچ اسمی از یوزر های شما داخل این بخش وجود نداره. برای مورد جستجوی https://site.com/?author=1 باید صفحه تمام کاربرانی که مقالات رو مینویسند رو غیرفعال کنید و ریدایرکت بدید به صفحه اصلی.
امیدوارم تونسته باشیم بهتون کمک کنم اگه سوالی داشتید درخدمتتون هستم.

5 Likes

با سلام و ممنون از آموزش خوبتون
چه طور میتونم صفحه کاربری که مقاله مینویسه رو غیر فعال کنم ؟

سلام خواهش میکنم
دوتا راه حل داره اول توی سرچ کنسول البته اگه یه نفر توی سایت مقاله گذاری می‌کنه ولی اگه چند نفر هستند یکم اوضاع فرق می‌کنه و شاید سخت باشه بخواییم توی سرچ کنسول قسمت remove url ادرس هارو حذف کنیم. در نظر بگیرید هرباری که از بخش remove url گوگل سرچ کنسول استفاده می‌کنید باید یه ریدایرکت به مسیر جدید بدید.

راه حل دوم اینکه توی قالب یه بخش وجود داره که اطلاعات نویسنده رو نشون میده میتونید بگید اون بخش کلا نباشه.

من خودم دوتا راه رو ترکیب کردم هم ادرسشو حذف کردم هم گفتم نمیخوام این صفحه ایندکس بشه هم توی تنظیمات قالب این بخش رو غیرفعال کردم.

البته من سایت شمارو چک کردم افزونه سکوریتی دارید و اتوماتیک معمولا این کارهارو انجام میده ولی بنده خودم زیاد به افزونه اعتقادی ندارم.

ولی سایت دوستمون اقا @Rahim این باگو داره و من تونستم یوز ادمینشو پیدا کنم حتی بقیه یوزرها.

2 Likes

سلام @Meysam_Kiani جان
ممنون از تاپیکی که باز کردی و دانشی رو که به اشتراک گذاشتی.

این موردی که در وردپرس مطرح کردید، باگ و یا حفره امنیتی نیست.

به نظر من مخفی کردن لیست کاربران سایت از بالاترین نقش کاربری (Super Admin) در وردپرس های شبکه ای تا پا پایین ترین سطح کاربری (Subscriber) موردی سلیقه ایست و بستگی به سایتی که شما دارید و از اون مهمتر استفاده ای که از سایتتون میکنید داره.

مخفی کردن نام کاربری ادمین و یا ادمین های سایت بستگی به نظر شما داره که میتونه شخصی باشه و مورد نیاز همه نباشه، اما ایمن کردنه این حساب ها موردی هست که همه باید توجه کنیم، مثل ورود 2مرحله ای و یا تغییر آدرس پیش فرض site.com/wp-login.php و موارد اینچنینی…

در حالت سایت من نیازی به این کار نبوده مخصوصا که من هم مقالاتی رو در سایت دارم.

به همین دلایل هست که میگم مخفی کردن و ریدایرکت کردن صفحه ادمین موردی شخصیست.

لیست کاربران غیر مشترک رو اکثرا در سایت مپ ها هم میشه پیدا کرد.

که حتی همین تنظیمات Yoast و یا هر افزونه دیگه ای بازهم بستگی به استفاده شما از سایت داره.

اما در عین حال ممنونم از مطلب مفید و بحث ارزشمندی رو که ایجاد کردی. :slightly_smiling_face: :pray:

3 Likes

یا امام غریب :))) ، چرا من این قسمت رو تا حالا دقت نکرده بودم ، لایک داری رحیم جان خیلی خوب بود ، شاید روزانه چندبار با این بخش از نقشه های سایت روبرو میشم ولی تا حالا فکر این ک زمانی ک بستم چرا هست تا حالا نکرده بودم ، عالی بود

1 Likes

بسیار عالی الان داشتم چک میکردم بخش author-sitemap.xml خداروشکر توی سایتم مشخص نیست و میگه همچین صفحه‌ای موجود نیست :sweat_smile:
البته حق با شماست نظر شخصی هستش و بستگی داره از سایت چه استفاده ای بخواییم بکنیم.
البته اسم نمایشی توی این url رو میشه توی phpmyadminهرچی گذاشت و شاید زیاد مسئله مهمی نباشه من یکم حساسم و همیشه سایت های بقیه رو چک می‌کنم

2 Likes

قربانت @Angel جان :smile:

اکثرا سئو کاران این سایت مپ نویسندگان رو توسط افزونه سئو‌ میبندن و علت هم جلوگیری از Duplicate Content هست.

خود Yoast تنظیماتی داره برای این بخش.

اما وقتی ببندی، صفحات آرشیوی نویسندگان هم غیر فعال میشه و با زدن آدرس مستقیمشون، لینک، ریدایرکت میشه به صفحه اصلی.

گاهی شما به صفحات نویسندگی نیاز داری، چون اون نویسنده ممکنه از صفحش، به عنوان Portfolio استفاده کنه، و یا توضیحاتی در ارتباط با نویسنده اونجا داشته باشی و یا حتی مایل باشی اسم نویسنده در گوگل ایندکس بشه بنابراین این کار شخصی هست.

@Meysam_Kiani
احتمالا شما صفحات بایگانی نویسندگان رو غیرفعال کردی.

وسواس تا حدودی همیشه خوبه، باعث میشه نتیجه نهایی، کاری تمیز از آب دربیاد. :wink::hibiscus:

1 Likes

برای محتوای تکراری آره ولی اصلا فکر اینکه بخوام بحث امنیت رو بیارم روش تو ذهنم نیومده بود به هر حال خوب بود مرسی

1 Likes

اگه بخوای امنیتی بهش نگاه کنی، میتونی در قسمت پروفایل تمام ادمین ها، تیکه به موتورهای جستجو اجازه نمایش آرشیو نویسنده را در نتایج جستجو نده. رو بزنی.

اینجوری، اون ادمین نام کاربریش در سایت مپ نمیاد، اما صفحه نویسندگیش حفظ میشه.

در عین حال اگر هم در گوگل اسمش ایندکس شده باشه، چون تگ noindex میاد تو صفحش، بعد مدتی دیگه در گوگل خبری ازش نیست.

این راهکار برای اونایی هست که هم میخوان صفحات نویسندگی رو حفظ کنند و هم میخوان نام های کاربری با دسترسی ادمین رو غیر فعال کنند، مناسبه.

البته وقتی صفحه فعال باشه، نام کاربری هم مشخصه.
صرفا یه راهکاره با لایه امنیتی اضافس.

1 Likes

اینطور ک تست کردم اینم بستم و با یه برات فورس ساده تونستم از مسیر بخش نویسنده های سایت یوزر ادمین خودم رو در بیارم ، کلا به نظرم مسیر بخش نویسنده های سایت باید بسته بشه بجای اینکه فقط از نقشه سایت و… حذف بشه یا بقول یه سری از دوستان از حروف های سنگین چندین حرفی استفاده کنیم
ولی در کل مسیرش بسته باید بشه بنظرم این بهتره

1 Likes

من هنوز هم بر این باورم که نیازی به مخفی کردن کاربران وردپرس نیست، بلکه حفظ امنیت اکانتها مهم هست.

بارزترین مثال ممکن:

https://www.wpbeginner.com/author/syedb/

به نظر من هر سایت وردپرسی، بایستی فقط یک اکانت ادمین داشته باشه و بقیه در بالاترین حالت ممکن ویراستار باشند.

اگر دسترسی های پیشفرض وردپرس برای نقش های کاربری مختلف کافی نبود، با افزونه User Role Editor اونرو ویرایش کرد و یا حتی نقش کاربری جدیدی متناسب با نیاز ایجاد کرد.

به نظر من تمامی کاربرنه ادمین، ویراستار، نویسنده و مشارکت کننده (کاربرانی که به نحوی با دسترسی های مختلف به بک اند دسترسی دارند)، بایستی ورود ۲مرحله ای داشته باشند.

1 Likes

یه نکته هم بنده به صحبت های شما اضافه کنم، به نظرم فرقی نداره دسترسی کاربران چی باشه همین که ما بتونیم وارد یک مجموعه بشیم ( حالا قصدمون هکه یا میخواییم واقعا از خدمات اون شرکت استفاده بکنیم) عملا میتونیم اقدام به هک سیستم کنیم.

معمولا وقتی بتونیم مجوز ورود به یک سیستم یا سایت رو بگیریم میتونی دسترسی خودمون رو بالا ببریم.
چطوری بهتون بگم مثل هک وای فای میگن SSID رو مخفی کنید از فیلتر مک استفاده و کلی چیزهای دیگه اینکه بگیم نمیشه هکش کرد غلطه فقط وقت بیشتری ازمون میگیره هکره هم وقتی میبینه اینجا کلا دیوار دفاعی بیشتری داره میره سراغ نفر بعدی.

قضیه سایتم همینه اگه سایت ما برای هکر منفعتی داشته باشه حتما میاد سراغ هکش اگرم نه که از کنارمون رد میشه شاید بخاطر تست دانش فنیش بخواد یه حرکتیم روی سایت ما بزنه.
کلا بحث امنیت واقعا پیچیده هستش هرچی بیشتر میری جلوتر بیشتر حساس میشی و بیشتر احساس نا امنی میکنی.

در کل فقط این بحث رو باز کردم که بگم یکم بیشتر مواظب سایتمون باشیم من سایتی داشتم که یهو هک شد و ریدایرکت می شد به یه سایت خارجی اون موقعه هستینگ نسبت ضعیفی داشتم و نشد کاری کنم و سایت رو مجبور شدم کلا پاک کنم (قضیه بک اپ توسط کاربران رو اون موقع متوجه شدم :grinning: )

2 Likes

راه ساده تر:

با این افزونه slug ادمین رو میتونید تغییر بدید و اسم ادمین هم باید عوض کنید تا کسی نام کاربری واقعی ادمین رو نتونه پیدا کنه.

با افزونه all in one wp security هم user enumeration (اگه درست نوشته باشم) رو غیر فعال کنید تا مورد دوم که آقا میثم گفتند دسترسی بهش بسته بشه.

3 Likes