امنیت ایمیل چه اهمیتی دارد؟
در این مقاله قصد داریم برای کمک به صاحبان دامنه و همچنین مدیران سیستم، به فرآیند امنسازی (Hardening) ایمیل بپردازیم. در نظر گرفتن استانداردهای امنیت ایمیل مانند SPF، DKIM و DMARC برای دامنه، میتواند کلاهبرداری و جعل را کاهش دهد و در عین حال، قابلیت تحویل ایمیل (Deliverability) را نیز بهبود بخشید.
راههای زیادی برای انجام فعالیتهای کلاهبرداری و از بین بردن امنیت ایمیل (Email Security) وجود دارد. در حوزهی امنیت و فناوری اطلاعات، به اصطلاح گفته میشود که ایمیل سطح حمله (Attack Surface) بزرگی دارد. تا به حال به این سوال پاسخ دادهاید که چگونه بردار حمله خطرات را کشف و نظرات کنیم؟
بحث و تحلیل در مورد جلوگیری از تمام حملات احتمالی، منجر به تولید یک مقاله بسیار طولانی خواهد شد که از حوصله خارج است. نوع امنسازی مورد بحث ما در این مقاله، جلوگیری از هرزنامه، کلاهبرداری و قابلیت تحویل ایمیل است. به کارگیری تکنیکهای استاندارد SPF، DKIM وDMARC، سوءاستفاده از یک دامنه را برای فرستندگان غیرمجاز، دشوارتر خواهد کرد. استفاده از این تکنیکها همچنین باعث بهبود قابلیت تحویل ایمیل مجاز میشود.
لطفاً توجه داشته باشید که تکنیکهای امنسازی شرح داده شده در اینجا، برای ایمیلهایی که از نام دامنه شما ارسال میشوند، قابل اعمال هستند، نه ایمیلهایی که به دامنه شما ارسال میشوند. به عبارتی دیگر، این تکنیکها از هرزنامهها (SPAM)، ویروسها یا حملات فیشینگ ارسال شده به سازمان شما جلوگیری نمیکنند و همچنین مانع از نفوذ کسی به mailbox شما نیز نمیشوند.
یک نکته قابل توجه دیگر این است که این روشها عموماً قابلیت تحویل پیامهای ایمیل را بهبود میبخشند. اگر ایمیل ناخواسته یا هرزنامه ارسال میکنید، انتظار نداشته باشید که هیچ یک از این تکنیکها، به شما در فریب دادن فیلتر هرزنامه کمک کند.
![what is an email security and why is important](https://hadess.io/fa/wp-content/uploads/sites/2/2023/06/1-min-16.webp)
یکی از مواردی که شرکتها به کمک آن میتوانند میزان امنیت ایمیل خود را در سازمان بررسی کنند، استفاده از متخصصین تیم قرمز (Red Teaming) است. همانطور که پیشتر در توضیحات گفتیم، تیم قرمز به گروهی از افراد گویند که با کمک تست نفوذ، برای آزمایش، ارتقا امنیت و همچنین بهبود کارایی یک سازمان، استخدام میشوند. این روش استفاده از استراتژیها، سیستمها و روشها برای شبیهسازی سناریوهای حملات هکری در دنیای واقعی، با هدف سنجش و ایجاد امنیت سایبری در سازمان است.
استانداردهای موجود در امنیت ایمیل
بعد از توضیحات اولیه درباره امنیت ایمیل، نیاز است تا به بررسی تک به تک استانداردهای موجود در امنیت ایمیل و همچنین مزایا و نتایج آنها که پیشتر گفتیم، بپردازیم.
1. استاندارد چارچوب خط مشی فرستنده (SPF)
یکی از اولین اقدامات متقابل هرزنامه (SPAM) و کلاهبرداری، اضافه کردن یک افزونه به پروتکل ایمیل بود، که با عنوان چارچوب خط مشی فرستنده (Sender Policy Framework) به اختصار SPF شناخته میشود. SPF به صاحب دامنه اجازه میدهد خطمشیای را منتشر کند، که در آن مشخص شود چه سرویسهایی مجاز به ارسال ایمیل از طرف دامنه هستند.
چارچوب خط مشی فرستنده (SPF) به عنوان یک رکورد DNS تحت دامنهای که در آدرس فرستنده استفاده شده است، منتشر میشود. یک سیستم دریافت کننده ایمیل، رکورد DNS را بررسی میکند و تعیین میکند که آیا فرستنده مجاز به ارسال ایمیل از طرف دامنه است یا خیر.
درصورتی که فرستنده در لیست SPF نباشد، گیرندهی ایمیل، باید با احتیاط بیشتری برخورد کند، تاکید بیشتری در تشخیص ایمیل به عنوان هرزنامه (SPAM) نشان دهد و یا حتی ممکن است ایمیل را به طور کامل رد کند. اگر فرستنده از بازرسی SPF عبور کند، علامت خوبی برای گیرنده است تا بتواند ایمیل را مجاز و قانونی در نظر بگیرد. زمانی که ایمیل توسط یک سرویس فرستنده (Forwarding) ارسال میشود، باعث خرابی تایید اعتبار SPF خواهد شد.
![استاندارد چارچوب خط مشی فرستنده (SPF) در امنیت ایمیل](https://hadess.io/fa/wp-content/uploads/sites/2/2023/06/2-min-13.webp)
به عنوان مثال اگر oldcompany.com خود را به عنوان newcompany.com نامگذاری کند، معمولاً یک سرویس forwarding راهاندازی میکنند تا تمام ایمیلهای دریافتی در دامین قدیم به طور خودکار به دامین جدید ارسال شود. طبیعتا آنها میخواهند آدرس فرستنده اصلی را هنگام ارسال ایمیل حفظ کنند.
بنابراین وقتی ایمیلی از yourdomain.com به olddomain.com ارسال میکنید، در واقع به newdomain.com ارسال میشود. این مورد کاملاً قانونی و مجاز است، ولی همچنین بدین معنی است، که olddomain.com یک ایمیل از طرف yourdomain.com، از طریق forward کردن آن، ارسال کرده است.
نتایج استاندارد SPF
نتیجه SPF | اطلاعات به گیرنده |
Aligned pass | اطمینان بالایی وجود دارد که این فرستنده مجاز به ارسال ایمیل از طرف دامنه است. |
Unaligned pass | اطمینان نسبی وجود دارد که این فرستنده مجاز به ارسال ایمیل از طرف دامنه است. |
No usable SPF | گیرنده از یک “result” خنثی برای SPF استفاده میکند. این ممکن است باعث اشتباه در تشخیص هرزنامه یا کلاهبرداری شود. |
Soft fail | احتمال کلاهبرداری یا هرزنامه بودن ایمیل نسبتا بالاست. ایمیل ممکن است همچنان پذیرفته شود، اما احتمالاً به عنوان جعلی علامت گذاری شده است. |
Hard fail | احتمال کلاهبرداری یا هرزنامه بودن ایمیل بالا است. ایمیل ممکن است به طور کامل رد شود، یا در غیر این صورت به عنوان جعلی علامت گذاری شود. |
به طور مثال رکورد SPF TXT را در نظر بگیرید:
"v=spf1 ip4:192.168.0.1/16 -all"
- سرور ایمیل، دارای SPF یک ایمیل از Somebody@example.com دریافت میکند.
- سرور ایمیل، example.com را جستجو میکند و رکورد SPF TXT را در DNS میخواند.
- اگر سرور مبدا ایمیل، با یکی از سرورهای مجاز در رکورد SPF مطابقت داشته باشد، پیام پذیرفته میشود.
SPF باید در همه سیستمهای ایمیل لبه فعال باشد تا اطمینان حاصل شود که هر ایمیلی که به سازمان وارد میشود را میتوان از نظر SPF بررسی کرد. همچنین ایمیلهایی که از سازمان میآیند نتوانند توسط شخصی با استفاده از سرور ایمیلی که در رکورد SPF فهرست نشده است، جعل هویت شوند. عدم استفاده از SPF به این معنی است که ایمیلهای شما، نمیتواند از نظر داشتن یک سرور مبدا معتبر بررسی شوند و بنابراین ایمیلهایی که این ویژگی را دارند، قطعا کمتر قابل اعتماد هستند.
![احراز هویت برای ایمیل چگونه کار میکند](https://hadess.io/fa/wp-content/uploads/sites/2/2023/06/3-min-13.webp)
2. استاندارد مقابله با هرزنامه و ایمیل کلاهبرداری (DKIM) در امنیت ایمیل
با توجه به کاستی ای استاندارد SPF، روش دوم مقابله با هرزنامه (SPAM) و ایمیلهای کلاهبرداری (Domain Keys Identified Mail) یا به اختصار DKIM معرفی شد. با DKIM، ایمیل با امضای رمزنگاری، امضا میشود. در واقع این امضا ثابت میکند که ایمیل معتبر است (تغییر داده نشده) و فرستنده مجاز به ارسال ایمیل از طرف دامنه است.
برای استفاده صحیح از DKIM، کلید عمومی برای امضا به عنوان رکورد DNS در دامنه قرار میگیرد. این امر برای گیرنده این معنی را میدهد که اگر امضای DKIM با این کلید مطابقت داشت، میتوانی به فرستنده اعتماد کنی.
از آنجایی که DKIM کاملا اختیاری است، هر ایمیل بدون امضای DKIM، همچنان توسط گیرنده پذیرفته میشود. اما ایمیلی با امضای DKIM، به گیرنده اطمینان بیشتری در هنگام شناسایی هرزنامه (SPAM) و کلاهبرداری میدهد.
یک موضوع مهم در رابطه با DKIM این است که سرویسهای ایمیل میتوانند امضای DKIM را خودشان امضا کنند، به این معنی که کلید عمومی DKIM در دامنه آنها میزبانی میشود، نه در دامنه شما. در اصطلاح امنیت ایمیل، ما از همترازی (Alignment) در DKIM صحبت میکنیم، اگر کلید عمومی DKIM تحت همان دامنهای که در آدرس ایمیل فرستنده استفاده شده منتشر شود، امضای DKIM همتراز است.
توجه داشته باشید که اکثر سرویسهای ایمیل (مانند Gmail، Outlook و Yahoo) بازرسی DKIM را بهعنوان تأیید شده گزارش میکنند، حتی اگر امضای DKIM تراز نباشد. برای اطمینان از اینکه تمام ایمیلها امضا و تراز شده است، باید از مانیتورینگ DMARC استفاده شود.
نتایج استاندارد DKIM
نتیجه DKIM | اطلاعات به گیرنده |
Aligned pass | اطمینان بالایی وجود دارد که فرستنده مجاز به ارسال ایمیل از طرف دامنه باشد، پس ایمیل نیز معتبر است. |
Unaligned pass | ایمیل معتبر است، اما ممکن است فرستنده، مجاز به ارسال ایمیل از طرف دامنه نباشد. |
No DKIM | گیرنده از DKIM استفاده نمیکند، که میتواند منجر به اشتباه در تشخیص هرزنامه / کلاهبرداری شود. |
DKIM fail | اطمینان بالا مبنی بر اینکه ایمیل معتبر نیست، احتمال بالای اینکه فرستنده احراز هویت نشده است. گیرنده ممکن است ایمیل را رد کند یا آن را در درجهی زیاد با عنوان کلاهبرداری یا هرزنامه ارسال کند. |
به طور مثال نمونه رکورد DKIM TXT را در نظر بگیرید:
"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrLHiExVd55zd/IQ/J/mRwSRMAocV/hMB3jXwaHH36d9NaVynQFYV8NaWi69c1veUtRzGt7yAioXqLj7Z4TeEUoOLgrKsn8YnckGs9i3B3tVFB+Ch/4mPhXWiNfNdynHWBcPcbJ8kjEQ2U8y78dHZj1YeRXXVvWob2OaKynO8/lQIDAQAB;"
Syntax رکورد DKIM برخلاف SPF، که بر اساس هر دامنه اعمال میشود، یک امضای رمزگذاری شده بر روی هر پیام اضافه میکند که میتواند توسط یک سرور راه دور در برابر یک رکورد DNS TXT تأیید شود.
به طورکلی، سازمانها مسئولیت پیامهای ایمیل با امضای DKIM خود را بر عهده میگیرند. از آنجایی که امضاها رمزگذاری شدهاند، جعل کردن آنها امری دشوار است. بنابراین اعتبار یک سازمان به واسطه پیامهایی است که تحت امضای DKIM آنها ارسال میشود.
امضاهای DKIM توسط سرورهای ایمیلی که از آن پشتیبانی نمیکنند نادیده گرفته میشوند. بنابراین نگرانی در مورد سازگاری همه گیرندهها با DKIM وجود ندارد. عدم استفاده از DKIM، یکپارچگی ایمیل را کاهش داده و احتمال قرار گرفتن دامنه، در لیست سیاه را افزایش میدهد.
آیا مفهوم بردار حمله (Attack Vector) در امنیت سایبری را میشناسید؟
استاندارد احراز هویت، گزارش و مطابقت پیام (DMARC)
DMARC مخفف عبارت Domain-based Message Authentication, Reporting & Conformance و به معنای احراز هویت, گزارش و مطابقت پیام براساس دامنه است. این استاندارد ایمیل، گیرندگان را در مورد نحوه برخورد با ایمیل از دامنهی شما راهنمایی میکند. DMARC همچنین این امکان را فراهم میکند که از گیرندگان بخواهید گزارشهایی درباره نتایج بازرسی SPF و DKIM ایمیلهایی که از دامنه شما دریافت کردهاند، ارسال کنند.
DMARC مانند SPF خطمشیای است که به عنوان رکورد DNS در دامنه منتشر میشود. در واقع DMARC به گیرندگان توصیه میکند که برای تمام ایمیلهای دامنه، همترازی (Alignment) را در SPF یا DKIM مدنظر قرار دهند و اگر ایمیلی نتواند از همترازی عبور کند، چه کاری انجام دهند.
![what is DMARC in Email security](https://hadess.io/fa/wp-content/uploads/sites/2/2023/06/4-min-8-edited.webp)
مهمترین مقدار در یک رکورد DMARC مقدار p معادل خط مشی (Policy) است. این مقدار به گیرنده توصیه میکند که اگر ایمیلی نتواند از aligned SPF یا DKIM aligned عبور کند، چه کاری انجام دهد. توجه داشته باشید که گذر با SPF یا DKIM به صورت تراز نشده، جزو عبور از DMARC محسوب نمیشود.
نتایج استاندارد DMARC، در امنیت ایمیل
خط مشی(Policy) | مفهوم |
none | اگر DMARC فقط برای ویژگی نظارت(Monitoring) تنظیم شده باشد، معمولاً از خط مشی none استفاده میشود. این هیچ تاثیری بر نحوه برخورد گیرندگان با ایمیل ندارد. این حالت به عنوان monitoring mode نیز شناخته میشود. |
quarantine | اگر هم ترازی (alignment)SPF و DKIM یک ایمیل رد شود، این ایمیل قرنطینه میشود. معنای قرنطینه در هر گیرنده متفاوت است، اما معمولاً به این معنی است که ایمیل در پوشه spam یا junk صندوق ورودی گیرنده قرار میگیرد. |
reject | اگر هم ترازی (alignment)SPF و DKIM یک ایمیل رد شود، گیرنده باید ایمیل را رد کند. ایمیل به صندوق ورودی گیرنده تحویل داده نخواهد شد. |
به طور مثال نمونه رکورد DMARC TXT را در نظر بگیرید:
"v=DMARC1;p=reject;pct=100; rua=mailto:admin@example.com"
Syntax رکورد DMARC بر روی SPF و DKIM ساخته شده است تا تایید دامنههای فرستنده را انجام دهد. همچنین با ارائه گزارشهایی به سازمانها، نظارت به خطمشی ایمیل را فراهم میکند. علاوه بر این، DMARC مشخص میکند که اگر مکانیسمهای احراز هویت SPF و DKIM با مشکل مواجه شوند، با پیام چه باید کرد. ترکیب SPF، DKIM و DMARC یک محیط قابل اعتماد برای ایمیل و امنیت ایمیل ایجاد میکند.
هر سه تکنیک، برای انجام فعالیت به رکوردهای DNS TXT متکی هستند، بنابراین حتماً ایمن کردن DNS را در نظر داشته باشید. عدم استفاده از DMARC به این معنی است که خط مشیهای SPF و DKIM با توجه به جایی که پیام ارسال میشود، متفاوت خواهد بود. DMARC با گنجاندن دستورالعملها در خود ایمیل، آن را استاندارد میکند.