nx دارای 119 صفحه می باشد و دارای تنظیمات در microsoft word می باشد و آماده پرینت یا چاپ است
فایل ورد nx کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه و مراکز دولتی می باشد.
این پروژه توسط مرکز nx2 آماده و تنظیم شده است
توجه : در صورت مشاهده بهم ريختگي احتمالي در متون زير ،دليل ان کپي کردن اين مطالب از داخل فایل ورد مي باشد و در فايل اصلي nx،به هيچ وجه بهم ريختگي وجود ندارد
بخشی از متن nx :
امنیت شبکه
فصل اول مقدمه
بدون شك زندگی امروز بشر از مقولهی ارتباط تفكیك ناپذیر است. ارتباطات به حدی فاصلههای دور را به هم نزدیك كرده است كه از دنیای بزرگ ما به نام دهكدهی جهانی یاد میشود. ارتباطات آنقدر با زندگی روزمرهی ما عجیبن شده است كه نمیتوانیم زندگی بدون آن را حتی تصور كنیم در حالیكه تا قرنی پیش مبادلهی خبر به روزها زمكان نیاز داشت. این كار اكنون تقریباً آنی انجام میشود. مخابرات، اینترنت،وسایل ارتباط جمعی نمونههایی از ارتباطات امروز ما هستند كه تبادل اطلاعات و انجام امور روزمرهی ما را با سهولت بیشتر و هزینهی كمتر ممكن ساخته است.
از طرف دیگر گسترش ارباطات شبكهای و نفوذ آن به دور دستترین نقاط جهان باعث شده است زمینهی سوء استفاده افراد سودجو و شرور هم فراهم شود. در حالی كه هم اكنون انجام معاملات شبكههای كامپیوتری و اینترنت قابل انجام است. اما انجام این امور بدون درنظر گرفتن تمام جوانب امنیتی ممكن است باعث ضررهای جبرانناپذیری گردد بنابراین آشنایی با راهكارهای امنیتی در استفاده از شبكهها كامپیوتری نیازی بس حیاتی است.
در این پایان نامه سعی شده به موضوع و امنیت اطلاعات در شبكه از جنبه های مختلف پرداخته شود . ساختار مطالب گردآوری شده به شكل زیر است: در فصل دوم به تعریف مفاهیم شبكه ، تقسیم بندی شبكه ، شباهتها و تفاوتها و مزایای آن خواهیم پرداخت .
فصل سوم بررسی سرویس های امنیتی در شبكه و در فصل چهارم اصول رمزنگاری مطرح می شود و در انتها در فصل پنجم امضاهای دیجیتالی ارائه شده است .
چكیده:امروزه در عصر اینترنت و شبكههای كامپیوتری استفاده از سیستم عامل مناسب و نحوهی بكارگیری سیستم عامل در شبكه و ترفندهای سیستم عاملی برای جلوگیری از ضررهای ناشی از استفاده از شبكه مانند هكرها و ویروسهای مخرب و… بسیار شایان توجه است. به همین خاطر این پروژه به بررسی امنیت سیستم عاملهایی كه مورد استفادهی بسیاری از كاربران در سراسر جهان قرار میگیرد میپردازیم.این سیستم عاملها عبارتند از:
1ـ سیستم عامل یونیكس unix2ـ سیستم عامل ویندوز NT3ـ سیستم عامل ویندوز 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 در ادامه مثالی از این فایلها آمده است:<wrapped program name>:<ip address>/<network mask>فایلهای زیر مثالی از فایلهای پیكرهبندی 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.0hosts.deny:#Deny telnets from anywhere elsein.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<Enter Your Lagal Massage Here/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/issueEcho”$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=7MINWEEKS=1PASSLENGTH=8توجه كنید اعدادی كه جلوی MAXWEEK و MINWEEK وارد میكنید، حداقل و حداكثر طول عمر كلمه عبور برحسب هفته میباشد. جلوی PASSLENGTH طول كلمه عبور را برحسب تعداد كاراكتر وارد نمایید. در سیستم Linux نیازهای كلمه عبور در فایل /etc/login.defs قرار داده شده است. سطرهای زیر كه مربوط به این فایل است تنظیمات قابل انجام را نشان میدهد.#Password aging controls:#
#PASS_MAX_DAYS Maximum number of days a password may be used.# PASS _ MIN _ DAYS Minimum number of days allowed between password changes
.# PASS_MIN_LEN Minimum accentable p;assw9rd length.# PASS_WARN_AGE Number of days warning given before a password expires.PASS_MAX_DAYS 45PASS_MIN_DAYS 1
PASS_MIN_LEN 8PASS_WARN_AGE 7به خاطر داشته باشید در سیستم Linux حداقل و حداكثر طول عمر برحسب روز است (در حالیكه در Solaris برحسب هفته است). Linux به شما این اختیار را نیز میدهد كه تعداد روزهای باقیمانده تا باطل شدن كلمه عبور، به اطلاع كاربر رسانده شود.
ممانعت از ورود بدون كلمه عبور برنامههایی از قبیل rexec,rsh و rlogin به كاربر امكان میدهد بدون آنكه مجدداً كلمه عبور را وارد كند از سیستمهای خاص وارد سیستم دیگر شود. اما این كار خوبی نیست چون مهاجمی كه توانسته به یك سیستم نفوذ كند میتواند از طریق برنامههای فوق به سیستمهای دیگر دست پیدا كند. بنابران برای رفع این مشكل اولاً باید سرویسهای rec, rsh, login را از فایل /etc/inetd.conf پاك كنید. و ثانیاً فایل /etc/host.equiv و هر فایلی یا پسوند »قاخسف را پیدا كرده و آنرا حذف نمایید. بای حصول اطمینان تمام دایركتوریهای خانگی كاربران را بدقت نگاه كنید.
ایجاد كلمه عبور نامناسب بطوریكه نیازها را در بر بگیرد بهترین راه بهبود امنیت سیستم آن است كه از انتخاب كلمه عبور نامناسب توسط كاربران جلوگیری شود. متأسفانه تا این اواخر فقط چند راه برای انجام اینكاردر سیستم یونیكس وجود داشته است. برای سیستم Linux برنامههایی از قبیل npasswd و passwd+ وجود دارد اما برای Swlaris برنامهای وجود نداشت. با استفاده از این برنامهها میتوانید نیازهای كلمه عبور قوی را تعیین كنید. این برنامهها كاربر را مجبور میكند كلمه عبور را در جهت برآورده شده قواعد موردنظرتا انتخاب كند.
هماكنون در Solaris 2.6 و آخرین نسخه Linux ابزار بهتری برای نظارت بر قدرت كلمه عبور كاربر وجود دارد. نام این ابزار PAM و می توانید اطلاعات بیشتر درباره نحوه ساخت فیلترهای كلمه عبور را در آدرس http://www.sun.com/Solarispam پیدا كنید. توجه: برخی از نسخههای یونیكس همانند HPUX از ابتدا و بطور پیشفرض از كلمه عبور قدرتمندی برخوردار است. در این نسخهها اگر به هنگام ورودی اشتباهات متعدد رخ دهد اكانت قف میشود.
كنترل دسترسی به فایلدر سیستم یونیكس دسترسی به فایلها توسط مجموعهای از مجوزها كنترل میشود. كاربر میتواند امتیاز خواندن، نوشتن و اجرای فایل را داشته باشد.مالك یك فایل ممكن است یك نفر، یك گروه یا همه باشند، شما میتونید به آنها اجازه خواندن، نوشتن و اجرای آن فایل را بدهید. عوض كردن مجوز فایل با دستور chmod انجام میشود. اگر چه كاربر میتواند فایلهایی ایجاد كند كه قابل خواندن و نوشتن توسط همه باشد اما بهتر است این اجازه به كاربر داد نشود.
هر كاربری میتوان روی یك سیستم این فایلها را بخواند و یا بنویسد. بنابراین اگر مزاحمی به یك user ID دست پیدا كند قادر به خواندن و نوشتن خواهد بود. از آنجا كه متقاعد كردن همه كاربران به اینكه وقتی فایل را ایجاد كردند دسترسی به آنرا عوض كنند كار مشكلی است لذا قصد داریم مكانیزم پیشفرضی ایجاد كنیم كه به هنگام ایجاد فایل، دسترسی به آن بطور خودكار تنظیم شود. این كار با پارامتر umask قابل انجام است. در Solaris پارامتر مذكور در فایل
/etc/default/login و در Linux در فایل /etc/rofile قرار دارد. دستور بكار رفته بصورت زیر است:umask 077ارقامی كه بعد از دستور آمده است معرف اجازهای است كه بطور پیشفرض از فایلهای جدید ایجاد شده گرفته میشود (مضایقه میشود) از سمت چپ اولین رقم معرف اجازهای است كه از مالك فایل گرفته میشود. رقم دوم معرف اجازهای است كه از مالك گروهی گرفته میشود و رقم سوم معرف اجازهای است كه از همه گرفته می شود. در مثال فوق چون اولین رقم صفر است بنابراین روی مالك فایل محدودیتی اعمال نمیشود بنابراین وی میتواند فایلهایی كه از این به بعد ایجاد می شود را بخواند یا اجرا كند. اما به مالكین گروهی و دیگران هیچ اجازهای داده نشده است.
در ادامه اجازههایی كه توسط ارقام تعریف میشود آورده شده است:اجازه خواندن 4اجازه نوشتن 2اجازه اجرا 1
بنابراین اگر بخواهید گروه بصورت پیشفرض اجازه خواندن داشتهباشد اما اجازه نوشتن و اجرا نداشته باشد باید از دستور umask 037 استفاده شود و اگر بخواهید اجازه نوشتن را از گروه بگیرید باید از دستور umask 027 استفاده نایید. توجه كنید ك در مثال umask037 ، عدد 3 مجموعه اعداد 1 و 2 است و از آنجا كه اعداد 1و 2 و بهترتیب اجازه اجرا و نوشتن فایل را سلب میكنند، پس گروه فقط اجازه خواندن فایل را دارد.
دسترسی Rootدر سیستم یونیكس بالاترین سطح دسترسی در اختیار root میباشد بطوریكه وقتی كاربری با root وارد شود میتواند هر كاری انجام دهد. از اینرو یكی از كارهای خوب این است كه ورودی مستقیم با اكانت root را محدود كنید. بدین ترتیب حتی مدیریت سیستم برای ورود به root باید ابتدا با اكانت خودش وارد شود و پس از آن میتواند با دستور su root وارد root شود. با انجام این كار خواهید توانست با مشاهده لوگ فایلها تشخیص دهید كدام user ID سعی داشته به سطح دسترسی root برسد.
میتوان در Solaris و Linux ورود به root را فقط به كنسول محدود نمود. برای اینكار در solaris فایل /etc/default/login را بصورت زیر ویرایش نمایید:#If CONSOLE is set, root can only login on that device.#Comment this line out to allowremote login by root#
CONSOLE=/dev/ consoleاینكار سیستم را مجبور میكند ورود به root فقط در كنسول مجاز باشد. همین پیكرهبندی را میتوان با ویرایش فایل /etc/securetty در سیستم Linux انجام داد. این فایل لیستی از ttyهایی است كه میتوان از آنها جهت ورود به root استفاده كرد. این فایل باید محتوی /dev/tty1 باشد. اگر برای مدیریت سیستم از ارتباط سریال استفاده می كنید باید فایل مذكور حاوی /dev/ttySo باشد. ttyهای شبكه معمولاً /dev/ttyp1 و بالاتر از آن میباشد.اگر قصد كنترل دسترسی root را دارید میتوانید دسترسی به root به FTP را كنترل نمایید. در سیستم Solaris و Linux، اكانتهایی كه اجازه FTP به سیستم را ندارند در فایل /etc/ftpusers فهرست میشود . از وجود root در این لیست مطمئن شوید.حفاظت در برابر سرریز شدن بافر
یكی از اسیبپذیریهای خطرناك در كامپیوتر، سرریز شدن بافر است. Solaris روشی ارائه میكند كه امكان اجرای دستورات off the stack را در حمله سریز كردن بافر از بین میبرد. برای انجام این كار سطرهای زیر را به فایل /etc/system اضافه كنید:set noexec_user_stack=1set noexec_user_stck_log=1
سطر اول از اجرای دستور off stack جلوگیری میكند و سطر دوم تلاشهای انجام گرفته را ثبت میكند. توجه: در برخی برنامهها نیاز است دستور off the stack اجرا شود. بنابراین اگر تغییر فوق را انجام دهید این برنامه از كار خواهد افتاد (crash میكند). لذا قبل از انجام اینكار از آزمایش این دستور مطمئن شوید.غیر فعال كردن اكانتهای غیر مفید
یونیكس تعدادی اكانت ایجاد میكند كه برای وارد مختلف (از قبیل مالك فایلهای خاص) نیاز میشود اما برای ورود به سیستم هیچوقت استفاده میشود. این اكانتها عبارتند ازnuucp, uucp, sys و listen . به منظور جلوگیری از ورود به این اكانتها، فایل /etc/shodow را به صورت زیر تصحیح نمایید:bin:*LK*10960:0:99999:7: : : daemon:*LK*10960:0:99999:7: : : adm:*LK*10960:0:99999:7: : : lp:*LK*10960:0:99999:7: : :
sync:*LK*10960:0:99999:7: : : shutdown:*LK*10960:0:99999:7: : : halt:*LK*10960:0:99999:7: : : mail:*LK*10960:0:99999:7: : :
news:*LK*10960:0:99999:7: : : uucp:*LK*10960:0:99999:7: : : operator:*LK*10960:0:99999:7: : : games:*LK*10960:0:99999:7: : :
gopher:*LK*10960:0:99999:7: : : ftp:*LK*10960:0:99999:7: : : nobody:*LK*10960:0:99999:7: : : هر سطر از دو بخش تشكیل شده است كه بخش اول اكانت و بخش دوم كلمه عبور آن است. اكانت كاربر معمولی دارای كلمه عبور رمز شده میباشد. در مورد اكانتهایی كه هیچوقت اجازه ورود ندارند، بخش دوم شامل كاراكتر “*” با هیچ كلمه عبوری اجازه ورود ندارد به همین دلیل كسی نمیتواند آن را بشكند. با قرار دادن عبارتی همانند “*LK*” بطور مفید و مختصر قفل بودن این اكانت بیان میشود (LK نماینده كلمه Lock است).برنامههای مكمل
سیستم یونیكس از نظر برنامههای مكملی كه بصورت نرمافزاری برای تصحیح باگها و رفع مشكلات امنیتی استفاده میشود تفاوتی با ویندوز NT ندارد. برنامههای مكمل بطور منظم روی سیستم نصب میشود تا آسیبپذیریهای موجود برطرف شود. هنگام دانلود كردن برنامههای مكمل Solaris توجه داشته باشید شركت Sun برنامههای مكمل بسیاری را بصورت گروهی روی سایت خود قرار میدهد،اما ممكن است برخی برنامههای مكمل امنیتی در آن گروه نباشد. لذا باید آنها را بصورت تكتك دانلود كرده و بصورت دستی نصب كنید. نصب برنامههای مكمل را وصلهكاری گویند.مدیریت كاربر
همانند تمام سیستمهای كامپیوتری، مدیریت كاربران و روابط بین آنها نقش حیاتی در امنیت كلی سیستم دارد. هر سازمانی باید پروسه مدیریت كاربر داشته باشد. در این پروسه مراحل لازم برای زمانیكه كاربری تقاضای دسترسی به سیستم نداشته باشد شرح داده شده است. علاوه بر این در این پروسه مراحل لازم برای موقعی كه یكی از پرسنل سازمان را ترك میكند شرح داده می شود.
بخاطر داشته باشید سیستم یونیكس انواع زیادی دارد. ابزارهایی كه هم برای مدیریت كاربر استفاده میشود در نسخههای مختلف تفاوت دارد و از فروشندهای به فروشندهدیگر فرق میكند.افزودن كاربر به سیستم
در اكثر نسخههای یونیكس، ابزارهایی برای افزودن كاربر به سیستم ارائه شده است. وظایف اصلی این ابزار عبارتند از:• افزودن نام كاربر به فایل Password• تعیین و اختصاص شماره user ID• تعیین و اختصاص شماره group ID• تعیین Shell مناسب برای ورود
• افزودن نام كاربر به فایل Shadow• اختصاص كلمه عبور مناسب اولیه • تعیین Allias مناسب برای پست الكترونیك (Allias یعنی نام مستعار)• ایجاد دایركتوری خانگی برای هر كاربر
حال به تشریح هر یك از وظایف میپردازیم.افزودن نام كاربر به فایل Passwordفایل /etc/passwd شامل لیست كاربرانی است كه به سیستم تعلق دارد. هر كاربر دارای نام كاربر یكتایی است كه حداكثر از هشت كاراكتر تشكیل شده است. به ازاء هر ركوردی كه در فایل passwd ثبت میشود اطلاعات بیشتری نیز درباره هویت واقعی كاربر ثبت میشود كه بای شناسایی فردی كه در قبال آن اكانت مسئول است بكار میرود. این اطلاعات در بخش GECOS اضافه میشود.تعیین و اختصاص شماره User ID
به هر نام كاربر، یك شماره User ID مناسب اختصاص داده می شود كه به اختصار UID گفته میشود. UID باید در سیستم یكتا باشد. عموماً باید UID كاربر عددی بزرگتر از 100 انتخاب شود. از آنجا كه عدد صفر برای اكانت root است، از اینرو هیچ گاه به عنوان UID انتخاب نمی شود. سیستم برای شناسایی فایلهای روی سیستم از UID استفاده میكند. از اینرو استفاده مجدد از UID (یعنی استفاده از یك UID برای چند نفر) توصیه نمیشود.اختصاص شماره Group ID
لازم است هر كاربر دارای یك گروه اصلی باشد. این شماره به نام كاربر در فال /etc/passwd اختصاص دهید. كاربران عادی نباید عضو گروه wheel باشند چون این گروه برای مقاصد مدیریتی استفاده میشود.تعیین Shell مناسب برای ورود
وقتی كاربر تعاملی قصد ورود به سیستم دارد، باید به او یك Shell داده شود كه در حالت عادی csh, ksh و bash میباشد. به كاربرانی كه نباید وارد سیستم شوند برنامهای داده میشود كه Shellنیست. به عنوان مثالی از كاربران تعاملی میتوان به كاربرانی اشاره كرد كه از طریق pop یا IMAP پیامهای پست الكترونیك خود را كنترل میكنند، لذا میتوانید امكان تعویض كلمه عبورشان را بصورت تعمالی فراهم نمایید. در این حالت برای كاربر یك Shellتعریف میكنید كه bin/passwd میباشد. هر وقت یكی از كاربران به سیستم telnet كند میتواند كلمه عبورش را عوض كند و پس از تكمیل عملیات از آن shell خارج شود.افزودن نام كاربر به فایل Shadow
از آنجا كه فایل /etc/passwd قابل خواندن توسط همه است لذا نباید كلمات عبور در آن ذخیره شود تا كسی نتواند با شكستن كلمه عبور وارد سیستم شود. كلمات عبور در فایل /etc/shadow ذخیره میشود بنابراین همان نام كاربر به فایل /etc/shadow افزوده میشود.اختصاص كلمه عبور مناسب اولیه
بعد از ایجاد اكانت برای كاربر، باید كلمه عبور اولیهای برای آن تعیین شود. اكثر ابزارهایی كه برای افزودن كاربر مورد استفاده قرار میگیرد پرومپتی برای این منظور در اختیار میگذارند. در غیر اینصورت با نام كاربر وارد شوید و از دستور passwd برای تغییر كلمه عبور استفاده كنید. كلمه عبور اولیه باید گبونهای باشد كه حدس زدن آن آسان نباشد و بهتر است كلمه عبور اولیه برای تمام اكانتها یكسان نباشد. اگر از كلمه عبور یكسان برای همه كاربران استفاده شود، امكان دارد مهاجمی با استفاده از اكانت جدید و قبل از اینكه كاربر قانونی از اكانت خود استفاده كند وارد سیستم شود و كلمه عبور را عوض كند.تعیین Alias مناسب برای پست الكترونیك
وقتی كاربری ایجاد میشود بطور خودكار یك آدرس پست الكترویكی به شكل username@home خواهد داشت. حال اگر كاربر بخواهد از یك نام مستعار برای آدرس پست الكترونیك خود استفاده كند. این كار با استفاده از e-mail alias قابل انجام است. برای این منظور باید فایل /etc/aliases ویرایش شود. فرمت این فایل بصورت زیر است:alias: username
بعد از آنكه alias ایجاد شد برنام newaliases را اجرا كنید تا فایل alias.db ایجاد شود. ایجاد دایركتوری خانگی برای كاربر
برای هر كاربر باید یك دایركتوری خانگی ایجاد شود. این دایركتوری در فایل /etc/passwd تعریف میشود. پس از آنكه در محل مناسبی روی سیستم، دایركتوری خانگی كاربر ایجاد شد(معمولاً در شاخه /home یا /export) مالك دایركتوری را عوض كنید. با استفاده از دستور زیر كاربر موردنظر تنها مالك فایل خواهد شد:chown<username> <directory name>
حذف كاربر از روی سیستموقتی كاربری سازمان را ترك میكدن و یا به جای دیگر منتقل میشود بطوریكه به اكانت كاربری خود بیش از داین نیاز نداشته باشد لازم است پروسه مدیریت كاربری مناسبی دنبال شود. در سیستم یونیكس مالك تمام فایلهای كاربر، UID است. بنابراین اگر UID كاربری برای كاربر جدید استفاده شود، كاربر یا اكانت جدید مالك تمام فایلهای كاربر قدیمی خواهد شد.
اصولاً وقتی كاربر بیش از این به اكانت نیاز نداشته باشد باید اكانت را قفل كرد. برای اینكا در فایل /etc/shadow كلمه عبور كاربر با عبارت “*LK*” جایگزین میشود. بعد از مدت زمان مناسبی (معمولاً 30 روز) میتوان فایلهای آن كاربر را حذف كرد. مهلت 30 روزه بدین منظور است كه مدیریت كاربران در این مدت فایلهای موردنیاز سازمان را در محل مناسب كپی كند.
مدیریت سیستممدیریت سیستم در یونیكس (از لحاظ امنیتی) شامل برقرار كردن سطوح مناسبی از ورود و نظارت بر سیستم برای یافتن فعالیتهای مشكوك میباد. سیستم یونیكس اطلاعات خوبی درباره آنچه به دنبالش هستید ارائه میكند. البته ابزارهایی هم وجود دارد كه میتوان برای شناسایی فعالیتهای مشكوك از آنها استفاده كرد.بازرسی سیستم
در اكثر نسخههای یونیكس، سیستم واقعهنگاری استانداری ارائه شده است كه میتواند اطالعات امنیتی را به مقدار كافی در اختیار بگذارد. با اینحال در برخی موارد به اطلاعات بیشتری از بازرسی نیاز می شود. Solaris برای این منظور Basic security module را ارائه كرده است كه به اختصار BSM گفته میشود. BSM در حالت عادی فعال نیست و در صورتیكه كاربر به اطلاعات بیشتری نیاز داشته باشد آن را به راه میاندازد.
به منظور فعال كردن BSM، اسكریپت /etc/security/bsmconv را اجرا كنید. اگر چه اینكار پروسه بازرسی را راهاندازی میكند اما نیاز به ریبوت سیستم دارد. پیكرهبندی بازرسی در فایل /etc/secuity/dudit_control تعیین میشود. اطلاعات كامل در مورد این فایل را میتوانید در صفحات راهنمای آن پیدا كنید (بدین منظور دستور man audit _ control را اجرا كنید) اما برای شروع پیكرهبندی زیر درنظر بگیرید:#dentify the location of the audit file directory
dir: <directory>#identify the file system free space percentage when a warning should occur minfree:20#flags for what to audit. This example audits login, administrative
#functions and failed file reads, writes, and attribute changesflags: lo,ad,_fm#This set of flags tellls the system to also audit login and administrative#events that cannot be attributed to a usernaflags:lo,adپس از پیكره فایل، گردآوری گزارشات بازرسی شروع میشود. با استفاده از دستور audit-n میتوان فایل مربوط به گزارشات فعلی را بست و فایل جدیدی را شروع كرد. برای مرور محتوای فایل بازرسی از دستور prudit<audit file name> استفاده كنید.توجه: BSM بار كاری سیستم را افزایش میدهد لذا فقط زمانی استفاده شود كه امنیت سیستم به آن نیاز دارد.لوگ فایلهادر اكثر سیستمهای یونیكس ابزار نسبتاً جامعی در Syslog فراهم شده كه برای واقعهنگاری بكار میرود. Syslog قابلیتی است كه مطابق پیكرهبندی انجام گرفته، اطلاعات را ثبت میكند. Syslog از طریق فایل /etc/syslog.conf پیكرهبندی میشود. عموماً گفته میشود فقط root مجاز به دیدن لوگ فالها است و كس دیگری نباید آنها را دستكاری كند.در بیشتر فایلهای syslog.conf پیامهای واقعهنگاری به فایلهای /var/log/message یا /var/adm/log/messages هدایت میشوند. اگر syslog.conf بدرستی پیكرهبندی شده باشد باید دستور پیكرهبندی زیر در آن لحاظ شده باشد:auth.info /var/log/auth.logدستور فوق به یونیكس میگوید اطلاعات مربوط به تلاشهای صورت گرفته برای reboot, su, login و دیگر وقایع مرتبط با امنیت را جمعآوری كند. مطمئن شوید فایل /var/log/auth.log به منظور جمعآوری اطلاعات زیر ایجاد شده است:#touch / var/ log/ auth. log
#chown root/ var/ loglauth.log#chmod 600 /var/loglauth.logدر Solaris میتوانید با ایجاد فایل /var/adm/loginlog تلاشهای اشتباهی كه برای ورد صورت گرفته است را نیز ثبت نمایید. فایل مذكور را بصورت زیر ایجاد نمایید:#touch/var/adm/loginlog#chmod 600/var/adm/loginlog#chown root/var/adm/loginlog#chgrp yss/var /adm/loginlog دایركتوری /var باید فضای كافی داشته باشد تا لوگ فایلها را جمعآری كند. اگر /var روی پارتیشن قرار داشته باشد و لوگ فایلهای جمعآوری شده خیلی بزرگ باشند. امكان اشغال شدن فایل سیستمهای root وجود دارد،لذا بهتر است دایركتوری /var در مكان دیگری قرارداشته باشد.فایلهای مخفی فایلهای مخفی توان ایجاد مشكل برای سیستم یونیكس را دارند. دستور استاندارد Ls نمیتواند فایلی را كه با “.” شروع شده است، نمایش دهد. اما دستور Ls -a تمام فایلهای مخفی را نمایش میدهد. هكرها آموختهاند با استفاده از فایلهای مخفی فعالیت خود را پنهان سازند. بطور مثال هكر میتواند فایل خود را در یك دایركتوری مخفی قرار دهد و بدینوسیله آنها فایل را مخفی كند. همچنین ممكن است هكر فایل خود را در دایركتوریهایی مخفی كند كه دیدن آن برای مدیریت مشكل است. برای مثال اگر یك دایركتوری “…” نامیده شود جلب توجه نمی كند. اگر بعد از سومین نقطه در نام این دایركتوری. كاراكتر space قرار داده شود. (به عبارت دیگر”…” )بررسی آن دایركتوری سخت میشود مگر اینكه از وجود space در نام دایركتوری اطلاع داشته باشید. با استفاده از دستور زیر میتوانید تمام فایلها و دایركتوری مخفی را روی سیستم خود پیدا كنید:#find / -name “*” -lsاگر چه میتوان بجای “-ls” از “-print” استفاده كرد اما استفاده از “-ls” اطلاعات جزئیتری درباره مكان فایل ارائه میكند. لازم است این دستور بصورت دورهای اجرا شود و وجود فایلهای مخفی مورد بررسی قرار گیرد.
ادامه خواندن تحقيق در مورد امنيت شبکه
نوشته تحقيق در مورد امنيت شبکه اولین بار در دانلود رایگان پدیدار شد.