Bot Mitigation در FortiWeb چیست و چطور در FortiWeb 7.6 کانفیگ میشود؟
Bot Mitigation در FortiWeb چیست و چطور در FortiWeb 7.6 کانفیگ میشود؟
Bot Mitigation در FortiWeb مجموعهای از قابلیتها برای شناسایی، کنترل و کاهش ترافیک Bot است. این ترافیک میتواند از نوع Crawler، Scanner، Credential Stuffing، Content Scraping، Slow Attack، DoS Bot، Spam Bot یا حتی Search Engineهای قانونی باشد. نکته مهم این است که همه Botها بد نیستند؛ بعضی مثل Search Engineها برای کسبوکار مفیدند، اما Botهای مخرب میتوانند باعث مصرف منابع، جمعآوری داده، تست آسیبپذیری، حمله به صفحه Login و خراب شدن تجربه کاربر شوند.
این مقاله بر اساس FortiWeb 7.6 و با تمرکز روی پیادهسازی عملیاتی نوشته شده است. هدف این است که ادمین FortiWeb بتواند قبل از فعالسازی Bot Mitigation بفهمد این قابلیت برای سناریوی او مناسب است یا نه، سپس مرحلهبهمرحله Ruleها را بسازد، آنها را در Bot Mitigation Policy تجمیع کند، Policy را به Web Protection Profile وصل کند و در نهایت Log و False Positive را بررسی کند.
نکته مهم: Bot Mitigation یک دکمه جادویی نیست که یکباره روی کل سایت فعال شود و تمام Botها را بدون خطا Block کند. بهترین روش این است که ابتدا روی Alert و Monitor شروع کنید، لاگها را بررسی کنید، Exceptionهای لازم را بسازید و بعد برای بخشهای حساس مثل Login، Register، Search، Product Listing یا APIهای پرترافیک Action را سختگیرانهتر کنید.
مروری بر این مقاله
- Bot Mitigation در FortiWeb دقیقاً چه کاری انجام میدهد؟
- چه زمانی باید از Bot Mitigation استفاده کنیم؟
- اجزای اصلی Bot Mitigation در FortiWeb
- پیشنیازهای پیادهسازی
- طراحی مرحلهای پیشنهادی برای Production
- Known Bots را چطور تنظیم کنیم؟
- Threshold Based Detection را چطور تنظیم کنیم؟
- Biometrics Based Detection را چطور تنظیم کنیم؟
- Bot Deception را چطور تنظیم کنیم؟
- Exception Policy برای جلوگیری از False Positive
- ساخت Bot Mitigation Policy و اتصال به Protection Profile
- نمونه CLI کامل برای شروع
- سناریوهای کاربردی
- لاگ، مانیتورینگ و عیبیابی
- جدول مقایسه قابلیتها
- چکلیست پیادهسازی
1. Bot Mitigation در FortiWeb دقیقاً چه کاری انجام میدهد؟
FortiWeb برای مقابله با Botها فقط به یک روش تکی وابسته نیست. در مستندات Fortinet، Bot Mitigation شامل چند لایه مثل Biometrics-Based Bot Detection، Threshold-Based Bot Detection، Bot Deception، Known Bots، Machine Learning Based Bot Detection و Advanced Bot Protection معرفی شده است. هرکدام از این بخشها یک نوع رفتار Bot را پوشش میدهد و باید بر اساس سناریوی سایت انتخاب شود.
در عمل، Bot Mitigation به FortiWeb کمک میکند رفتارهایی مثل تعداد زیاد درخواست، اسکن URLهای غیرواقعی، دریافت مکرر صفحات، نبود رفتار انسانی در مرورگر، دنبال کردن لینک مخفی، استفاده از User-Agentهای شناختهشده مخرب یا حمله به صفحه Login را شناسایی کند. سپس بسته به Action تعریفشده، FortiWeb میتواند فقط Alert بدهد، درخواست را Deny کند، برای مدتی Client را Block کند، CAPTCHA یا Real Browser Enforcement اعمال کند یا درخواست را به صفحه خاصی Redirect کند.
2. چه زمانی باید از Bot Mitigation استفاده کنیم؟
Bot Mitigation برای هر سایتی لازم نیست با یک سطح سختگیرانه فعال شود. قبل از پیادهسازی باید مشخص کنید مشکل شما چیست. اگر مشکل اصلی Search Engine نیست و فقط میخواهید Google و Bing را مدیریت کنید، Known Bots کافی است. اگر مشکل Scraper، Scanner یا Credential Stuffing دارید، باید Threshold و Biometrics را جدیتر تنظیم کنید. اگر هدف کشف Crawlerهای ساده و Botهایی است که همه لینکها را دنبال میکنند، Bot Deception مفید است.
| نشانه در لاگ یا رفتار سایت |
قابلیت پیشنهادی |
Action شروع |
| تعداد زیاد 404 یا تست مسیرهای غیرواقعی مثل /admin و /.env |
Threshold Based Detection - Vulnerability Scanning |
Alert سپس Alert & Deny |
| درخواستهای پشتسرهم برای صفحات محصول، لیست قیمت یا Search |
Threshold Based Detection - Content Scraping |
Alert سپس Block Period |
| حمله به صفحه Login یا تست پسورد |
Biometrics + Threshold + CAPTCHA |
Real Browser Enforcement یا CAPTCHA |
| رباتهایی که همه لینکها حتی لینکهای مخفی را دنبال میکنند |
Bot Deception |
Alert & Deny |
| Search Engineهای قانونی که نباید Block شوند |
Known Bots |
Bypass یا Alert |
| API یا Mobile App بدون تعامل انسانی |
Threshold + Exception دقیق |
Monitor اول، سپس کنترل مرحلهای |
3. اجزای اصلی Bot Mitigation در FortiWeb
Known Bots
Known Bots برای شناسایی Botهای شناختهشده استفاده میشود. در CLI Reference نسخه 7.6.7، Fortinet توضیح میدهد که این قابلیت هم Botهای مخرب مثل DoS، Spam و Crawler را پوشش میدهد و هم known good bots مثل Search Engineها را بدون اختلال در ترافیک مهم مدیریت میکند. این بخش برای جلوگیری از Block اشتباه Search Engineهای قانونی بسیار مهم است.
Threshold Based Detection
Threshold Based Detection رفتارهای مشکوک را بر اساس تعداد رخداد در یک بازه زمانی بررسی میکند. در CLI Reference نسخه 7.6.7 رفتارهایی مثل Crawler، Vulnerability Scanning، Slow Attack، Content Scraping و Illegal User Scan برای این بخش ذکر شدهاند. این قابلیت برای سناریوهایی که Bot با سرعت بالا یا الگوی غیرعادی کار میکند بسیار کاربردی است.
Biometrics Based Detection
Biometrics Based Detection تلاش میکند رفتار Client را از نظر رویدادهای انسانی بررسی کند؛ مثل Mouse Movement، Click، Keyboard، Screen Touch، Scroll و Page Focus. Fortinet در مستندات اشاره میکند که FortiWeb از رویدادهای Client استفاده میکند تا تشخیص دهد درخواست از انسان آمده یا Bot. این روش برای صفحات وب تعاملی و Login مفید است، اما برای API یا Mobile App باید با احتیاط استفاده شود.
Bot Deception
Bot Deception با اضافه کردن یک لینک مخفی به صفحه HTML کار میکند. کاربر واقعی آن لینک را نمیبیند و کلیک نمیکند، اما Bot یا Crawler ممکن است لینک را دنبال کند و همین رفتار به FortiWeb نشان میدهد که Client احتمالاً Bot است. برای سایتهایی که HTML کامل دارند و Crawler مشکل اصلی است، این روش ساده و مؤثر است.
ML Based Bot Detection و Advanced Bot Protection
ML Based Bot Detection در FortiWeb رفتار Clientها را در چند بعد یاد میگیرد و با الگوریتم SVM رفتارهای غیرعادی را تشخیص میدهد. Advanced Bot Protection هم سرویس SaaS Fortinet برای Botهای پیشرفتهتر است و طبق مستندات، ترافیک Client برای تحلیل Bot Behavior به سرویس FortiGuard ABP هدایت میشود. این دو بخش برای سناریوهای بزرگتر یا Botهای پیچیدهتر مناسباند، اما مقاله حاضر تمرکز عملیاتی را روی Bot Mitigation Policy داخلی قرار میدهد.
4. پیشنیازهای پیادهسازی
- FortiWeb باید در Modeای باشد که بتواند ترافیک HTTP/HTTPS را بهدرستی ببیند؛ در بیشتر پروژهها Reverse Proxy بهترین انتخاب است.
- برای HTTPS، Certificate و SSL Inspection/Offload باید درست پیادهسازی شده باشد.
- Attack Log و Traffic Log باید فعال باشد تا بتوان False Positive را بررسی کرد.
- برای صفحات حساس مثل Login، Register، Search و API، URLها باید دقیق شناسایی شوند.
- اگر سایت API یا Mobile App دارد، نباید Biometrics را کورکورانه روی همه مسیرها فعال کرد.
- قبل از Block، بهتر است حداقل چند روز Alert/Monitor انجام شود.
5. طراحی مرحلهای پیشنهادی برای Production
برای محیط عملیاتی، پیشنهاد میشود Bot Mitigation را مرحلهای فعال کنید. مرحله اول فقط Alert است؛ مرحله دوم بررسی لاگ و ساخت Exception؛ مرحله سوم اعمال Block روی رفتارهای واضحاً مخرب؛ و مرحله چهارم سختگیری روی صفحات حساس مثل Login یا Search.
هشدار عملیاتی: فعال کردن همزمان Known Bots، Threshold، Biometrics و Bot Deception با Action سختگیرانه روی کل سایت میتواند باعث Block شدن کاربران واقعی، ابزارهای Monitoring، Scannerهای داخلی، سرویسهای Third-party، Mobile App یا API Clientها شود.
6. Known Bots را چطور تنظیم کنیم؟
از مسیر زیر وارد شوید:
Bot Mitigation > Known Bots
یک Rule جدید بسازید. برای شروع، پیشنهاد عملیاتی این است که Known Good Bots را روی Bypass یا Alert بگذارید و Botهای مخرب مثل Crawler، Scanner، Spam، DoS و Trojan را ابتدا Alert و بعد از بررسی روی Alert & Deny یا Block Period قرار دهید.
| نوع Bot |
پیشنهاد شروع |
پیشنهاد بعد از بررسی لاگ |
| Known Search Engines |
Bypass یا Alert |
Bypass برای Botهای معتبر |
| Crawler مشکوک |
Alert |
Block Period |
| Scanner |
Alert |
Alert & Deny |
| DoS Bot |
Alert |
Block Period |
| Spam Bot |
Alert |
Alert & Deny |
نمونه CLI پایه:
config waf known-bots
edit "KB-Production"
set known-engines-status enable
set known-engines-action bypass
set known-engines-severity Info
set crawler-status enable
set crawler-action alert
set crawler-severity Medium
set scanner-status enable
set scanner-action alert_deny
set scanner-severity High
set spam-status enable
set spam-action alert_deny
set spam-severity Medium
set dos-status enable
set dos-action block_period
set dos-block-period 300
set dos-severity High
next
end
برای مشاهده Syntax دقیق همان نسخه:
config waf known-bots
edit "KB-Production"
?
7. Threshold Based Detection را چطور تنظیم کنیم؟
از مسیر زیر وارد شوید:
Bot Mitigation > Threshold Based Detection
در این بخش باید مشخص کنید FortiWeb کدام رفتارهای مشکوک را بررسی کند. مهمترین رفتارها عبارتاند از Crawler، Vulnerability Scanning، Slow Attack، Content Scraping و Illegal User Scan. برای شروع، عددها را خیلی سختگیرانه نگذارید. اول Alert بگیرید، سپس بر اساس لاگ واقعی سایت مقدارها را کم یا زیاد کنید.
پیشنهاد برای سایت عمومی
- Crawler Detection: فعال، ابتدا Alert
- Scanner Detection: فعال، Action روی Alert & Deny بعد از تست
- Content Scraping: فعال روی صفحات لیستی، نه کل سایت
- Slow Attack: فعال برای محافظت از منابع سرور
- Bot Recognition: برای صفحات حساس Real Browser Enforcement یا CAPTCHA
نمونه CLI شروع محافظهکارانه:
config waf threshold-based-detection
edit "TBD-Production-Monitor"
set bot-recognition real-browser-enforcement
set validation-timeout 20
set max-attempt-times 3
set crawler-detection enable
set crawler-action alert
set crawler-severity Medium
set crawler-occurrence-num 80
set crawler-within 60
set scanner-detection enable
set scanner-action alert_deny
set scanner-severity High
set scanner-occurrence-num 20
set scanner-within 60
set slow-attack-detection enable
set slow-attack-action alert
set slow-attack-severity Medium
set slow-attack-occurrence-num 10
set slow-attack-within 60
set slow-attack-HTTP-transaction-timeout 30
set slow-attack-packet-interval-timeout 10
set content-scraping-detection enable
set content-scraping-action alert
set content-scraping-severity Medium
set content-scraping-occurrence-num 120
set content-scraping-within 60
next
end
توضیح عددها: مقدارهای بالا نسخه نهایی نیستند؛ نقطه شروع محافظهکارانهاند. برای سایتی با ترافیک بالا باید Thresholdها بیشتر شوند. برای صفحه Login یا Search ممکن است عددها کمتر و Action سختگیرانهتر شود.
8. Biometrics Based Detection را چطور تنظیم کنیم؟
از مسیر زیر وارد شوید:
Bot Mitigation > Biometrics Based Detection
در این بخش FortiWeb از Client Eventها استفاده میکند. پیشفرضهای مهم شامل Mouse Movement، Click و Keyboard هستند. برای صفحه Login، Register و فرمهای مهم، این قابلیت ارزشمند است. برای API، Webhook و Mobile App ممکن است باعث False Positive شود؛ چون آنها الزاماً Mouse یا Keyboard ندارند.
نمونه GUI پیشنهادی برای صفحه Login:
| گزینه |
مقدار پیشنهادی |
توضیح |
| Mouse Movement |
Enable |
برای تشخیص رفتار انسانی |
| Click |
Enable |
برای فرمها و دکمهها |
| Keyboard |
Enable |
برای Login و Search |
| Screen Touch |
Enable در صورت وجود Mobile Web |
برای کاربران موبایل |
| Bot Traits |
Enable |
لایه اضافه برای Headless Browser و Scriptها |
| URL List |
محدود به Login/Register |
فعالسازی روی کل سایت توصیه نمیشود |
نمونه CLI:
config waf biometrics-based-detection
edit "BBD-Login"
set mouse-movement enable
set click enable
set keyboard enable
set screen-touch enable
set scroll disable
set page-focus enable
set bot-traits enable
set bot-traits-num 5
set event-collection-time 15
set bot-effective-time 5
set action alert
set severity medium
set bot-access-rate 5
config url-list
edit 1
set host-status enable
set host "www.example.com"
set type simple-string
set url "/login"
next
edit 2
set host-status enable
set host "www.example.com"
set type simple-string
set url "/register"
next
end
next
end
9. Bot Deception را چطور تنظیم کنیم؟
از مسیر زیر وارد شوید:
Bot Mitigation > Bot Deception
یک Deception URL تعریف کنید؛ یعنی URLای که برای کاربر عادی قابل مشاهده نیست و فقط داخل HTML بهصورت مخفی تزریق میشود. اگر Bot آن URL را درخواست کند، FortiWeb آن را بهعنوان رفتار Bot تشخیص میدهد. برای نام URL از مسیر واقعی، مهم یا قابل حدس استفاده نکنید. بهتر است اسم آن طبیعی ولی غیرواقعی باشد.
نمونههای خوب برای Deception URL:
/assets/cache/customer-map.js
/static/report/health-check.html
/resource/legacy/catalog-sync.php
نمونه CLI:
config waf bot-deception
edit "BD-General"
set deception-url "/assets/cache/customer-map.js"
set action alert_deny
config url-list
edit 1
set url "/"
next
edit 2
set url "/products"
next
edit 3
set url "/blog"
next
end
next
end
توجه: Bot Deception برای پاسخهای HTML مناسب است. برای APIهای JSON، فایلهای Static یا مسیرهایی که HTML ندارند، نتیجه آن مثل صفحات عادی سایت نخواهد بود. بعد از ساخت Policy با ابزارهایی مثل مرورگر و Log بررسی کنید که لینک مخفی باعث اختلال در UI یا SEO نشود.
10. Exception Policy برای جلوگیری از False Positive
Exception Policy زمانی لازم است که یک مسیر، IP، Host یا پارامتر خاص در حالت عادی باعث Trigger شدن Bot Mitigation میشود. برای مثال Monitoring داخلی، Scanner مجاز، Health Check، API Gateway، سرویس پرداخت، Callback بانک، CDN یا مسیرهای Mobile App ممکن است رفتار انسانی نداشته باشند و باید از بعضی چکها مستثنی شوند.
از مسیر زیر وارد شوید:
Bot Mitigation > Exception Policy
نمونه CLI برای Exception یک IP مانیتورینگ و یک URI:
config waf bot-mitigate-exception
edit "BOT-EXC-Internal-Monitoring"
config exception-element-list
edit 1
set match-target CLIENT_IP
set operator EQ
set ip-range "192.168.10.50"
set concatenate-type OR
next
edit 2
set match-target URI
set operator STRING_MATCH
set value "/health"
set concatenate-type OR
next
end
next
end
11. ساخت Bot Mitigation Policy و اتصال به Protection Profile
بعد از اینکه Known Bots، Threshold، Biometrics، Bot Deception و Exception را ساختید، باید همه را در Bot Mitigation Policy انتخاب کنید. Fortinet در مستندات توضیح میدهد که Bot Mitigation Policy این بخشها را تجمیع میکند و سپس در Web Protection Profile اعمال میشود.
مسیر GUI ساخت Policy:
Bot Mitigation > Bot Mitigation Policy > Create New
سپس این Policy را در Web Protection Profile انتخاب کنید:
Policy > Web Protection Profile > Inline Protection Profile > Edit > Bot Mitigation > Bot Mitigation Policy
نمونه CLI برای تجمیع Ruleها:
config waf bot-mitigate-policy
edit "BMP-Production"
set known-bots "KB-Production"
set threshold-based-detection "TBD-Production-Monitor"
set biometrics-based-detection "BBD-Login"
set bot-deception "BD-General"
next
end
نمونه اتصال به Web Protection Profile:
config waf web-protection-profile inline-protection
edit "WPP-Production"
set bot-mitigation-policy "BMP-Production"
next
end
نکته: اگر روی نسخه شما نام دقیق گزینه داخل Web Protection Profile متفاوت بود، داخل همین Context از علامت سؤال استفاده کنید و نام فیلد مربوط به Bot Mitigation Policy را بررسی کنید.
12. نمونه CLI کامل برای شروع
نمونه زیر یک سناریوی پایه برای سایت Production است. این نمونه برای شروع طراحی است، نه نسخه نهایی همه سایتها. قبل از اعمال در Production، نام Host، URLها، Thresholdها، Actionها و Exceptionها باید با ترافیک واقعی سازمان تطبیق داده شوند.
config waf known-bots
edit "KB-Production"
set known-engines-status enable
set known-engines-action bypass
set crawler-status enable
set crawler-action alert
set scanner-status enable
set scanner-action alert_deny
set dos-status enable
set dos-action block_period
set dos-block-period 300
next
end
config waf threshold-based-detection
edit "TBD-Production-Monitor"
set bot-recognition real-browser-enforcement
set validation-timeout 20
set max-attempt-times 3
set crawler-detection enable
set crawler-action alert
set crawler-occurrence-num 80
set crawler-within 60
set scanner-detection enable
set scanner-action alert_deny
set scanner-occurrence-num 20
set scanner-within 60
set content-scraping-detection enable
set content-scraping-action alert
set content-scraping-occurrence-num 120
set content-scraping-within 60
next
end
config waf biometrics-based-detection
edit "BBD-Login"
set mouse-movement enable
set click enable
set keyboard enable
set screen-touch enable
set bot-traits enable
set bot-traits-num 5
set event-collection-time 15
set action alert
config url-list
edit 1
set host-status enable
set host "www.example.com"
set type simple-string
set url "/login"
next
end
next
end
config waf bot-deception
edit "BD-General"
set deception-url "/assets/cache/customer-map.js"
set action alert_deny
config url-list
edit 1
set url "/"
next
edit 2
set url "/products"
next
end
next
end
config waf bot-mitigate-policy
edit "BMP-Production"
set known-bots "KB-Production"
set threshold-based-detection "TBD-Production-Monitor"
set biometrics-based-detection "BBD-Login"
set bot-deception "BD-General"
next
end
config waf web-protection-profile inline-protection
edit "WPP-Production"
set bot-mitigation-policy "BMP-Production"
next
end
13. سناریوهای کاربردی
سناریوی فروشگاه اینترنتی
در فروشگاه اینترنتی معمولاً مشکل اصلی Scraping قیمت، Product Enumeration، Search Abuse و Credential Stuffing است. برای این سناریو، Threshold روی Product Listing و Search فعال شود، Biometrics فقط روی Login و Register فعال شود، Known Good Bots بایپس شوند و Bot Deception روی صفحات HTML عمومی قرار بگیرد.
سناریوی پرتال سازمانی
در پرتال سازمانی، تمرکز روی Login، Session، اسکن مسیرهای مدیریتی و جلوگیری از Password Guessing است. Biometrics و Real Browser Enforcement برای Login مفید است. Scanner Detection باید سریعتر سختگیرانه شود، اما Health Checkها و مانیتورینگ داخلی باید Exception شوند.
سناریوی API یا ESB
برای API، Biometrics معمولاً انتخاب خوبی نیست چون Clientها مرورگر انسانی نیستند. در این سناریو بیشتر روی Threshold، Rate/DoS Protection، Signature، API Protection، Client Certificate، JWT یا Authentication بیرونی تمرکز کنید. Bot Mitigation میتواند کمک کند، اما باید URLها و Exceptionها دقیق باشد.
سناریوی سایت خبری یا محتوایی
مشکل اصلی معمولاً Crawler و Scraper است. Bot Deception و Content Scraping Detection مفید هستند. Known Good Bots باید با دقت Bypass شوند تا SEO آسیب نبیند.
14. لاگ، مانیتورینگ و عیبیابی
برای بررسی رخدادها از مسیرهای زیر استفاده کنید:
Log & Report > Log Access > Attack
FortiView > Threats
Bot Mitigation > ML Based Bot Detection > Violations
دستورهای مفید برای بررسی Config:
show waf known-bots
show waf threshold-based-detection
show waf biometrics-based-detection
show waf bot-deception
show waf bot-mitigate-policy
show waf web-protection-profile inline-protection
اگر Bot Mitigation کار نمیکند، این موارد را بررسی کنید:
- Bot Mitigation Policy ساخته شده اما به Web Protection Profile وصل نشده است.
- Web Protection Profile به Server Policy درست متصل نیست.
- ترافیک HTTPS Decrypt نمیشود و FortiWeb رفتار HTTP را کامل نمیبیند.
- URL List در Biometrics یا Bot Deception با مسیر واقعی سایت Match نمیشود.
- Action روی Alert است و انتظار Block دارید.
- Exception Policy بیش از حد گسترده نوشته شده و همه چیز را مستثنی کرده است.
- برای API از Biometrics استفاده شده و False Positive ایجاد شده است.
- Known Good Bots اشتباه Block شدهاند و SEO یا Indexing آسیب دیده است.
15. جدول مقایسه قابلیتها
| قابلیت |
مناسب برای |
نامناسب یا پرریسک برای |
Action پیشنهادی شروع |
نکته مهم |
| Known Bots |
تفکیک Bot خوب و بد |
زمانی که دیتابیس/Update در دسترس نیست |
Good Bots: Bypass، Bad Bots: Alert |
برای SEO حیاتی است |
| Threshold Based Detection |
Scanner، Scraper، Slow Attack، Crawler |
سایتهایی با Burst طبیعی زیاد بدون تیونینگ |
Alert |
Threshold باید با لاگ واقعی تنظیم شود |
| Biometrics Based Detection |
Login، Register، فرمهای تعاملی |
API، Webhook، Mobile App بدون Browser Event |
Alert یا Real Browser |
روی کل سایت فعال نشود |
| Bot Deception |
Crawlerهای ساده و Scraperهای HTML |
API و مسیرهای غیر HTML |
Alert & Deny بعد از تست |
Deception URL نباید واقعی باشد |
| ML Based Bot Detection |
ترافیک زیاد و الگوهای پیچیده |
سایت کمترافیک یا تازه راهاندازیشده |
Learning سپس Monitor |
به زمان یادگیری نیاز دارد |
| Advanced Bot Protection |
Botهای حرفهای و سناریوهای Enterprise |
محیطهای آفلاین یا بدون امکان ارتباط Cloud |
Sample Collection سپس Enforce |
سرویس SaaS و نیازمند طراحی جداست |