امنیت در میل سرور
امروزه سازمانها از سرویس ایمیل به عنوان راهحلی برای ارتباط کارمندان خود و مشتریانشان استفاده میکنند. سرویس ایمیل به صورت پیشفرض دارای هیچگونه رمزگذاری نمیباشد. به همین دلیل در هنگام انتقال بستههای مربوط به نامههای الکترونیکی، در صورت شنود خطوط انتقال، محتوای ایمیل قابل خواندن خواهد بود.در این پست راه حل مربوط به استفاده از زیرساخت کلید عمومی، برای امن سازی میل سرور با استفاده از رمزنگاری کلید عمومی معرفی شده است.
امن سازی میل سرور
دو متد مجزا میتواند برای امن کردن میل سرور اجرا شوند
- امن سازی محتوای ایمیل: محتوای ایمیل با استفاده از S/MIME) Secure/Multipurpose Internet Mail Extensions) که استانداردی برای زیرساخت کلید عمومی جهت امن سازی محتوای ایمیل میباشد، امن میشود.
- امن سازی داده هنگامی که بین میل سرور و کلاینت در جریان میباشد: جریان داده بین سرور و کلاینت با استفاده از SSL یا TLS امن میشود. متد امن کردن جریان داده به این صورت است که با استفاده از SSL هویت میل سرور و کلاینت شناسایی میشود و برای امن سازی جریان داده در لایه انتقال، دادهها به صورت رمز شده در آمده و منتقل میشوند.
در ادامه نحوه عملکرد این دو متد برای امن سازی میل سرور بیشتر توضیح داده شده است.
استاندارد S/MIME
افزونه S/MIME به برنامههای موجود در سرویس ایمیل، این امکان را میدهد که از امضای دیجیتال و سرویس رمزنگاری برای ارسال و دریافت ایمیل به صورت دیجیتالی بهره ببرند.
فرایند امضای دیجیتالی ایمیل
امضای دیجیتالی ایمیل با استفاده از جفت کلید فرستنده پیام صورت میگیرد، بنابراین کسی که ایمیل را دریافت میکند، میتواند اعتبار فرستنده پیام را با استفاده از الگوریتمهای ارائه شده توسط زیرساخت کلید عمومی بسنجد. امضای دیجیتال مربوط به ایمیل همانند امضای عمومی است که برای اسناد دیجیتالی استفاده میشود، با این تفاوت که محتویات ایمیل همان سندی است که باید امضا شود. در زیر نحوه امضای ایمیل نشان داده شده است.
ابتدا فرستنده محتوای ایمیلی را که قرار است بفرستد، با استفاده از یک الگوریتم هش خلاصه برداری میکند. فرستنده خلاصه به دست آمده را با استفاده از کلید خصوصی خود امضا و به همراه اصل پیام به مقصد مورد نظر ارسال میکند. در طرف مقابل دریافت کننده پیام ابتدا با استفاده از الگوریتم هش استفاده شده در طرف فرستنده، خلاصه مربوط به پیام را از محتوای ایمیلی که دریافت کرده استخراج می کند. همچنین در ادامه خلاصه رمز شدهای که به همراه ایمیل دریافت کرده است را با استفاده از کلید عمومی فرستنده از رمز خارج میکند. در صورت تطابق و برابری این دو خلاصه با هم، اصالت و اعتبار فرد فرستنده تایید می شود.
فرایند رمزگذاری E-Mail
رمزگذاری محتوای ایمیل با استفاده از جفت کلید فرد دریافت کننده پیام انجام میشود. فرایند مربوط به این کار در شکل زیر نشان داده شده است.
ابتدا فرستنده پیام کلید عمومی مربوط به دریافت کننده ایمیل را از اکتیو دایرکتوری یا هر منبع دیگری که این کار را انجام میدهد، دریافت میکند. در مرحله دوم فرستنده کلید متقارنی برای رمزگذاری پیام ایجاد و محتوای ایمیل را با استفاده از آن رمزگذاری می کند. بعد از رمزگذاری پیام فرستنده کلید متقارن را با استفاده از کلید عمومی دریافت کننده پیام، رمزنگاری کرده و به پیام رمز شده اضافه میکند و پیام را ارسال مینماید. در طرف مقابل دریافت کننده ایمیل، ابتدا کلید متقارن رمز شده را با استفاده از کلید خصوصی خود از رمز خارج می کند. در ادامه دریافت کننده پیام، پیام رمز شده با استفاده از کلید بدست آمده را از رمز خارج میکند. و بدین ترتیب کار رمزگذاری و رمزگشایی ایمیل پایان مییابد.
استفاده از SSL
علاوه بر امضا و کدگذاری محتوای ایمیل، ما میتوانیم امنیت مربوط به احراز هویت و جریان دادههای مربوط به پروتکلهای ایمیل را افزایش دهیم. پروتکلهای مربوط به ازسال و دریافت ایمیل:
- POP3: پروتکلی برای دریافت و بازیابی ایمیلهای کاربران بر روی میل سرور.
- IMAP4: پروتکلی برای بازیابی ایمیلهای موجود در میل سرور میباشد. این پیامها شامل میل باکس کاربر و سایر باکسهای پیام از جمله نمونهها و ارسال شدهها و غیره میباشد.
- SMTP: این پروتکل، پروتکلی برای ارسال ایمیل به سایر کاربران میباشد.
- NNTP: پروتکلی برای ارسال و دریافت پیام های گروهی است.
اگر نفوذگری، ترافیک شبکهمان را بر روی این پورتها شنود کند میتواند به محتویات ایمیلهای ارسالی و دریافتی در شبکه دست یابد. برای جلوگیری از این اتفاق با پیاده سازی SSL برای ارسال و دریافت ایمیل، میل سرور ترافیکهایی را قبول خواهد کرد که از SSL استفاده میکنند.
پورتهای مربوط به میل سرور:
در پست بعدی نحوه راه اندازی SSL و امضا و رمزگذاری ایمیل را توضیح خواهیم داد.