امروزه در عصر اینترنت و شبکههای کامپیوتری استفاده از سیستم عامل مناسب و نحوهی بکارگیری سیستم عامل در شبکه و ترفندهای سیستم عاملی برای جلوگیری از ضررهای ناشی از استفاده از شبکه مانند هکرها و ویروسهای مخرب و… بسیار شایان توجه است.
به همین خاطر این پروژه به بررسی امنیت سیستم عاملهایی که مورد استفادهی بسیاری از کاربران در سراسر جهان قرار میگیرد میپردازیم.
این سیستم عاملها عبارتند از:
1 سیستم عامل یونیکس unix
2 سیستم عامل ویندوز NT
3 سیستم عامل ویندوز 2000
خلاصه:
بررسی امنیت یونیکس و تنظیم سیستم به همراه راهکارهای مکمل
امنیت ویندوز NT به علاوهی تنظیمات رجیستری و پیکربندی سیستم
امنیت ویندوز 2000 و تنظیم و پیکرهبندی سیستم
مقایسهی امنیت یونیکس و ویندوز
بررسی لوگ فایلها و جستجوی علائم مشکوک در سیستم عاملهای فوق
مدیریت کاربر و مدیریت سیستم
در تاریخ اینترنت ، سیستمهای یونیکس سابقه بیشتری دارند بطوریکه بیشتر سرویسهای موجود روی شبکه توسط آن ارائه میشد.
وقتی هکر و هک کردن بصورت مشکلی روی اینترنت ظاهر شد، سیستم یونیکس بیتشرین توجه را به سوی خود جلب کرد.
تا امروز استفاده از سیستم یونیکس روی اینترنت متداول ور ایج است و لازم است برای جلوگیری از هک شدن بدرستی پیکرهبندی شود.
تنظیم سیستم
بطور معمول وقتی سیستم یونیکس ساخته میشود، دارای آسیبپذیریهایی است.
اما با استفاده از برنامههای مکمل و تغییر در فایلهای پیرکهبندی میتوان آسیبپذیریهای اولیه را تصحیح کرد.
در بخشهای بعدی به بعضی از محتملترین معضلات موجود و چگونگی تصحیح آنها تشریح شده است.
بدون شک زندگی امروز بشر از مقولهی ارتباط تفکیک ناپذیر است.
ارتباطات به حدی فاصلههای دور را به هم نزدیک کرده است که از دنیای بزرگ ما به نام دهکدهی جهانی یاد میشود.
ارتباطات آنقدر با زندگی روزمرهی ما عجیبن شده است که نمیتوانیم زندگی بدون آن را حتی تصور کنیم در حالیکه تا قرنی پیش مبادلهی خبر به روزها زمکان نیاز داشت.
این کار اکنون تقریباً آنی انجام میشود.
مخابرات، اینترنت،وسایل ارتباط جمعی نمونههایی از ارتباطات امروز ما هستند که تبادل اطلاعات و انجام امور روزمرهی ما را با سهولت بیشتر و هزینهی کمتر ممکن ساخته است.
از طرف دیگر گسترش ارباطات شبکهای و نفوذ آن به دور دستترین نقاط جهان باعث شده است زمینهی سوء استفاده افراد سودجو و شرور هم فراهم شود.
در حالی که هم اکنون انجام معاملات شبکههای کامپیوتری و اینترنت قابل انجام است.
اما انجام این امور بدون درنظر گرفتن تمام جوانب امنیتی ممکن است باعث ضررهای جبرانناپذیری گردد بنابراین آشنایی با راهکارهای امنیتی در استفاده از شبکهها کامپیوتری نیازی بس حیاتی است.
در این پایان نامه سعی شده به موضوع و امنیت اطلاعات در شبکه از جنبه های مختلف پرداخته شود .
ساختار مطالب گردآوری شده به شکل زیر است:
در فصل دوم به تعریف مفاهیم شبکه ، تقسیم بندی شبکه ، شباهتها و تفاوتها و مزایای آن خواهیم پرداخت .
فصل سوم بررسی سرویس های امنیتی در شبکه و در فصل چهارم اصول رمزنگاری مطرح می شود و در انتها در فصل پنجم امضاهای دیجیتالی ارائه شده است .
چکیده: امروزه در عصر اینترنت و شبکههای کامپیوتری استفاده از سیستم عامل مناسب و نحوهی بکارگیری سیستم عامل در شبکه و ترفندهای سیستم عاملی برای جلوگیری از ضررهای ناشی از استفاده از شبکه مانند هکرها و ویروسهای مخرب و… بسیار شایان توجه است.
به همین خاطر این پروژه به بررسی امنیت سیستم عاملهایی که مورد استفادهی بسیاری از کاربران در سراسر جهان قرار میگیرد میپردازیم.
این سیستم عاملها عبارتند از: 1ـ سیستم عامل یونیکس unix 2ـ سیستم عامل ویندوز NT 3ـ سیستم عامل ویندوز 2000 خلاصه: ـ بررسی امنیت یونیکس و تنظیم سیستم به همراه راهکارهای مکمل ـ امنیت ویندوز NT به علاوهی تنظیمات رجیستری و پیکربندی سیستم ـ امنیت ویندوز 2000 و تنظیم و پیکرهبندی سیستم ـ مقایسهی امنیت یونیکس و ویندوز ـ بررسی لوگ فایلها و جستجوی علائم مشکوک در سیستم عاملهای فوق ـ مدیریت کاربر و مدیریت سیستم در تاریخ اینترنت ، سیستمهای یونیکس سابقه بیشتری دارند بطوریکه بیشتر سرویسهای موجود روی شبکه توسط آن ارائه میشد.
تا امروز استفاده از سیستم یونیکس روی اینترنت متداول ور ایج است و لازم است برای جلوگیری از هک شدن بدرستی پیکرهبندی شود.
تنظیم سیستم بطور معمول وقتی سیستم یونیکس ساخته میشود، دارای آسیبپذیریهایی است.
در بخشهای بعدی به بعضی از محتملترین معضلات موجود و چگونگی تصحیح آنها تشریح شده است.
فایلهای Startup سیستم یونیکسس با استفاده از فایلهای startup، خود را به هنگام راهاندازی پیکرهبندی میکند.
بسته به اینکه نسخه یونیکس چه باشد فایلهای startup در مکانهای مختلف قرار میگیرد.
در سیتم عامل solaris فایلهای startup در /etc/rc2.d پیدا میشود و در سیتمعامل Linux آنها را در /etc/rc.d/rc2.d خواهید یافت.
در فایلهای startup تعدادی سرویس راهاندازی میشود.
تعدادی از این سرویسها (همانند شبکه، نصب فایلهای سیستمی و شروع واقعهنگاری) برای عملکرد سیستم لازم است به همین دلیل باید به آنها اجازه داده شود فعال بمانند.
در مقابل سرویسهای دیگر ضروری نیست و بسته به روش استفاده از آنها اجازه داده شود فعال بمانند.
در مقابل سرویسهای دیگر ضروری نیست و بسته به روش استفاده از سیستم، نباید راهاندازی شوند.
برای جلویگری از راهاندازی سرویس میتوان براحتی نام فایل را عوض کرد.
مطمئن شوید نام جدید فایل با “S” یا “k” شروع نشود.
قرار دادن علامت راهنمای “.” در اسم فایل خوب کمار میکند (و علاوه بر این فایل را از دید مخفی میکند بنابراین با فایلی که عملیاتی سرویسهایی که عموماً توسط فایلهای startup راهاندازی میشود عبارتند از: Sendmail Roued NFS RPC Web service Inetd NTP با مراجعه به فایلهای start up سرویسهای غیر ضروری را تعیین کنید.
برای شناسایی سرویسهای غیر ضروری بخش بعد را ببینید.
Chargen Rusersd Rquotad Sprayd Walld Rexd Routed علاوه بر این اگر از سرویسهای SNMPD و Daytime استفاده نمیشود خاموش شوند.
Daytime توسط بعضی سیستمهای همزمانکننده زمان استفاده میشود و SNMPD برای مدیریت سیستم کاربرد دارد.
احتمالاً توجه دارید که در فایل inetd.conf، سرویسهای Telnet و FTP در حالت عادی روشن هستند.
این دو پروتکل امکان عبور password, user ID را بصورت واضح از طریق شبکه فراهم میکنند.
این امکان وجود دارد که برای محافظت password، از نسخههای رمز شده این پروتکلها استفاده شود.
توصیه میشود روی Telnet از (Secure Shell)SSH استفاده شود.
برخی نسخههای SSH وجود دارد که برای انتقال فایل از برنامه (Secure Copy) SCP استفاده میکند.
Network File System:NFS ممکن است سازمان شما از NFS استفاده کند.
اما اگر به آن نیازی نیست سرویس NFS را روی سیستم خاموش کنید.
از NFS برای نصب فایل سیستمی از روی یک کامپیوتر به روی کامپیوتر دیگر استفاده میشود.
اگر NFS بدرستی پیکرهبندی نشود این امکان هست که برخی افراد به فایلهای حساس دس پیدا کنند.
برای پیکرهبندی درست NFS باید فایل /etc/dfs/dfstab را ویرایش کنید.
توجه: فرستادن فایلهای سیستمی به خراج از سازمان کار عاقلانهای نیست.
سیستم DMZ از سیستم یونیکس میتوان در DMZ و به عنووان سرور وب، سرور پست الکترونیک و سرور DMZ استفاده کرد.
در اینصورتلازم است این سیستم نسبت به حالتی که فقط بصورت داخلی استفاده میشود با امنیت بیشتری پیکرهبندی شود.
احتمال اینکه روی این قبیل سیستمها به فایلهای startup حذف کرد.
سرور و کامپیوتر رومیزی برخی سازمانها از یونیکس هم بصورت سرور هم بصورت سیستم رومیزی استفاده میکنند.
وقتی یونیکس بصورت سیستم رومیزی استفاده میشود بگونهای پیکرهبندی میشود که X Windows را اجرا کند.
در سیستم Solaris استفاده از Tooltalk هم لازم است.
(Tooltalk یک برنامه RPC است است که برای کنترل desktop بصورت گرافیکی استفاده میشود).
این سرویسها روی سرور لازم نیست.
به طریقه مشابه روی کامپیوتر رومیزی هم سرویس DNS لازم نمیشود.
اگر از سیستم یونیکس استفاده میشود لازم است برای سرور و کامپیوتر رومیزی از دو پیکرهبندی متفاوت استفاده کنید.
توجه: روی سیستم ٍخمشقهس، برنامه خخمفشمن از طریق فایل هدثفی.زخدب کنترل میشود.
برای از کار انداختن آن سطر زیر را از حالت توضیحی خارج کنید.
“10083/1 tli rpcltcp wait root / usr / dt / bin / rpc.
Ttdbserverd / user / dt/bin/rpc.ttdbserverd.” استفاده از TCP Wrappers اگر از Telner و FTP استفاده میکنید میتوانید برای امنیت بیشتر از Wrappers TCP (که میتوانید آنرا از ftp://ftp.porcupine.org/pub/security بدست آورید) ساتفاده کنید.
کلمه wrapps به معنای پوشاندن و مخفی کردن است، به همین دلیل wrappers TCP با پوشاندن سرویسهای FTP و Telnet، کنترل دسترسی و واقعهنگاری بیشتری را فراهم میکند.
به منظور استفاده از TCP Wrappers لازم است فایل inetd.conf بگونهای اصلاح شود که سطرهای ftp و telnet بصورت زیزر باشد: ftp system tep ftp nowait root/ usr/local/bin/ecpd/user/sbin/in.ftpd telnet stream tcp nowait root/user/local/bin/tcpd/user/sbin/in.telnetd سطرهای پیکرهبندی فوق باعث میشود هر وقت کسی سعی کند به سیستم telnet یا FTP کند، inetd سرویس TCP Wrappers(tcpd) را فراخوانی کند.
توجه: از TCP Wrappers میتوانند همانند سرویسهای telnet و FTP رویس سرویسهای دیگر مانند POP و IMAP هم استفاده کرد.
البته همانند سطرهای فوق تغیرات مناسب لازم است.
TCP Wrappers قادر است دسترسی شبکهها و کامپیوترهای خانگی خاص را به سرویس telnet یا FTP مسدود کند یا اجازه آن را صادر کند.
فایلهایی که برای این پیکرهبندی استفاده میشوند عبارتند از ./etc/hosts.allow , /etc/hosts.deny در ادامه مثالی از این فایلها آمده است: :/ فایلهای زیر مثالی از فایلهای پیکرهبندی TCP Wrappers میباشد: Hosts.allow: #Allow telnets from my internal network910.1.1.x) in.telnet:10.1.1.0/255.255.255.0 #Allow ftp from the world in.ftpd:0.0.0.0/0.0.0.0 hosts.deny: #Deny telnets from anywhere else in.telnetd:0.0.0.0/0.0.0.0 ابتدا فایل hosts.allow ارزیابی میشود و پس از آن hosts.deny.
بنابراین ابتدا تمام سیستمهایی را که مجاز به استفاده از سرویسهای مختل هستند پیکرهبندی نمایید و پس از آن هر چیز دیگری را در hosts.deny ممنوع کنید.
توجه: لازم است در پیکرهبندی واقعهنگاری هم تغییراتی دهید تا TCP Wrappers بتواند اطلاعات را روی سیستم ثبت کند.
نحوه این تغییرات را در بخش «لوگ فایلها» در ادامه همین فصل خواهید دید.
فایلهای پیکرهبندی سیستم با اعمال تغییراتی در فغایلهای پیکرهبندی سیستم میتوان امنیت کلی سیستم را افزایش داد.
دامنه این تغییرات از پیامهای اخطاردهنده تا حفاظت در برابر سرریز شدن بافر قابل انجام است.
انجام هر تغییری در پیکرهبندی باید با سیاست امنیتی سازمان مطابقت داشته باشد.
علاوه بر این بخاطر داشته باشید مکان قرارگیری فایلهای پیکرهبندی در نسخههای مختلف یونیکس با هم فرق دارد.
با استفاده از کتابچههای راهنمایی که از نسخه خاص یونیکس در اختیار دارید مطمئن شوید تغییرات اعمالی با نسخه یونیکس مطابقت و تناسب دارد.
پیامهای اخطاری یا Banners با استفاده از پیامهای اخطاری، قبل از آنکه به کاربری اجازه ورود (یا llogin) داده شود یک جمله حقوقی برای او نمایش داده میشود.
زبان پیامهای اخطاری باید همان زبانی باشد که بخش حقوقی سازمان تصویب کرده است.
پیام login در /etc/motd ذخیره شده است.(نام فایل motd مخفف massage of the day است).
اما این پیام زمانی نمایش داده میشود که کاری برای ورود به سیستم اقدام کرده باشد لذا قبل از آن نمایش داده نمیشود.
لازم است قبل از آن که کاربر وارد شود اکثر تذکرات حقوقی برایش نماش داده شود.
به منظور نمایش پیام قبل از ورود کاربر روشی وجود دارد که در اینجا به آن اشاره میشود.
تذکرات لازم قبل از ورود در سیستم Soaris در /etc/default/telnet ذخیره شده است.
میتوان برای FTP هم پیام اخطاری ایجاد کرد.
این کار با ویرایش فایل /etc/default/ftpd قابل انجام است.
با اضافه کرده سطری شبیه آنچه در ادامه آمده است میتوان یک پیام اخطاری ایجاد کرد.
BANNER=”/n/n در سطر فوق “n” دلالت بر سطر جدید دارد.
اما شما میتوانید از کاراکترهای کنترلی موردنظر خودتان استفاده کنید تا پیام نمایش داده شود.
در سیستم linux از دو فایل /etc/issue.net و /etc/issue برای پیامهای اخطاری Telnet استفاده میشود.
فایل issue برای ترمینالهایی که بطور مستقیم وصل شدهاند استفاده میشود.
Issue.net زمانیکه شخص از طریق شبکه اقدام به telnet میکند استفاده میشود.
متأسفانه ویاریش فایلهای مذکور باعث ایجاد پیامهای اخطاری نمیشود.
چون هر بار که کامپیوتر بوت شود این فایلها نیز مجدداً ایجاد میشود.
اما میتوانید اسکریپت راهاندازی که باعث ایجاد این فایل میشود را اصلاح کنید.
مجدداً ایجاد میشود.
فایلهای issue و issue.net در اسکریپت راهاندازی /etc/rc.d/rc.local قرار دارند.
برای آنکه از ایجاد مجدد این فایل جلوگیری شود، سطحهای زیر را از دو حالت توضیحی خارج کنید.
#Tis will overwrite/etc/issue at every boot.
So, make any changes you #want to make to/etc/issue here or you will lose them when hou reboot.
Echo “l”>/etc/issue Echo”$R”>>/etc/issue Echo “Kernel $(uname-r) on $a $SMP$ (uname-m)”>>/etc/issue بعد از انجام این کار میتوانید فایلهای /etc/issue و /etc/issue.net را با متن حقوقی مناسب ویرایش نمایید.
تنظیم کلمه عبور (passwoed) در سیستم یونیکس به منظور مدیریت صحیح کلمه عبور سه مرحله وجود دارد: تنظیم درست نیازهای کلمه عبور ممانعت از ورود بدون کلمه عبور ایجاد کلمه عبور مناسب بطوریکه نیازها را در بر بگیرد.
تنظیم درست نیازهای کلمه عبور طول کلمه عبور و عمر آن از جمله نیازهایی است که با ویاریش یک فایل پیکرهبندی در سیستم یونیکس تعیین میشوند.
در Solaris این فایل، /etc/default/passwd است.
این فایل دارای سطرهای زیر می باشد و بر طبق سیاست امنیتی سازمانتان ویرایش میگردد.
#ident “@(#)passwd.dfl 1.3 92107114 SMI” MAXWEEKS=7 MINWEEKS=1 PASSLENGTH=8 توجه کنید اعدادی که جلوی MAXWEEK و MINWEEK وارد میکنید، حداقل و حداکثر طول عمر کلمه عبور برحسب هفته میباشد.
جلوی PASSLENGTH