باسلام، باتوجه به کمبود و ضعف های امنیتی که در بخش ورود کاربری سیستم اتوماسیون whmcs مشاهده شده است، طی زمان سعی میکنم این تاپیک را کامل کرده و ماژول هایی که مینویسم را به صورت رایگان در اختیار دوستان بگذارم.
# بلاک آیپی در صورت ناموفق بودن ورود کاربر + reCaptcha گوگل (بخش کاربری)
در صورتی که کاربر بیش از 3 بار (قابل ویرایش) ورود ناموفق داشته باشد آیپی او در بن لیست whmcs ثبت خواهد شد و در بخش آیپی های مسدود شده، قابل مدیریت خواهد بود. همچنین به فرم ورود reCaptcha گوگل اضافه خواهد شد.
1 - ابتدا sql زیر را در دیتابیس خود اجرا کنید :
2 - فایل پیوست شده (faildlogin.php) را دانلود کنید سپس به مسیر public_html/includes/hooks آپلود کنید.کد:https://codepaste.net/x9zfui
در لاین 74 فایل (faildlogin.php) میتوانید مدت زمان مسدود بودن آیپی، تعداد دفعالت خطا و پیام مسدود سازی را را تغییر دهید. اگر whmcs شما داخل فولدر نصب شده است در لاین 50 نام فولدر همراه با اسلش ابتدایی وارد کنید :
کد:$whmcsFolder = null; //ex(with slash): /my
سپس برای نمایش reCaptcha فایل login.tpl قالب خود را باز کرده، ابتدا خط اضافه کنید :کد:/********************************************* YOU CAN EDIT T.TOOSI *********************************************/ $configureFaild['adminUsername2'] = 'admin'; $configureFaild['banExTime'] = '+2 hours'; $configureFaild['googleSecret'] = '6LcV1hoUAAAAAL04oGte0kbnHXLKazJR8U1N5SK7'; $configureFaild['faildTimes'] = 3; $configureFaild['faildMsg'] = 'Faild Login!'; $configureFaild['whmcsFolder'] = $whmcsFolder; $configureFaild['ip'] = $ip; /**********************************************/
قبل بسته شده form اضافه کنید :کد HTML:<script src='https://www.google.com/recaptcha/api.js?hl=fa'></script>
مقدار data-sitekey و secret (درفایل faildlogin.php) از آدرس زیر بگیرید :کد HTML:<div class="form-group"> <div class="g-recaptcha" data-sitekey="6LcV1hoUAAAAADmGH99-kkipQ27GJZ9eN3xTkxBa"></div> </div>
کد:https://www.google.com/recaptcha/admin





پاسخ با نقل قول