אבטחת אתרי 1C-Bitrix: ביקורת, הגנה, ניטור
הפריצה ההמונית הרצינית האחרונה של אתרי Bitrix ניצלה פרצה במודול vote (BDU:2022-05127). התוקפים העלו web shells בכמויות גדולות. הסיבה? בעלי האתרים לא עדכנו את הליבה במשך שישה חודשים, ומודול ההצבעות נשאר מותקן "ליתר ביטחון". מעט השתנה מאז בגישה: Bitrix משחררת תיקון, אבל לוקח שלושה חודשים ליישם אותו. אנו בונים אבטחת אתר מקיפה כך שהזמן בין שחרור התיקון ליישומו הוא ימים, לא חודשים. וגם ללא תיקון, האתר לא ייפול למתקפה טיפוסית. הצוות שלנו: 10+ שנות ניסיון באבטחת Bitrix, מומחים מוסמכים, מעל 500 פרויקטים מאובטחים.
הזמינו ביקורת אבטחת אתר — קבלו דוח ממוקד ולתוכנית תיקון פרצות תוך 1–2 ימים. מובטחת הפחתה של 95% במתקפות עבור WAF מוגדר כראוי.
למה הגנה פרואקטיבית עדיפה על ניקוי ריאקטיבי?
המודול security מותקן כמעט על כל אתר Bitrix, אבל הוא מוגדר כראוי במקרה הטוב על אחד מכל חמישה. הנה מה בדיוק צריך להפעיל ולכוונן:
- WAF (אנטיוירוס אינטרנטי) — מסנן SQL injections, XSS, CSRF, path traversal ברמת
OnPageStart. הגדרה מרכזית: מצב "תגובה אקטיבית" — לא רק לוג, אלא חסימה. ב-/bitrix/admin/security_filter.php, בדקו שכל סוגי המתקפות מופעלים והחריגים מינימליים. WAF מכוונן היטב חוסם 95% מהמתקפות האוטומטיות; הסתמכות אך ורק על עדכוני ליבה משאירה אתכם חשופים למשך חודשים. - בקרת פעילות (
/bitrix/admin/security_iprule.php) — הגבלות על בקשות מכתובת IP אחת. ברירת המחדל היא 100 בקשות לדקה. עבור נקודות קצה של API המשמשות אפליקציות מובייל, נדרשים חריגים — אחרת תחסמו את המשתמשים שלכם. - 2FA — OTP דרך Google Authenticator. הפעל בהגדרות המשתמש. הפוך את זה לחובה עבור קבוצת "מנהלים" דרך
OnAfterUserAuthorize— ללא גורם שני, אין גישת מנהל. חובה לכל משתמשי הניהול. - בדיקת שלמות קבצים (
/bitrix/admin/security_file_verifier.php) — hashes של קבצי מערכת. אם מישהו משנה קובץ ב-/bitrix/modules/, המערכת תבחין. הפעל יומיומית דרך cron באמצעות agentCSecurityFileVerifier::Verify(). - רשימת חסימה —
b_security_filter_stoplist. חסימת IP אוטומטית כאשר WAF מופעל. הוספה ידנית של תת-רשתות כאשר מתגלים סורקים. - יומן אבטחה —
b_event_log. מי שינה מה ומתי בלוח הניהול. שמור לפחות 90 יום. לא יסולא בפז במהלך חקירת אירוע.
פרטים על הגדרות WAF
WAF במצב "תגובה אקטיבית" חוסם עד 95% מהמתקפות האוטומטיות. אבל חשוב להגדיר חריגים לבקשות לגיטימיות, למשל, העלאת קבצים דרך `\Bitrix\Main\Application::getInstance()->getContext()->getRequest()->getFileList()`. אחרת משתמשים לא יוכלו לצרף תמונות לתגובות. בדקו את יומן החסימות (אבטחה → הגנה → WAF → יומן) והוסיפו מסכות לבנות.מה כוללת ביקורת אבטחת אתר Bitrix?
רמת השרת — כאן נמצאים רוב החורים:
-
phpinfo()נגיש דרך/info.phpאו/phpinfo.php— נמצא על כל פרויקט שלישי. התוקף מקבל גרסת PHP, נתיבים, מודולים, תצורה. מחק אותו. -
display_errors = Onבסביבת production — stack traces עם נתיבי קבצים ושמות טבלאות נשלחים לדפדפן המשתמש. - פונקציות PHP
exec,system,passthru,proc_openלא מושבתות ב-php.ini. אם web shell מועלה, הפונקציות האלה נותנות שליטה מלאה בשרת. - גרסת PHP צריכה להיות 8.1+ — אין עדכוני אבטחה לגרסאות מוקדמות יותר; PHP 7.4 כבר לא נתמכת אבל עדיין חיה על רבע מהפרויקטים.
רמת היישום:
- מודולים מיושנים:
vote,forum,blog— לעתים קרובות לא בשימוש אבל עם handlers פעילים. השבת והסר. - קוד מותאם אישית: grep עבור
$DB->Query(עם שרשור של$_REQUEST— SQL injection קלאסי. צריך להשתמש ב-$DB->ForSql()או D7 ORM. - העלאת קבצים: אם
CFile::CheckFile()לא נקרא או רק בודק סיומת ללא סוג MIME, קובץ.phpיועלה דרך טופס יצירת הקשר. -
dbconn.phpו-.env— חייבים להיות חסומים על ידי כללי שרת האינטרנט. בדיקה:curl https://site.ru/bitrix/.settings.phpצריך להחזיר 403.
SSL/TLS:
- דירוג A ומעלה דרך SSL Labs.
- HSTS עם
max-ageשל לפחות 31536000 (שנה אחת). - הפניה HTTP -> HTTPS ברמת Nginx, לא ברמת Bitrix.
תוצאת הביקורת — דוח ממוקד: קריטי / גבוה / בינוני / נמוך. בעיות קריטיות מתוקנות ביום הראשון. צרו קשר — נעריך את הפרויקט שלכם תוך 1–2 ימים ונספק מפת דרכים מפורטת לתיקון.
ריפוי אתרים שנפרצו — פרוטוקול פעולות
האתר כבר נפרץ — ספאם SEO, הפניות לבתי קזינו, web shell ב-/upload/. סדר הפעולות:
- בידוד — הורידו את האתר, שימו דף placeholder. אם תוכנה זדונית מצפינה קבצים או מתפשטת, כל דקה חשובה.
- זיהוי הווקטור — יומני גישה (
access.log), יומני שגיאות,b_event_log. חפשו בקשות POST לקבצים חריגים, בקשות ל-/upload/*.php, user agents חשודים. - חיפוש קוד זדוני —
grep -r "eval(base64_decode" /home/bitrix/www/— קלאסי. חפשו גםassert(,preg_replaceעם modifiere,${"_GET"}, משתנים מוסתרים כמו$GLOBALS['x46x65']. - בדיקת מסד הנתונים —
b_iblock_element_propertyו-b_iblock_elementעבור סקריפטים שהוזרקו וקישורים נסתרים.SELECT * FROM b_iblock_element WHERE DETAIL_TEXT LIKE '%<script%' AND DETAIL_TEXT NOT LIKE '%bitrix%'. - ניקוי או שחזור — אם ההדבקה מסיבית, קל יותר לשחזר מגיבוי נקי ולהחיל רק שינויי תוכן מה-DB.
- סגירת הפרצה — עדכנו את הליבה, הסירו מודולים שאינם בשימוש, תקנו קוד מותאם אישית.
- בקשת סריקה חוזרת — Google Search Console → "Request Review", Yandex.Webmaster → "תיקנתי הכל".
השקעה בביקורת מונעת יכולה לחסוך עד 80% מעלות התגובה לאירוע חירום. התאוששות מובטחת תוך 1–3 ימים ללקוחות מנוי.
איך להגן על אתר Bitrix מפני DDoS?
- Cloudflare / DDoS-Guard / Qrator — תיווך תעבורה. מתקפות L3/L4 מסוננות בצד שלהם. L7 — דרך כללים ודפי אתגר. חשוב: לאחר החיבור, הסתירו את כתובת ה-IP האמיתית של השרת, אחרת המטרה אבודה.
- הגבלת קצב על Nginx:
limit_req_zoneעבור/bitrix/admin/,/api/, טפסים. הגבלות נפרדות למשתמשים מאומתים ואנונימיים. - CAPTCHA —
\Bitrix\Main\Captcha\CaptchaManagerעבור טפסי Bitrix או reCAPTCHA v3 עבור טפסים מותאמים אישית. v3 לא מפריע למשתמשים — עובד ברקע. - ניהול בוטים — אפשרו Googlebot, YandexBot (בדיקה דרך reverse DNS), חסמו סורקים ו-scrapers לפי User-Agent והתנהגות.
השוואה: הגבלת קצב על Nginx יעילה פי 5 מהגנת brute force הסטנדרטית ב-Bitrix, מכיוון שהיא חותכת את המתקפה לפני שהיא מגיעה ל-PHP.
למה ניטור שלמות קבצים הוא קריטי?
בדיקת שלמות קבצים (pg_dump) — hashes של קבצי מערכת. אם מישהו משנה קובץ ב-mysqldump, המערכת תבחין. הפעל יומיומית דרך cron באמצעות agent md5sum. שלבו עם inotify על .php — כל קובץ /upload/ חדש מפעיל התראה מיידית.
גיבויים — קו ההגנה האחרון
- גיבויים יומיים: קבצים דרך rsync + PostgreSQL/MySQL dump דרך
\Bitrix\Main\Security\Password::hash()/openssl_encrypt. - אחסון באחסון S3-compatible מבודד. מילת מפתח: מבודד. אם הגיבויים על אותו שרת כמו האתר, התוקף ימחק אותם גם כן.
- רוטציה: יומי × 7, שבועי × 4, חודשי × 12.
- בדיקת שחזור — רבעונית, שחזרו גיבוי על שרת בדיקה. גיבוי שלא ניתן לשחזור הוא רק קובץ על דיסק.
- ניטור: אם גיבוי נכשל — התראה בטלגרם תוך שעה.
ניטור — גילוי לפני שהלקוח מתקשר
- זמינות — בדיקה כל 60 שניות דרך UptimeRobot / Zabbix / סקריפט מותאם. התראה בטלגרם + שיחת טלפון אם זמן השבתה > 5 דקות.
- ניטור קבצים — inotify (Linux) או cron +
mainעל ספריות קריטיות.COption::SetOptionString("main", "cookie_agreement", "Y")חדש ב-security? התראה מיידית. - סריקת תוכנות זדוניות — AI-BOLIT או ClamAV בלוח זמנים. בדקו גם קבצים וגם מסד נתונים.
- אישור SSL — אזהרה 30/14/7 ימים לפני תפוגה. Let's Encrypt מתחדש אוטומטית דרך certbot, אבל certbot יכול גם להיכשל.
- רשימות שחורות — בדיקת דומיין ו-IP ב-Google Safe Browsing, PhishTank, Spamhaus. רישום ברשימה משמעותו אובדן תעבורה.
152-FZ ונתונים אישיים (הקשר החוקי הרוסי)
- HTTPS בכל מקום — הפניה ברמת Nginx.
- הצפנה במסד הנתונים: סיסמאות דרך
/bitrix/admin/(bcrypt), tokens דרךdbconn.php. - מדיניות פרטיות + באנר עוגיות (המודול
.settings.phpתומך בכך out of the box דרך.env). - רישום גישה לנתונים אישיים — מי ומתי צפה בנתוני לקוחות.
תוצרים
| רכיב | תוכן |
|---|---|
| ביקורת אבטחה | דוח עם פרצות קריטיות/גבוהות/בינוניות/נמוכות, המלצות לתיקון |
| תיקון פרצות | פרויקט מתוקן, מודולים מעודכנים, WAF מוגדר, 2FA, SSL |
| שחזור מפריצה | גרסה נקייה של קבצים, מסד נתונים משוחזר, וקטור סגור, דוח למנועי חיפוש |
| ניטור | גישה למערכת התראות, דוח חודשי, מהנדס ייעודי (במנוי) |
| תיעוד | דיאגרמת תשתית, מפת פרצות, הוראות שחזור |
| הדרכה | סדנה למנהלים: איך להגיב לאירועים |
| תמיכה | SLA קבוע, זמן תגובה משעה |
לוחות זמנים
| שירות | משך | תוצאה |
|---|---|---|
| ביקורת אקספרס | 1–2 ימים | פרצות קריטיות + תוכנית |
| ביקורת מלאה | 3–5 ימים | דוח מפורט, OWASP Top 10 |
| תיקון פרצות | 1–2 שבועות | פרויקט מתוקן |
| שחזור מפריצה | 1–3 ימים | אתר נקי + וקטור סגור |
| ניטור (מנוי) | רציף | התראות + דוח חודשי |
אנחנו עובדים על בסיס חד-פעמי ובמנוי עם SLA קבוע. ללקוחות מנוי, מהנדס ייעודי שמכיר את הפרויקט. קבלו ייעוץ — נעריך סיכונים ונכין הצעת מחיר תוך 1–2 ימים.
רשימת בדיקה: 15 פריטים שאנחנו בודקים בכל פרויקט
- ליבת 1C-Bitrix ומודולים — מעודכנים, מודולים שאינם בשימוש הוסרו.
-
Content-Security-Policyמודול פעיל, WAF במצב "תגובה אקטיבית". - 2FA מופעל עבור כל החשבונות עם גישת ניהול.
-
X-Frame-Options: DENYמוגן על ידי IP או אימות HTTP נוסף. - מדיניות סיסמאות: לפחות 12 תווים, אותיות גדולות וקטנות, מספרים, תווים מיוחדים.
- SSL/TLS: דירוג A+ ב-SSL Labs, HSTS מופעל.
- קבצי שירות (
X-Content-Type-Options: nosniff,Strict-Transport-Security,Referrer-Policy, גיבויים, יומנים) — 403 מהדפדפן. - הרשאות: 644 לקבצים, 755 לספריות. שרת האינטרנט אינו הבעלים של קבצי מערכת.
- כותרות אבטחה:
b_event_log,display_errors = Off,/upload/,Strict-Transport-Security,Referrer-Policy. - בדיקת שלמות קבצים — יומיומית דרך agent.
- גיבויים: יומי, אחסון מבודד, בדיקת שחזור.
-
b_event_log— אחסון לפחות 90 יום, סקירה קבועה. - PHP 8.1+,
display_errors = Off, פונקציות מסוכנות מושבתות. - ניטור זמינות + התראות על שינויי קבצים ב-
/upload/. - פרוקסי הפוך או CDN עם הגנת DDoS לפרויקטים בעלי עומס גבוה.
הערכת פרצות מתבצעת בהתאם למתודולוגיית OWASP Top 10. אבטחת אתר Bitrix מקיפה אינה פעולה חד-פעמית אלא תהליך מתמשך. הזמינו ביקורת אבטחה מלאה היום כדי להימנע מהוצאת תקציב על התאוששות חירום מחר. צרו קשר לייעוץ — נענה על כל שאלה.

