بایگانی نویسنده

دانش لازم برای مدیریت شبکه

تیر ۲۸م, ۱۳۸۹


استفاده از فن آوری های متعدد و درعین حال پویا در طراحی ، پیاده سازی و نگهداری شبکه های کامپیوتری ، افرادی را که علاقه مند به فعالیت در این زمینه خصوصا” مدیریت شبکه های کامپیوتری می باشند دچار نوعی سردرگمی نموده است و همواره برای این طیف از علاقه مندان فعالیت در عرصه فن آوری اطلاعات و ارتباطات  سوالات فراوانی مطرح می گردد :

  • از کجا می بایست شروع کرد؟
  • به چه صورت می بایست ادامه داد ؟
  • دانش لازم برای فعالیت موثر در این عرصه چیست ؟
  • موثرترین مسیر برای حرکت در این راه چیست ؟
  • رمز موفقیت افرادی که این مسیر را در کوتاه ترین زمان طی نموده اند چیست ؟

در پاسخ به سوالات فوق و سایر مواردی که ممکن است برای علاقه مندان فعالیت در این عرصه مطرح گردد ، می بایست به این نکته مهم اشاره گردد که قطعا” می بایست موارد فراوانی را به صورت اصولی و ساختیافته فراگرفت و متناسب با تغییر در فن آوری های استفاده شده در شبکه های کامپیوتری ،‌ فرآیند یادگیری را بدون وقفه ادامه داد . یادگیری در این عرصه همانند بسیاری از زمینه های دیگر فن آوری اطلاعات و ارتباطات ، فرآیندی مستمر و بدون توقف است . افرادی که در این عرصه گام می نهند ، لازم است پیشاپیش شرایط روحی و جسمی مناسبی را در خود ایجاد و تقویت نمایند .
قطعا” در این مطلب نمی توانیم به تمامی سوالات فوق پاسخ دهیم ولی می توان به مواردی اشاره نمود که می بایست به عنوان یک سیاست کلی یادگیری بر روی آنان متمرکز گردید :

  • مدل مرجع OSI : رفتار عناصر نرم افزاری و سخت افزاری موجود در یک شبکه منطبق بر مدل مرجع OSI است . بنابراین لازم است در ابتدا و قبل از هر چیز با این مدل به خوبی آشنا گردید . شناخت و آگاهی از نحوه عملکرد مدل مرجع OSI یکی از موارد حیاتی در دنیای شبکه های کامپیوتری است . اهمیت این موضوع به حدی است که حتی  در برخی موارد برای مستندسازی یک شبکه کامپیوتری نیز از مدل مرجع OSI کمک گرفته می شود .

  • مفاهیم پروتکل TCP/IP : با توجه به نقش غیرقابل انکار پروتکل ها خصوصا” پروتکل TCP/IP در دنیای شبکه های کامپیوتری ، لازم است با این پروتکل به خوبی آشنا گردید . آشنائی با مفاهیمی همچون نحوه آدرس دهی ، نحوه ایجاد یک آدرس (بخش شبکه و بخش مربوط به host و سایر موارد دیگر  ) ، Subnetting  و gateway  از جمله موارد حیاتی در این زمینه می باشد .

  • پشته و یا Stacks : در این رابطه لازم است با نحوه پیاده سازی stack بر روی host آشنا گردید . همچنین ، آشنائی با هر یک از عناصر موجود در شبکه ( نظیر کارت شبکه ، درایورهای مربوط به هر یک از دستگاه ها ، سیستم عامل و سایر موارد دیگر ) نیز می بایست در دستور کار قرار گرفته تا اشکال زدائی شبکه با فرآیندی منطقی صورت پذیرد.

  • لایه دوم :‌ در این رابطه لازم است با نحوه عملکرد سوئیچ و تفاوت آن با هاب و روتر آشنا گردید . شناخت bridge و تفاوت بین یک collision domain و  یک broadcast domain  و در ادامه آشنائی با VLAN  نیز می بایست در دستور کار قرار گیرد .

  • روتینگ : در این رابطه لازم است با یک پروتکل روتینگ آشنا گردید .  پروتکل RIP به دلیل عدم پیچیدگی فراوان ، گزینه ای مناسب برای شروع است . هدف از آشنائی با پروتکل های روتینگ ، ایجاد بستر و زیرساخت مناسب آموزشی برای آشنائی با نحوه عملکرد روتر است  و این که چگونه دستگاه فوق اطلاعات یک شبکه را در اختیار سایر شبکه ها قرار می دهد. بنابراین لازم نیست به صورت خیلی جدی و عمیق درگیر مفاهیم پیچیده روتینگ و الگوریتم های مربوطه شد .

  • سرویس ها : سرویس ها در یک شبکه دارای جایگاهی بسیار مهم می باشند و لازم است با نقش سرویس هائی نظیر DNS ,DHCP و WINS آشنا گردید . بدیهی است نصب ، پیکربندی ایمن ، نگهداری و اشکال زدائی سرویس های فوق می بایست در دستور کار قرار گیرد .

  • استفاده مفید از منابع مرجع شبکه ای : در این رابطه لازم است از منابع مرجع شبکه ای به صورت اصولی استفاده نمود ( سایت whatis.com گزینه ای مناسب برای یافتن برخی از سوالات متداول و یا اصطلاحات پایه در خصوص شبکه های کامپیوتری است ) . پاسخ به سوالات و یا تشخیص و رفع اشکالات احتمالی ، می بایست مبتنی بر رویکردهای کاملا” علمی باشد حتی اگر لازم باشد در ابتدا از واژه ارزشمند ” نمی دانم ” استفاده نمود .

  • امنیت :‌ ایمن سازی و ایمن نگهداشتن یک شبکه کامپیوتری یکی از مهمترین وظایف مدیران شبکه در عصر حاضر محسوب می گردد. بنابراین لازم است که اطلاعات خود را در زمینه امنیت خصوصا” نحوه عملکرد فایروال ها و سایر تکنولوژی های امنیتی نظیر VPN افزایش داد . همچنین ، آشنائی با authentication ، authorization و accounting و تفاوت بین هر یک از آنان نیز می بایست در دستور کار قرار گیرد.

  • خروجی : آگاهی از آخرین وضعیت پیکربندی و عملکرد یک دستگاه شبکه ای از جمله اقدامات حیاتی یک مدیر شبکه می باشد . بنابراین لازم است با نحوه دریافت اطلاعات در خصوص وضعیت هر یک از دستگاه های شبکه ای آشنا گردید . مثلا” در ارتباط با روتر و سوئیچ می توان از مجموعه دستورات مختلف show به منظور آگاهی از اطلاعات پیکربندی و نحوه عملکرد آنان استفاده نمود .

  • آشنائی با نحوه عملکرد برنامه ها و رویه های  درگیر در فرآیند ارتباطی :‌ در این رابطه لازم است از یک  زاویه دیگر و در ابعادی عمیق تر ، حرکت داده ها از یک برنامه به برنامه دیگر بررسی گردد :
    یک برنامه بر اساس چه نوع ساختاری داده مورد نیاز خود را از یک برنامه دریافت می نماید ؟   ( segmented, packetized, framed و یا  routed )
    کامپیوتر چگونه از آدرس MAC یک بسته اطلاعاتی آگاه می گردد ؟  ( ARP )
    نحوه ایجاد یک فریم به چه صورت است ( MTU )
    سوئیچ برای فوروارد کردن یک بسته اطلاعاتی بر روی یکی از پورت های موجود از چه روشی استفاده می نماید ؟  ( FDB )
    چگونه روتر یک اینترفیس را انتخاب می نماید ؟ ( جدول روتینگ )
    و …

موارد فوق ، رویکردهای اساسی به منظور شکل گیری یک سیاست آموزشی برای علاقه مندان فعالیت در عرصه شبکه های کامپیوتری به عنوان مدیر شبکه را ترسیم می نماید . مدیرانی که می بایست علاوه بر افزایش مستمر توانمندی خود ،  قادر به مدیریت پویای سایر منابع انسانی شاغل در مراکز شبکه به منظور نگهداری مطلوب یک شبکه کامپیوتری باشند . آموزش مستمر و هدفمند وجه اشتراک تمامی کارکنان شاغل در یک مرکز شبکه ای است، چراکه مدیریت و راهبری مطلوب یک شبکه کامپیوتری بدون توجه به معیارهای علمی ، امری محال و دور از دسترس خواهد بود  که پیامد آن از دست دادن منابع ارزشمند انسانی و غیرانسانی است .

کابل کشی شبکه : ایجاد کابل X-Over

تیر ۲۸م, ۱۳۸۹

کابل های کراس CAT5 UTP که از آنان با نام X-over نیز نام برده می شود ، یکی از متداولترین کابل های استفاده شده پس از کابل های Straight می باشند . با استفاده از کابل های فوق ، می توان دو کامپیوتر  را بدون نیاز به یک هاب و یا سوئیچ به یکدیگر متصل نمود. با توجه به این که هاب عملیات X-over را به صورت داخلی انجام می دهد ، در زمانی که یک کامپیوتر را به یک هاب متصل می نمائیم ، صرفا” به یک کابل Straight نیاز می باشد . در صورتی که قصد اتصال دو کامپیوتر به یکدیگر را بدون استفاده از یک هاب داشته باشیم ، می بایست عملیات X-over را به صورت دستی انجام داد و کابل مختص آن را ایجاد نمود.

چرا به کابل های X-over نیاز داریم ؟
در زمان مبادله داده بین دو دستگاه ( مثلا” کامپیوتر ) ، یکی از آنان  به عنوان دریافت کننده و دیگری به عنوان فرستنده ایفای وظیفه می نماید . تمامی عملیات ارسال داده از طریق کابل های شبکه انجام می شود .یک کابل شبکه از چندین رشته سیم دیگر تشکیل می گردد. از برخی رشته  سیم ها به منظور ارسال داده و از برخی دیگر به منظور دریافت داده استفاده می شود. برای ایجاد یک کابل X-over  از رویکرد فوق استفاده شده و  TX ( ارسال ) یک سمت به RX (دریافت ) سمت دیگر، متصل می گردد . شکل زیر نحوه انجام این عملیات را نشان می دهد :

اتصال دو کامپیوتر به یکدیگر با استفاده از یک کابل X-over

Xover1 کابل کشی شبکه : ايجاد کابل X Over

کابل CAT5 X-over
به منظور ایجاد کابل های کراس CAT5 صرفا” از یک روش استفاده می گردد. همانگونه که قبلا” اشاره گردید ، یک کابل X-over  پین TX یک سمت را به پین RX سمت دیگر متصل می نماید( و برعکس) . شکل زیر شماره پین های یک کابل CAT5 معمولی X-over را نشان می دهد .

شماره پین های یک کابل  CAT5 X-over .

Xover2 کابل کشی شبکه : ايجاد کابل X Over

همانگونه که در شکل فوق مشاهده می گردد در کابل های X-over  صرفا” از پین های شماره یک ، دو ، سه و شش استفاده می گردد . پین های یک و دو بمنزله یک زوج بوده و پین های سه و شش زوج دیگر را تشکیل می دهند . از پین های چهار ، پنج ، هفت و هشت استفاده نمی گردد . ( صرفا” از چهار پین برای ایجاد یک کابل X-over ، استفاده می گردد ) .

موارد استفاده از کابل های X-over
از کابل های X-over صرفا” به منظور اتصال دو کامپیوتر استفاده نمی شود  و می توان از آنان در دستگاه های متفاوتی نظیر سوئیچ  و یا هاب نیز استفاده نمود . در صورتی که  قصد داشته باشیم دو هاب را به یکدیگر متصل نمائیم ، معمولا” از  پورت uplink استفاده می گردد. پورت فوق ، بخش های tx و rx را کراس نمی نماید. شکل زیر نحوه اتصال دو هاب به یکدیگر با استفاده از یک کابل Straight و از طریق پورت Uplink را نشان می دهد :

اتصال دو هاب با استفاده از پورت Uplink و یک کابل Straight

Xover3 کابل کشی شبکه : ايجاد کابل X Over

با توجه به وجود پورت uplink ، نیازی به استفاده از  یک کابل x-over نخواهد بود .  در صورتی که امکان استفاده از پورت uplink وجود نداشته باشد و بخواهیم دو هاب را با استفاده از پورت های معمولی به یکدیگر متصل نمائیم ، می توان  از یک کابل X-over استفاده نمود . شکل زیر نحوه اتصال دو هاب به یکدیگر با استفاده از یک کابل X-over را و بدون استفاده از پورت Uplink نشان می دهد :

اتصال دو هاب با استفاده از پورت معمولی و یک کابل X-over

Xover4 کابل کشی شبکه : ايجاد کابل X Over

شکل زیر تفاوت موجود بین شماره پین های یک کابل Straight و X-over را نشان می دهد :

تفاوت شماره پین های بین کابل Straight و X-over

Xover5 کابل کشی شبکه : ايجاد کابل X Over

انواع کابل در شبکه های کامپیوتری

تیر ۲۸م, ۱۳۸۹

امروزه از کابل های مختلفی در شبکه ها استفاده می گردد .نوع و  سیستم کابل کشی استفاده شده در یک شبکه بسیار حائز اهمیت است . در صورتی که قصد داشتن شبکه ای را داریم که دارای حداقل مشکلات باشد و بتواند با استفاده مفید از پهنای باند به درستی خدمات خود را در اختیار کاربران قرار دهد ، می بایست از یک سیستم کابلینگ مناسب ، استفاده گردد . در زمان طراحی یک شبکه می بایست با رعایت مجموعه قوانین موجود در خصوص سیستم کابلینگ، شبکه ای با حداقل مشکلات را طراحی نمود .با این که استفاده از شبکه های بدون کابل نیز در ابعاد وسیعی گسترش یافته است ، ولی هنوز بیش از ۹۵ درصد سازمان ها و موسسات از سیستم های شبکه ای مبتنی بر کابل، استفاده می نمایند .

ایده های اولیه
ایده مبادله اطلاعات به صورت دیجیتال ، تفکری جدید در عصر حاضر محسوب می گردد. درسال ۱۸۴۴ فردی با نام “ساموئل مورس”   ، یک پیام را  از Washington D.C به Baltimore و با استفاده از اختراع جدید خود (تلگراف)، ارسال نمود . با این که از آن موقع زمانی زیادی گذشته است و ما امروزه شاهد شبکه های کامپیوتری بزرگ و در عین حال پیچیده ای می باشیم ولی می توان ادعا نمود که اصول کار ، همان اصول و مفاهیم گذشته است .
کدهای مورس ، نوع خاصی از سیستم باینری می باشند  که از نقطه و خط فاصله با ترکیبات متفاوت به منظور ارائه حروف و اعداد ، استفاده می نماید . شبکه های مدرن داده از یک و صفر ، استفاده می نمایند . بزگترین تفاوت موجود بین سیستم های مدرن مبادله اطلاعات و سیستم پیشنهادی “مورس ” ، سرعت مبادله اطلاعات در آنان است.تلگراف های اواسط قرن ۱۹ ، قادر به ارسال چهار تا پنج نقطه و یا خط فاصله در هر ثانیه بودند ، در حالی که هم اینک کامپیوترها  با سرعتی معادل یک گیگابیت در ثانیه  با یکدیگر ارتباط برقرار می نمایند (ارسال  ۱،۰۰۰،۰۰۰،۰۰۰ صفر و یا یک در هر ثانیه).
تلگراف و تله تایپ رایتر ، پیشگام  مبادله داده می باشند . در طی سی و پنج سال اخیر همه چیز با سرعت بالا و غیرقابل تصوری تغییر نموده است. ضرورت ارتباط کامپیوترها با یکدیگر و  با سرعت بالا ، مهمترین علل پیاده سازی تجهیزات شبکه ای سریع ، کابل هائی با مشخصات بالا و سخت افزارهای ارتباطی پیشرفته است .

پیاده سازی تکنولوژی های جدید شبکه
اترنت در سال ۱۹۷۰ توسط شرکت زیراکس و در مرکز تحقیقات Palo Alto در کالیفرنیا پیاده سازی گردید . در سال ۱۹۷۹ شرکت های DEC و اینتل با پیوستن به زیراکس ،  سیستم اترنت را برای استفاده عموم ، استاندارد نمودند . اولین مشخصه استاندارد در سال ۱۹۸۰ توسط سه شرکت فوق و با نام Ethernet Blue Book ارائه گردید . ( استاندارد DIX ) .
اترنت یک سیستم ده مگابیت در ثانیه است ( ده میلیون صفر و یا یک در ثانیه)  که از یک کابل کواکسیال بزرگ  به عنوان ستون فقرات و  کابل های کواکسیال کوتاه  در فواصل ۵ / ۲ متر به منظور ایستگاههای کاری استفاده می نماید . کابل کواکسیالی که به عنوان ستون فقرات استفاده می گردد ، Thick Ethernet و یا ۱۰Basee5 نامیده می شود که در آن  ۱۰ به سرعت انتقال اطلاعات در شبکه اشاره داشته ( ۱۰ مگابیت در ثانیه ) و واژه Base نشاندهنده سیستم Base band است . در سیستم فوق ، از تمامی پهنای باند به منظور انتقال اطلاعات استفاده می گردد . در Broad band   به منظور استفاده همزمان ، پهنای باند به کانال های متعددی تقسیم می گردد . عدد ۵ نیز شکل خلاصه شده ای برای نشان دادن حداکثر طول کابلی است که می توان استفاده نمود ( در این مورد خاص ۵۰۰ متر ) .
موسسه IEEE در سال ۱۹۸۳ نسخه رسمی استاندارد اترنت را با نام IEEE 802.3  و در سال ۱۹۸۵ ، نسخه شماره دو را با نام IEEE 802.3a ارائه نمود . این نسخه با نام Thin Ethernet  و یا ۱۰Base2  معروف گردید. ( حداکثر طول کابل ۱۸۵ متر می باشد و عدد ۲ نشاندهنده این موضوع است که طول کابل می تواند تا مرز ۲۰۰ متر نیز برسد )
از سال ۱۹۸۳ تاکنون ، استانداردهای متفاوتی ارائه شده است که یکی از اهداف مهم آنان ، تامین پهنای باند مناسب به منظور انتقال اطلاعات است . ما امروزه شاهد رسیدن به مرز گیگابیت در شبکه های کامپیوتری می باشیم .

کابل های (UTP (Unshielded Twisted Pair
کابل UTP یکی از متداولترین کابل های استفاده شده در شبکه های مخابراتی و کامپیوتری است . از کابل های فوق ، علاوه بر شبکه های کامپیوتری در سیستم های تلفن نیز استفاده می گردد ( CAT1 ). شش نوع کابل UTP  متفاوت وجود داشته که می توان با توجه به نوع شبکه و اهداف مورد نظر از آنان استفاده نمود . کابل CAT5 ، متداولترین نوع کابل UTP محسوب می گردد .

مشخصه های کابل UTP
با توجه به مشخصه های کابل های UTP ، امکان استفاده ، نصب و  توسعه سریع و آسان آنان ، فراهم می آورد . جدول زیر انواع کابل های UTP را نشان می دهد :

موارد استفاده سرعت انتقال اطلاعات گروه

سیستم های قدیمی تلفن ، ISDN و مودم

حداکثر تا یک مگابیت در ثانیه CAT1

شبکه های Token Ring

حداکثر تا چهار مگابیت در ثانیه

CAT2

شبکه های Token ring و ۱۰BASE-T

حداکثر تا ده مگابیت در ثانیه

CAT3

شبکه های Token Ring

حداکثر تا شانزده مگابیت در ثانیه CAT4

اترنت ( ده مگابیت در ثانیه ) ، اترنت سریع ( یکصد مگابیت در ثانیه ) و شبکه های Token Ring ( شانزده مگابیت در ثانیه )

حداکثر تا یکصد مگابیت در ثانیه CAT5

شبکه های Gigabit Ethernet

حداکثر  تا یکهزار مگابیت در ثانیه CAT5e

شبکه های Gigabit Ethernet

حداکثر  تا یکهزار مگابیت در ثانیه CAT6

توضیحات :

  • تقسیم بندی هر یک از گروه های فوق بر اساس نوع کابل مسی و  Jack انجام شده است .

  • از کابل های  CAT1 ، به دلیل عدم حمایت ترافیک مناسب،  در شبکه های کامپیوتری استفاده نمی گردد .

  • از کابل های گروه   CAT2, CAT3, CAT4, CAT5  و CAT6 در شبکه ها استفاده می گردد .کابل های فوق ،  قادر به حمایت از ترافیک تلفن و شبکه های کامپیوتری می باشند .

  • از کابل های CAT2 در شبکه های Token Ring استفاده شده و سرعتی بالغ بر ۴ مگابیت در ثانیه را ارائه می نمایند .

  • برای شبکه هائی با سرعت بالا ( یکصد مگا بیت در ثانیه )  از کابل های CAT5 و برای سرعت ده مگابیت در ثانیه از کابل های CAT3 استفاده می گردد.

  • در کابل های CAT3 ,CAT4 و CAT5 از چهار زوج کابل مسی استفاده شده است . CAT5  نسبت به CAT3  دارای تعداد بیشتری پیچش در هر اینچ می باشد . بنابراین این نوع از کابل ها سرعت و مسافت بیشتر ی را حمایت می نمایند .

  • از کابل های CAT3 و CAT4 در شبکه هایToken Ring استفاده می گردد .

  • حداکثر مسافت در  کابل های  CAT3 ، یکصد متر است .

  • حداکثر مسافت در کابل های  CAT4 ، دویست متر است .

  • کابل CAT6 با هدف استفاده در شبکه های اترنت گیگابیت طراحی شده است . در این رابطه استانداردهائی نیز وجود دارد که امکان انتقال اطلاعات گیگابیت بر روی کابل های CAT5 را فراهم می نماید( CAT5e ) .کابل های CAT6 مشابه کابل های CAT5 بوده ولی بین ۴ زوج کابل آنان از یک جداکننده فیزیکی به منظور کاهش پارازیت های الکترومغناطیسی استفاده شده و سرعتی بالغ بر یکهزار مگابیت در ثانیه را ارائه می نمایند.

آشنائی با VoIP ( بخش دوم )

تیر ۲۲م, ۱۳۸۹

اینترنت در عمر نسبتا” کوتاه خود توانسته است منشاء تحولات چشمگیری در عرصه های متفاوت حیات بشریت باشد . فن آوری VoIP نمونه ای در این زمینه است که با استفاده از آن می توان از زیرساخت اینترنت برای مکالمات تلفنی استفاده  نمود . ( در مقابل استفاده از یک خط تلفن ) . فن آوری فوق علیرغم ارائه امکانات گسترده  ، مسائل و چالش های امنیتی مختص به خود را دارا است . در  ادامه با فن آوری فوق از بعد مسائل امنیتی بیشتر آشنا خواهیم شد.

VoIP چیست ؟
VoIP ( برگرفته از Voice over internet protocol  ) که با نام IP تلفنی نیز از آن یاد می شود ، امکان استفاده از اینترنت برای مکالمات تلفنی را فراهم می نماید . در مقابل استفاده از خطوط تلفن سنتی ، VoIP از فن آوری دیجیتال استفاده می نماید و نیازمند یک اتصال broadband نظیر DSL است . هم اینک شرکت های متعددی سرویس فوق را در اختیار علاقه مندان قرار می دهند .
متداولترین کاربرد VoIP برای موارد شخصی و استفاده در منازل ، سرویس های تلفنی مبتنی بر اینترنت است که با محوریت یک سوئیچ تلفن انجام می شود . با استفاده از فن آوری فوق ، استفاده کنندگان می توانند همچنان دارای یک شماره تلفن باشند . در چنین مواردی ممکن است از یک آداپتور نیز استفاده گردد. آداپتور فوق این امکان را دراختیار استفاده کننده قرارخواهد داد تا بتوانند از یک تلفن معمولی نیز استفاده نمایند .
در زمان استفاده از سرویس فوق ، مخاطب شما متوجه این موضوع نخواهد شد که شما از فن آوری VoIP استفاده می نمائید و قادر به تشخیص دقیق تفاوت سرویس فوق نسبت به یک تلفن سنتی نمی باشد .

چالش های امنیتی VoIP
با توجه به این که فن آوری VoIP  در ارتباط با اتصال اینترنت است و از آن استفاده می نماید ، مشکلات و مسائل امنیتی در ارتباط با کامپیوتر متصل شده به اینترنت می تواند سرویس فوق را نیز تحت تاثیر قرار دهد. فن آوری VoIP هنوز جوان است و بحث های مختلفی در خصوص ظرفیت ریسیک پذیری آن وجود دارد . مهاجمان ممکن است قادر به انجام فعالیت هائی نظیر قطع مکالمه تلفنی ، استراق سمع ، برنامه ریزی و هدایت حملات مبتنی بر مهندسی اجتماعی با بررسی Caller ID و در نهایت از کار انداختن سرویس فوق باشند .
فعالیت هائی که مستلزم استفاده از حجم بالائی از منابع شبکه است ، نظیر دریافت فایل های حجیم ، بازی های online ، استفاده از محتویات چندرسانه ای ( صوت و تصویر ) ، می تواند سرویس VoIP را تحت تاثیر قرار دهد .
در زمان استفاده از فن آوری VoIP  ممکن با مسائل دیگری که در ارتباط با روتینگ تلفن بر روی اتصال broadband اینترنت است نیز برخورد نمائیم . برخلاف خطوط تلفن سنتی ، که  امکان استفاده از آنان حتی در صوت قطع برق وجود دارد ، سرویس VoIP در چنین مواردی غیرقابل استفاده می گردد و ممکن است مسائل خاصی را برای سیستم های امنیتی منازل و یا دستیابی به شماره تلفن های اضطراری به دنبال داشته باشد .

نحوه حفاطت
در زمان استفاده از سرویس فوق لازم است به موارد زیر توجه گردد :

  • بهنگام نگه داشتن نرم افزارها : در صورتی که تولید کنندگان نرم افزار برای سیستم عامل دستگاه مورد نظر نسخه های بهنگام شده ای را ارائه داده اند ، می بایست در اولین فرصت نسبت به نصب آنان اقدام گردد . نسخه های بهنگام شده ممکن است فرآیند بهنگام سازی را در سطح Firmware انجام دهند . با بهنگام سازی نرم افزارهای موجود ، پیشگیری لازم در خصوص برخی حملات برنامه ریزی شده با هدف بهره گیری از نقاط آسیب پذیر  انجام خواهد شد .

  • استفاده و بهنگام سازی نرم افزارهای آنتی ویروس : برنامه های ضد ویروس قادر به تشخیص و حفاظت کامپیوتر شما در مقابل ویروس های شناخته شده می باشند. با توجه به این واقعیت که مهاجمان به صورت مستمر  اقدام به نوشتن ویروس های جدید می نمایند ، لازم است که این نوع نرم افزارها همواره بهنگام باشند .

  • استفاده از گزینه ها و تنظمیات امنیتی : برخی از ارائه دهندگان سرویس VoIP ،  امکان رمزنگاری اطلاعات را نیز به عنوان یک سرویس دیگر در اختیار مشتریان خود قرار می دهند . در صورت وجود نگرانی در خصوص تعرض به حریم خصوصی خود ، می توان از این ویژگی و سایر گزینه های موجود در این رابطه استفاده نمود .

  • نصب و یا فعال نمودن یک فایروال : فایروال ها  با بررسی بسته های اطلاعاتی می توانند یک سطح حفاظتی مناسب در خصوص فیلتر نمودن برخی کدهای مخرب جهت ورود به سیستم شما را انجام دهند . برخی از سیستم های عامل به همراه یک فایروال ارائه می گردند. در چنین مواردی لازم است از فعال بودن آنان اطمینان حاصل نمود .

  • بررسی تنظیمات امنیتی : هم کامپیوتر شما و هم تجهیزات و نرم افزارهای ارائه شده جهت استفاده از سرویس VoIP ،‌ امکانات و گزینه های متفاوتی را در اختیار شما قرار می دهند . فعال نمودن برخی گزینه ها ممکن است ضریب آسیب پذیری شما را در مقابل حملات افزایش دهد . بنابراین لازم است گزینه های غیرضروری را غیرفعال نمود . پیشنهاد می گردد  تنظیمات امنیتی به دقت بررسی گردد و صرفا” گزینه هائی انتخاب شود که ضمن تامین اهداف عملیاتی ، باعث افزایش ضریب آسیب پذیری شما نگردد .

مزایا و محدودیت های فن آوری VoIP

تیر ۲۲م, ۱۳۸۹

  • VoIP ( برگرفته از Voice over internet protocol ) که با نام IP تلفنی نیز از آن یاد می شود ، امکان استفاده از اینترنت به منظور مکالمات تلفنی را فراهم می نماید . در مقابل استفاده از خطوط تلفن سنتی ، VoIP از فن آوری دیجیتال استفاده می نماید و نیازمند یک اتصال broadband نظیر DSL است . هم اینک شرکت های متعددی سرویس فوق را در اختیار علاقه مندان قرار می دهند .در واقع ، با استفاده از فن آوری VoIP صدای انسان توسط بسته های اطلاعاتی IP و از طریق اینترنت ارسال می گردد .
    فن آوری فوق دارای مزایا و محدودیت های مختص به خود می باشد.

    مزایا
    فن آوری VoIP دارای مزایای متعددی است که در ادامه به برخی از مهمترین آنها اشاره می گردد.

    • مهمترین مزیت فن آوری VoIP  مقرون به صرفه بودن آن است . تاکنون سیستم های VoIP مختلفی طراحی شده است . برخی‌ از این سیستم ها صرفا” به شما اجازه خواهند داد که با افرادی ارتباط برقرار نمائید که آنان نیز از سرویس VoIP استفاده می نمایند و در برخی دیگر ،‌ امکان ارتباط با هر کاربری که دارای یک دستگاه تلفن می باشد ، وجود خواهد داشت . معمولا” تماس کامپیوتر با کامپیوتر VoIP  رایگان است ( صرفنظر از هزینه اولیه نرم افزار و یک آبونمان ثابت ) . تماس PC به تلفن معمولا” گرانتر و یا بیشتر از تماس PC به PC است ولی  همچنان کمتر از نصف هزینه تماس تلفن با تلفن است .
      هزینه سرویس VoIP به امکانات ارائه شده توسط شرکت های مربوطه بستگی دارد . به عنوان نمونه ، اکثر ارائه دهندگان سرویس VoIP  امکاناتی نظیر   call forwarding ، call waiting و تماس سه طرفه را نیز به مشتریان خود ارائه می نمایند .

    • برخی سرویس های VoIP مبتنی بر کامپیوتر هستند . به عنوان نمونه شما از طریق میکروفن متصل شده به کامپیوتر صحبت خواهید کرد . در محیط های VoIP مبتنی بر کامپیوتر ، امکان استفاده از تمامی ظرفیت عملیاتی و پردازشی کامپیوتر وجود خواهد داشت . به عنوان نمونه ، ارسال تصاویر همزمان با صوت ، به اشتراک گذاشتن  داده و برنامه های‌ مورد نظر با فردی که در حال گفتگو با وی هستید ، دور از دسترس نخواهد بود ( تحقق مشارکت و همکاری در انجام یک پروژه ) . اکثر سیستم های VoIP مبتنی بر کامپیوتر ، امکان برقراری تماس چندین کاربر با یکدیگر را به صورت یک کنفرانس فراهم می نماید .

    • همه سیستم های VoIP نیازمند استفاده از کامپیوتر نمی باشند . در برخی از آنها از یک تلفن دیجیتالی VoIP و یا یک آداپتور VoIP که امکان استفاده از آن به همراه یک تلفن معمولی وجود خواهد داشت ، استفاده می گردد . استفاده از تلفن های VoIP نسبت به برنامه های VoIP مبتنی بر کامپیوتر به دلایل متعددی ترجیح داده می‌ شود . سادگی استفاده از سرویس فوق یکی از مهمترین مزایای تلفن های VoIP محسوب می گردد . برقراری تماس از طریق یک تلفن VoIP به سادگی استفاده از یک تلفن معمولی است . یکی دیگر از مزایای تلفن های VoIP ، قابلیت حمل آسان آنها می باشد . اینگونه تلفن ها دارای یک آدرس منحصربفرد درون خود می باشند  . این بدان معنی است که در اکثر موارد می توان از تلفن VoIP در مکان های مختلفی که دارای یک اتصال broadband اینترنت می باشند ، استفاده نمود.

    • برای استفاده از قابلیت حمل تلفن های VoIP  ( در دسترس بودن دائم ) ضرورتی به استفاده از تلفن های VoIP نخواهد بود . برخی ارائه دهندگان سرویس VoIP  مبتنی بر کامپیوتر به کاربران خود یک سرویس مبتنی بر وب را ارائه می نمایند . با استفاده از اینترفیس فوق ، مشتریان می توانند از هر مکانی به آن log in نمایند. در چنین مواردی لازم است که حتما” از یک اتصال broadband استفاده گردد . در صورتی که سازمانی دارای کارمندی است که بطور دائم در مسافرت و ماموریت است و لازم است که بطور مرتب با سازمان خود تماس بگیرد ( خصوصا” در جاده و یا مکان هائی خاص ) ، سرویس VoIP به راحتی یک تماس تلفنی نخواهد بود .

    محدودیت ها
    فن آوری VoIP دارای محدودیت های مختص به خود است که در ادامه به برخی از مهمترین آنها اشاره می گردد.

    • مهمترین مسئله در ارتباط با VoIP ، کیفیت صوت است . شاید عده ای از خوانندگان با این نظر موافق نباشند و عنوان نمایند که با پهنای باند معقول و تجهیزات مناسب ، می توان کیفیت صدا را بهبود و به یک سطح قابل قبول رساند . در دنیای واقعی شرایط بگونه ای‌ دیگر است و هیچگونه تضمینی وجود نخواهد داشت که کیفیت صدا مطلوب و قابل قبول باشد . پارامترها و یا دلایل متعددی می تواند در کاهش کیفیت صوت تاثیرگذار باشند . اولین و در عین حال مهمترین دلیل به نحوه کارکرد VoIP برمی گردد .
      همانگونه که اشاره گردید ، VoIP از کلمات Voice Over IP گرفته شده است و لازم است به منظور آشنائی با نحوه عملکرد این فن آوری ، با نحوه کار یک شبکه IP به منظور مبادله داده بیشتر آشنا شویم . زمانی که یک فایل از نقطه A به نقطه B و بر روی یک شبکه IP ارسال می گردد ، فایل مورد نظر به مجموعه ای از  بسته های‌ اطلاعاتی و یا همان Packets تقسیم می گردد . در ادامه بسته های اطلاعاتی بر اساس یک اولویت و با یک نظم و ترتیب خاص ارسال می گردند . با توجه به ماهیت توزیع شده اینترنت ، بسته های اطلاعاتی ممکن است با همان اولویتی که در مبداء ارسال می گردند ، به مقصد نرسند ( اولویت ارسال و دریافت متفاوت باشد ) . در زمان ارسال داده ،‌ وضعیت فوق مشکل خاصی را ایجاد نخواهد کرد چراکه دریافت کننده قادر به استفاده از شماره عددی نسبت داده شده به بسته اطلاعاتی است تا به کمک آن بتواند جایگاه بسته دریافتی را بین تمامی بسته های اطلاعاتی مشخص و فرآیند بازسازی داده ارسالی انجام شود .
      فن آوری VoIP ،‌صوت را به داده دیجیتال تبدیل و پس از قرار دادن در بسته های اطلاعاتی آنها را از طریق اینترنت ارسال می نماید . همانند سایر نوع های داده ، بسته های اطلاعاتی فوق ممکن است با همان اولویتی که ارسال شده اند به مقصد نرسند . سیستم VoIP دریافت کننده قادر به بازسازی مجدد بسته های اطلاعاتی صرفنظر از اولویت دریافت آنها می باشد . ماهیت تبدیل صوت به صورت بلادرنگ است و این بدان معنی است که در صورتی که بسته های اطلاعاتی با اولویت ارسال در مقصد دریافت نشوند ،‌  در زمان بازسازی مجدد داده ( تبدیل داده دیجیتال به صوت )  سکوت را شاهد خواهیم بود .

    • همانگونه که اشاره گردید ، تاخیر ممکن است باعث بروز مسائل جدی در سیستم های VoIP گردد . داده می بایست با سرعت کافی برای دریافت کننده ارسال تا وی بتواند پس از دریافت و بدون وجود یک تاخیر محسوس  آنها را مجددا” بازسازی نماید . ضعف و با بروز مشکل در پهنای باند می تواند مسائلی همچون تاخیر در ارسال داده را برای سیستم های VoIP به دنبال داشته باشد . تولیدکنندگان تجهیزات VoIP سعی می کنند محصولاتی را تولید نمایند که به پهنای باند کمتری نیاز داشته باشند . بدین منظور استفاده از الگوریتم های فشرده سازی در کانون توجه قرار دارد . تا کنون الگوریتم های فشرده سازی مختلفی طراحی و پیاده سازی شده است که هر یک از آنها دارای مزایا و محدودیت های مختص به خود می باشند .

    • یکی دیگر از محدودیت های فن آوری VoIP ، سازگاری است . استفاده از سیستم VoIP در مواردی که دو سر نقطه تماس را PC تشکیل می دهد از یک استاندارد جامع تبعیت نمی نماید . برخی از سیستم های VoIP اختصاصی بوده و صرفا” امکان تماس با سایر افرادی را فراهم می نماید که از نرم افزار مشابه استفاده می نمایند .

    • فشرده سازی و برگرداندن داده به حالت اولیه ،  زمان پردازش مختص به خود را خواهد داشت . علاوه بر این ، فشرده سازی افت کیفیت صدا را به دنبال خواهد داشت . برخی از الگوریتم های فشرده سازی مسائل خاصی نظیر اکو صدا را ایجاد خواهند کرد . البته ،‌ امکان فیلتر نمودن اکو ایجاد شده وجود خواهد داشت ولی انجام این کار زمان بیشتری را از پردازنده خواهد گرفت . فشرده سازی و فیلترینگ داده موضوعی بمرابت از یک مسئله عادی برای سیستم های VoIP مبتنی بر کامپیوتر  نسبت به تلفن های VoIP می باشند . تلفن های VoIP فیلترینگ و فشرده سازی مورد نیاز را در سطح سخت افزار انجام می دهند . بدین ترتیب نگران پردازش انجام شده توسط اینگونه تلفن ها نخواهیم بود . بدیهی است که قیمت تلفن های VoIP از تلفن های معمولی گرانتر باشد .

    • در صورت استفاده از یک سیستم VoIP مبتنی بر کامپیوتر ، به منظور برقراری تماس ، به خود کامپیوتر نیز وابسته خواهیم شد . چراکه در ابتدا لازم است تا کامپیوتر روشن و پس از فعال شدن سیستم عامل مربوطه و نرم افزارهای مورد نیاز امکان برقراری تماس فراهم شود .

    • برخلاف تلفن های سنتی ، یک سیستم VoIP ( مبتنی بر کامپیوتر و یا یک تلفن VoIP ) در زمان قطع جریان برق غیرقابل استفاده خواهد بود . در صورت قطع جریان برق امکان استفاده از تلفن های قدیمی وجود خواهد داشت چراکه شرکت های مخابراتی ، الکتریسیته را بر روی خطوط تلفن ارسال می نمایند . از الکتریسیته فوق به عنوان منبع تامین انرژی تلفن ها استفاده می گردد  ( تلفن های Cordless استثناء هستند ) . بدین ترتیب ، حتی در صورت قطع جریان برق  ، تلفن معمولا” فعال و قابل استفاده خواهد بود چراکه برق تلفن از یک منبع دیگر تامین می گردد .

    • یک تلفن VoIP ( و یا یک سیستم VoIP مبتنی بر کامپیوتر ) به منظور انجام وظایف و عملکرد صحیح خود ‌نیازمند استفاده از منابع تامین انرژی ( برق ) خارجی و اینترنت است  . بنابراین در صورت قطع جریان برق و یا ارتباط اینترنت ، امکان استفاده از سرویس VoIP وجود نخواهد داشت .

    گذشت زمان و رشد سریع فن آوری ها بگونه ای است که بسیاری از مشکلات امروزی در آینده ای نه چندان دور به خاطره ای در ذهن ها تبدیل خواهند شد.

    آشنایی با RADIUS و IAS

    تیر ۲۲م, ۱۳۸۹

    ارائه دهندگان سرویس اینترنت ( ISPs ) و سایر شرکت های بزرگ همواره با این چالش جدی مواجه هستند که چگونه انواع دستیابی به شبکه و  accounting را از یک نقطه ‌صرفنظر از نوع تجهیزات استفاده شده برای دستیابی به شبکه ، مدیریت نمایند .
    با این که برخی سیستم های عامل دارای امکانات خاصی در این رابطه می باشند ، در اغلب شرکت های بزرگ می بایست از یک زیرساخت اختصاصی برای تائید و مدیریت دستیابی به شبکه استفاده گردد .
    پروتکل RADIUS ( برگرفته شده از  Remote Authentication Dial-In User Service   ) ، استانداردی برای طراحی و پیاده سازی سرویس دهندگانی است که مسئولیت تائید و مدیریت کاربران را برعهده خواهند گرفت.مشخصات و نحوه عملکرد پروتکل RADIUS  در  RFC 2865 و RFC 2866 تعریف شده است .
    پروتکل RADIUS از یک معماری سرویس گیرنده – سرویس دهنده برای تائید و accounting استفاده می نماید . پروتکل فوق اطلاعات accounting ، پیکربندی ، تائید و  مجوزها را بین یک سرویس گیرنده RADIUS و یک سرویس دهنده RADIUS  حمل می نماید . سرویس گیرنده RADIUS می تواند یک سرویس دهنده دستیابی شبکه ( NAS ، برگرفته شده از network access server ) و یا هر نوع دستگاه مشابه دیگری باشد که نیازمند تائید  و accounting است .
    همانگونه که اشاره گردید NAS به عنوان یک سرویس گیرنده RADIUS عمل می نماید . سرویس گیرنده مسئول ارسال اطلاعات کاربر  برای سرویس دهنده RADIUS است تا بر اساس نتایج برگردانده شده توسط سرویس دهنده ، در خصوص کاربر تعیین تکلیف گردد . سرویس دهندگان RADIUS مسئول دریافت درخواست ارتباط کاربر ، تائید وی و ارسال اطلاعات پیکربندی مورد نیاز برای سرویس گیرنده به منظور عرضه سرویس به کاربر می باشند . یک سرویس دهنده RADIUS می تواند به عنوان یک سرویس گیرنده پراکسی به سایر سرویس دهندگان RADIUS و یا سایر سرویس دهندگان تائید نیز عمل نماید .
    سرویس گیرندگان RADIUS از طریق پورت های ۱۸۱۲ و ۱۸۱۳ پروتکل حمل UDP ( برگرفته شده از User Datagram Protocol ) با یک سرویس دهنده RADIUS ارتباط برقرار می نمایند . در نسخه های اولیه پروتکل RADIUS از پورت های ۱۶۴۶ و ۱۶۴۵ پروتکل UDP  استفاده می گردید . پروتکل RADIUS از پروتکل حمل TCP ( برگرفته شده از  Transmission Control Protocol ) حمایت نمی نماید .

    RADIUS و سرویس دهنده IAS
    با استفاده از پروتکل RADIUS  می توان دستگاهی نظیر یک NAS را بگونه ای پیکربندی نمود تا یک کاربر را برای‌ استفاده از یک سرویس خاص تائید نماید . به عنوان نمونه ، یک ISP می بایست کاربر یک پورت شبکه dial-in  را تائید نماید تا این اطمینان ایجاد گردد که وی مجاز به استفاده از پورت مورد نظر می باشد . در چنین مواردی لازم است که NAS اطلاعات مورد نیاز برای این ارتباط را دریافت نماید . اطلاعات فوق توسط یک سرویس دهنده RADIUS در اختیار وی گذاشته می شود . پس از ایجاد ارتباط ، دستگاه NAS ممکن است در صورت نیاز اطلاعات accounting را به منظور اهداف مالی و شارژ کاربر تامین و ارائه نماید .
    شکل ۱ نحوه تعامل بین یک سرویس گیرنده RADIUS ( نظیر یک دستگاه NAS ) و یک سرویس دهنده RADIUS ( نظیر Internet Authentication Service ) را نشان می دهد .

    RadiusServer1 آشنایی با  RADIUS و IAS
    شکل ۱ : نحوه ارتباط بین یک سرویس دهنده و سرویس گیرنده RADIUS

    به منظور حمایت از معماری های پیچیده تر شبکه ، می توان از یک RADIUS Proxy استفاده نمود که اطلاعات RADIUS را از یک سرویس گیرنده RADIUS دریافت و  آن را برای یک سرویس دهنده RADIUS رله می نماید . پاسخ سرویس دهنده RADIUS از طریق RADIUS proxy ارسال می گردد .در چنین مواردی اطلاعات مربوط به تائید و مجوزها می تواند با استفاده از یک RADIUS proxy  ارسال گردد .
    شکل ۲ نحوه عملکرد RADIUS proxy را نشان می دهد .

    RadiusServer2 آشنایی با  RADIUS و IAS
    شکل ۲ : نحوه عملکرد RADIUS proxy

    در ویندوز ۲۰۰۳ ( نسخه های سرویس دهنده ) ، IAS ( برگرفته شده از  Internet Authentication Service ) مطابق استاندارد تعریف شده در  RFC 2865 و RFC 2866 به عنوان یک سرویس دهنده RADIUS و پراکسی پیاده سازی شده است . در نسخه های سرویس دهنده ویندوز ۲۰۰۰ ، شرکت مایکروسافت صرفا” ویژگی سرویس دهنده RADIUS را پیاده سازی کرده بود . علاوه بر این ، در نسخه های سرویس دهنده ویندوز ۲۰۰۳ که بر روی آنها سرویس RRAS ( برگرفته شده از  Routing and Remote Access service) اجراء شده است را می توان به عنوان یک سرویس گیرنده RADIUS پیکربندی کرد . بدین ترتیب امکان تائید سرویس گیرندگان dial-in و یا VPN ( برگرفته شده از  Virtual Private Networks ) از طریق یک سرویس دهنده RADIUS فراهم می گردد .
    عناصر سرویس دهنده RADIUS در IAS  قادر به تائید درخواست های سرویس گیرندگان RADIUS از طریق یک بانک اطلاعاتی محلی و یا اکتیو دایرکتوری می باشند . IAS جزئیات اطلاعات accounting ارائه شده توسط سرویس گیرنده RADIUS را در یک فایل متن و یا یک بانک اطلاعاتی رابطه ای ذخیره می نماید . ویژگی RADIUS proxy تعبیه شده در IAS  قادر به ارسال پیام های تائید و accounting برای سایر سرویس دهندگان RADIUS  می باشد .
    پیکربندی IAS را می توان بگونه ای انجام داد که وی قادر به انجام فرآیند تائید و عملیات مربوط به accounting باشد . همچنین می توان سرویس گیرندگان RADIUS و یا RADIUS Proxy را به منظور استفاده از سرویس دهندگان اضافی پیکربندی نمود .
    IAS امکان دستیابی به اطلاعات accounting کاربران ، نگهداری شده بر روی سرویس دهنده IAS و یا یک کنترل کننده domain  را دارد ( در صورتی که سرویس دهنده IAS  عضوی از یک domain  باشد ).
    تراکنش های دستیابی و accounting بین سرویس گیرنده و سرویس دهنده با استفاده از یک رمز محرمانه به اشتراک گذاشته شده صورت می پذیرد . رمز فوق هرگز بر روی شبکه ارسال نخواهد شد و از آن به همراه فیلد تائید کننده و به منظور ارائه یک سطح امنیتی مناسب بر روی پیام های RADIUS  استفاده می گردد . در صورت نیاز به یک سطح بالاتر امنیتی ، سرویس دهنده و سرویس گیرنده RADIUS می توانند از IPSec برای رمزنگاری پیام  های RADIUS استفاده نمایند ( این موضوع خارج از حوزه پروتکل RADIUS می باشد ) .

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش پنجم )

    اسفند ۲۵م, ۱۳۸۸

    نهمین نقطه آسیب پذیر : عدم پیکربندی مناسب سرویس های NIS/NFS
    Network File System)NFS) و  Network Information Service )NIS) ، دو سرویس  مهم استفاده شده در شبکه های یونیکس می باشند. NFS ، سرویسی است که توسط شرکت Sun Microsystems بمنظور اشتراک فایل ها بین سیستم های موجود در یک شبکه یونیکس ، طراحی و پیاده سازی گردیده است . با استفاده از سرویس فوق امکان اشتراک و دستیابی به فایل های موجود بر روی کامپیوترهای شخصی و کامپیوترهای بزرگ فراهم می گردد . NFS ، روش استاندارد اشتراک فایل بین سیستم های کامپیوتری متفاوت است . NIS ، یک سرویس بانک اطلاعاتی توزیع شده را برای مدیریت اکثر فایل های مدیریتی مهم نظیر فایل های passwd و hosts فراهم می نماید .مدیریت متمرکز NIS ، امکان اعمال تغییرات مورد نظر را از یک نقطه ( بانک اطلاعاتی ) فراهم می نماید.(عدم ضرورت اعمال تغییرات بر روی هر سیستم موجود در شبکه ) . مهمترین هدف  NIS  ، ارائه اطلاعات مربوط به مکان یابی ( Maps نامیده می شود ) به سایر سرویس های شبکه نظیر NFS است .فایل های passwd و group ، نمونه هائی  در این زمینه ( Maps ها مورد نظر ) بوده که از آنان بمنظور تمرکز در تائید کاربران  استفاده می گردد. سرویس های NIS و NFS ، دارای ضعف های امنیتی متعددی ( مثلا” ضعف در سیستم تائید کاربران ) بوده و در سالیان اخیر مهاجمان با استفاده از آنان ، حملات متعددی را سازماندهی و به سرانجام رسانده اند .اکثر حملات انجام شده از نوع buffer overflows  ، DoS  می باشد . با توجه به آسیب پذیری سرویس های فوق ، مهاجمان  همواره از آنان بعنوان هدفی مناسب در جهت حملات خود استفاده نموده اند .
    درصورت عدم پیکربندی مناسب سرویس های NFS و NIS و Patching مناسب ، سیستم های کامپیوتری در معرض تهدید جدی بوده و مهاجمان با سوءاستفاده از حفره های امنیـتی موجود قادر به دستیابی  سیستم از راه دور و یا بصورت محلی خواهند بود. مکانیزم استفاده شده توسط NIS برای تائید کاربران دارای ضعف های خاص خود بوده و مهاجمان با استفاده از نرم افزارهائی نظیر ypcat  قادر به نمایش مقادیر و داده موجود در  بانک اطلاعاتی NIS بمنظور بازیابی فایل رمزعبور می باشند.

    سیستم های عامل در معرض تهدید
    تقریبا” تمامی سیستم های یونیکس و لینوکس بهمراه یک نسخه از NFS و NIS ارائه می گردند. سرویس های فوق،  بصورت پیش فرض فعال می باشند .

    نحوه تشخیص آسیب پذیری سیستم
    بمنظور تشخیص آسیب پدیری سیستم در رابطه با سرویس های NIS و NFS موارد زیر پیشنهاد می گردد :

    • بررسی و اطمینان از نصب آخرین Patch ارائه شده توسط تولید کننده . تمامی نسخه هائی که بهنگام نشده و یا آخرین Patch موجود بر روی آنان نصب نشده باشد در معرض تهدید و آسیب قرار خواهند داشت . در اکثر نسخه ها  با استفاده از دستور rpc.mountd -version  می توان از شماره نسخه NFS  نصب شده آگاهی یافت . بمنظور آگاهی از شماره نسخه NIS  می توان از دستور  ypserv -version   استفاده نمود ( دستور فوق شماره نسخه NFS را نیز نمایش خواهد داد ) .
    • بمنظور تشخیص آسیب پذیری نرم افزار، می توان  از یک پویشگر نقاط آسیب پذیر بهنگام شده بصورت مستمر استفاده تا بررسی لازم در خصوص ضعف های جدید صورت پذیرد.

    بمنظور برخورد با عدم پیکربندی مناسب NIS موارد زیر پیشنهاد می گردد :

    • اطمینان از عدم نگهداری Root Password در یک NIS map
    • سازگاری رمزهای عبور تعریف شده با سیاست های امنیتی موجود. در این راستا می توان از یک برنامه Cracker  بمنظور بررسی استحکام رمزهای عبور تعریف شده،استفاده نمود.

    بمنظور برخورد با عدم پیکربندی مناسب NFS موارد زیر پیشنهاد می گردد :

    • بررس لازم در خصوص بهنگام بودن میزبانان ، netgroups و مجوزها در فایل etc \ exports \ .
    • اجرای دستور Showmount e بمنظور مشاهده عناصر export شده و بررسی سازگاری آنان با سیاست های امنیتی .

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    موارد زیر در ارتباط با پیکربندی NIS ، پیشنهاد می گردد:

    • مشخص نمودن صریح سرویس دهندگان NIS  بر روی سرویس گیرندگان ( پیشگیری لازم در خصوص  تظاهر سایر سیستم ها بعنوان یک سرویس دهنده NIS ) .
    • در زمان ایجاد فایل های DBM ، ویژگی YP_SECURE  فعال گردد . بدین ترتیب ،سرویس دهنده صرفا” به درخواست های ارسالی توسط یک سرویس گیرنده و از طریق پورت های مجاز ، پاسخ خواهد بود . در این رابطه می توان از سوئئچ S بهمراه دستور makedbm استفاده نمود .
    • درج میزبانان مورداعتماد و شبکه ها در var/yp/securenets / که توسط پردازه های  ypserv و  ypxfrd  استفاده می گردد.
    • درج    ::: ۰:۰ : * :+   در password map بر روی سرویس گیرندگان NFS

    موارد  زیر در ارتباط با پیکربندی NFS  پیشنهاد می گردد:

    • استفاده از آدرس های عددی IP و یا FQDN) fully qualified domain names)  در مقابل اسامی مستعار (زمانیکه به سرویس گیرندگان در فایل etc / exports اجازه داده می شود) .

    • بمنظوربررسی پیکربندی سیستم می توان از برنامه ای با نام NFSBug ، استفاده نمود.برنامه فوق امکانات متنوعی را بمنظور تست پیکربندی سیستم ارائه می نماید . برای دریافت برنامه NFSBug ، می توان از آدرس ftp://coast.cs.purdue.edu/pub/tools/unix/nfsbug استفاده نمود .

    • اسفاده از فایل etc\exports بمنظور اعمال محدودیت در رابطه با دستیابی به سیستم فایل NFS با افزودن  پارامترهای زیر :
      - ممانعت کاربران معمولی از mounting یک سیستم فایل NFS با افزودن یک پارامتر ایمن پس از آدرس IP و یا نام Domain مربوط به سرویس گیرنده NFS .
      مثلا” : ( home 10.20.1.25(secure /
      - export نمودن سیستم فایل NFS با مجوزهای مناسب .عملیات فوق را می توان با افزودن مجوزهای لازم ( ro برای فقط خواندنی و یا rw برای خواندن و نوشتن ) پس از آدرس IP مربوط به نام domain  سرویس گیرنده NFS  در فایل etc\export  انجام داد.
      مثلا” : ( home 10.20.1.25(ro /  .
      - در صورت امکان ، از پارامتر root_squash  بعد از آدرس IP و نام Domain مربوط به سرویس گیرنده NFS استفاده گردد . در صورتیکه پارامتر فوق فعال شده باشد ،  superuser ID root  بر روی سرویس گیرنده NFS با کاربر ID nobody  در سرویس دهنده NFS جایگزین می گردد. بدین ترتیب root user  بر روی سرویس گیرنده ، قادر به دستیابی و یا تغییر فایل ها  بر روی root نخواهند بود.
      مثلا” : ( home 10.20.1.25(root_squash / .

    • بر روی سیستم عامل سولاریس ، مانیتورینگ پورت فعال گردد. عملیات فوق را می توان با افزودن  Line set nfssrv:nfs_portmon = 1  در فایل etc/system / ، انجام داد .

    موارد زیر در  ارتباط با NFS و NIS  پیشنهاد می گردد :

    • بازنگری و بررسی  سیاست های فایروال بمنظور اطمینان از بلاک شدن تمامی پورت های غیر ضروری(  مثلا” پورت ۱۱۱ ( portmap ) و پورت ۲۰۴۹ ( Rpc.nfsd ) ) .امکان دستیابی به سرویس دهندگان NFS و NIS ، می بایست صرفا” از طریق سرویس گیرندگان مجاز انجام شود.

    • بررسی لازم در خصوص استفاده از NFS بر روی یک پروتکل ایمن نظیر SSH . در این رابطه می توان از آدرس  http://www.math.ualberta.ca/imaging/snfs/ استفاده نمود .

    • نصب تمامی patch های ارائه شده توسط تولید کنندگان و یا ارتقاء  سرویس دهندگان NIS و  NFS به آخرین نسخه موجود. برای آگاهی از اطلاعات  مربوط به نصب و  پیکربندی یونیکس با لحاظ نمودن مسائل امنیتی مضاعف ، می توان از آدرس UNIX Security Checklist استفاده نمود.

    • غیر فعال نمودن NFS و NIS مربوط به deamons بر روی سیستم هائی که مختص یک سرویس دهنده NFS و یا NIS طراحی و تائید نشده اند . بمنظور پیشگیری لازم در اینخصوص می توان سرویس های  NIS و یا NFS ( و یا هر دو آنان ) را  از روی سیستم حذف نمود.

    دهمین نقطه آسیب پذیر : ( Open Secure Sockets Layer (SSL
    کتابخانه OpenSSL ( بصورت Open source است ) ، نرم افزاری رایج  بمنظور افزدون امنیت رمزنگاری به برنامه ها ئی است که از طریق شبکه با یکدیگر ارتباط برقرار می نمایند .سرویس دهنده  آپاچی ، مهمترین وشناخته ترین برنامه استفاده کننده از  پکیج فوق می باشد ( بمنظور حمایـت از  hhtps ، ارتباط بر روی پورت ۴۴۳ ) . برنامه های متعدد دیگر با انجام برخی تغییرات ، استفاده از  OpenSSL بمنظور افزایش امنیـت اطلاعات مبادله شده در یک شبکه را در دستور کار خود قرار داده اند .
    برنامه های متعددی بمنظور ارائه امنیت رمزنگاری در ارتباط با یک Connection از OpenSSL استفاده می نمایند . مهاجمان در اغلب موارد در مقابل هدف قرار دادن مستقیم OpenSSL ، برنامه هائی را برای حملات خود انتخاب می نمایند که از OpenSSL  استفاده می نمایند . یکی از اهداف مهاجمین در این رابطه ، سرویس دهنده آپاچی است که از OpenSSL استفاده می نماید . برنامه هائی دیگر نظیر: mail ، openldap,CUPS     که از OpenSSL استفاده می نمایند نیز در معرض تهاجم قرار خواهند داشت .
    OpenSSL دارای نقاط آسیب پذیر متعددی بوده که می توان به چهار نمونه مهم آنان اشاره نمود :   مورد اول ، مورد دوم ، مورد سوم ، مورد چهارم . مهاجمان با  استفاده از نقاط آسیب پذیر فوق، قادر به اجرای کد دلخواه بعنوان کاربر کتابخانه OpenSSL می باشند.

    سیستم های عامل در معرض تهدید
    هر یک از سیستم های یونیکس و یا لینوکس که بر روی آنان نخسه OpenSSL 0.9.7 و یا  قبل از آن اجراء می گردد، در معرض این آسیب قرار خواهند داشت .

    نحوه تشخیص آسیب پذیری سیستم
    در صورتیکه نسخه version 0.9.7a و یا قبل از آن  نصب شده باشد ، سیستم در معرض تهدید و آسیب قرار خواهد داشت . در این رابطه می توان از دستور OpenSSL version ، بمنظور آگاهی از شماره نسخه نرم افزار نصب شده ، استفاده نمود.

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    بمنظور حفاظت در مقابل نقطه آسیب پذیر فوق ، موارد زیر پیشنهاد می گردد :

    • ارتقاء به آخرین و جدیدترین نسخه OpenSSL . در صورتیکه OpenSSL بهمراه سیستم عامل نصب شده است ، از تولیدکننده سیستم عامل مربوطه می بایست آخرین نسخه مربوطه را  دریافت و آن را  بر روی سیستم  نصب نمود.
    • در صورت امکان ، از ipfilter و سایر ابزارهای موجود در این زمینه  بمنظور اعمال محدودیت در رابطه با  سیستم هائی که می بایست به سرویس دهنده  OpenSSL متصل گردند ،استفاده شود .

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش اول )

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش دوم )

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش سوم )

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش چهارم )

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش چهارم )

    اسفند ۲۵م, ۱۳۸۸

    هفتمین نقطه آسیب پذیر : ( Simple Network Management Protocol (SNMP
    از پروتکل SNMP بمنظور کنترل ، مانیتورینگ از راه دور و پیکربندی  تمامی دستگاه های پیشرفته مبتنی بر TCP/IP  در ابعاد گسترده ای  استفاده می شود.با اینکه  استفاده از SNMP در بین پلات فرم های متفاوت شبکه استفاده می گردد، ولی در اغلب موارد از آن  بمنظور پیکربندی و مدیریت دستگاههائی نظیر چاپگر ، روترها ، سوئیچ ها ، Access point ها  و دریافت داده های مورد نیاز دستگاههای مانیتورینگ شبکه ، استفاده می شود .
    SNMP ، از روش های متفاوتی بمنظور مبادله پیام بین ایستگاههای مدیریت SNMP و دستگاههای شبکه ای  استفاده می نماید . روش های استفاده شده بمنظور برخورد با پیام های مبادله شده و مکانیزم تائید و معتبر سازی پیا م ها،  از جمله عوامل اصلی در رابطه با  نقاط آسیب پذیر SNMP می باشند .
    نقاط آسیب پذیر مرتبط با روش های استفاده شده در SNMP ( نسخه یک )  بهمراه جزئیات مربوطه را می توان در آدرس  CERT – 2002 – 03 ، مشاهده نمود . نقاط آسیب پذیر متعددی در SNMP متاثر از روش برخورد با پیام ها توسط ایستگاه های مدیریتی است . نقاط آسیب پذیر فوق، به نسخه ای خاص  از SNMP محدود نبوده و محصولات متعدد ارائه شده توسط تولید کنندگان را نیز شامل می گردد . مهاجمان با استفاده از نقاط آسیب پذیر فوق ، قادر به انجام حملات متفاوت از نوع DoS ( از کار افتادن یک سرویس ) تا پیکربندی و مدیریت ناخواسته ماشین آلات و تجهیزات مبتنی بر SNMP  ، می باشند .
    برخی از نقاط آسیب پذیر در ارتباط با SNMP متاثر از روش های استفاده شده بمنظور تائید و معتبر سازی پیام ها در نسخه های قدیمی SNMP  است ( توارث مشکلات ) . نسخه های یک و دو SNMP ، از یک ” رشته  مشترک ” غیررمز شده بعنوان  تنها  گزینه موجود  برای تائید پیام ها استفاده می نمایند . عدم استفاده از روش های مناسب رمزنگاری ، می تواند عاملی مهم در پیدایش نقاط آسیب پذیر باشد. نگرش پیش فرض  نسبت به  ” رشته مشترک  ” که  توسط تعداد زیادی از دستگاههای SNMP استفاده می گردد ، از ذیگر عوامل مهم در ارتباط با عرضه نقاط آسیب پذیر است( برخی از تولید کنندگان بمنظور افزایش سطح ایمنی مربوط به داده های حساس ، رشته را بصورت “اختصاصی ” تغییر و استفاده می نمایند ) .  شنود اطلاعاتی و ترافیک SNMP ، می تواند افشاء  اطلاعات و ساختار شبکه ( سیستم ها و دستگاههای متصل شده به آن  )  را بدنبال داشته باشد . مهاجمین با استفاده از اطلاعات فوق ، قادر به انتخاب مناسب و دقیق هدف خود بمنظور برنامه ریزی حملات خود می باشند .
    اکثر تولید کنندگان بصورت پیش فرض نسخه یک SNMP را فعال و تعدادی  دیگر،  محصولاتی را ارائه می نمایند که  قادر به استفاده ازمدل های امنیتی نسخه شماره سه SNMP  نمی باشند. ( با استفاده از مدل های امنیـی ارائه شده در نسخه شماره سه SNMP ، می توان پیکربندی لازم در خصوص روش های تائید را بهبود بخشید ) .
    SNMP ، مختص یونیکس نمی باشد و  در ابعاد وسیعی در ویندوز ، در تجهیزات شبکه ای ، در چاپگرها ، access point ها و Bridges ، استفاده می گردد. با توجه به  نتایج حاصل از آنالیز حملات مبتنی بر SNMP  ، مشخص شده است که اکثر حملات در این رابطه بدلیل ضعف در پیکربندی SNMP در سیستم های یونیکس است .

    سیستم های عامل در معرض تهدید
    تقریبا”  بر روی تمامی سیستم های یونیکس و لینوکس  یک نسخه SNMP نصب و بهمراه آن عرضه می گردند. در اغلب موارد پروتکل فوق ، بصورت پیش فرض فعال می باشد. اکثر دستگاه ها و سیستم های عامل شبکه ای مبتنی بر SNMP دارای نقطه آسیب پذیر فوق بوده و در معرض تهدید قرار خواهند داشت .

    نحوه تشخیص آسیب پذیری سیستم
    بمنظور بررسی نصب SNMP  بر روی دستگاههای موجود و متصل شده در شبکه ، می توان از یک برنامه کمکی و یا روش دستی استفاده نمود. برنامه پویشگر SNScan ، نمونه ای در این زمینه بوده که می توان آن را از طریق آدرس  http://www.foundstone.com/knowledge/free_tools.html دریافت نمود. در مواردیکه امکان استفاده از ابزارهای  پویشگر وجود ندارد ، می توان بررسی لازم در خصوص نصب و اجراء SNMP  را بصورت دستی انجام داد. در این راستا می توان به مستندات سیستم عامل مربوطه مراجعه تا پس از آگاهی از نحوه پیاده سازی SNMP  ، عملیات لازم بمنظور تشخیص فعال بودن SNMP را انجام داد . در این رابطه می توان ، جستجوی لازم در لیست پردازه ها برای یافتن “snmp” در حال اجراء بر روی پورت های ۱۶۱ و ۱۶۲ را انجام داد .  وجود صرفا ” یک نمونه SNMP  ، دلیلی بر آسیب پذیری سیستم است . بمنظور آگاهی از جزیئات لازم در اینخصوص می توان از آدرس  CERT – 2002 – 03 استفاده نمود . در صورت تحقق یکی از شرایط زیر و نصب  SNMP ،  سیستم در معرض آسیب  و تهدید قرار خواهد داشت :

    • وجود اسامی SNMP Community پیش فرض و یا خالی ( اسامی استفاده شده بعنوان رمزهای عبور )
    • وجود اسامی SNMP Community  قابل حدس
    • وجود رشته های مخفی SNMP Community

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    بمنظور حفاظت در مقابل نقطه آسیب پذیر فوق ،در دو زمینه می توان اقدامات حفاظتی را سازماندهی نمود .
    حفاظت در مقابل  درخواست های آسیب رسان  و تهدید کننده :

    • غیر فعال نمودن SNMP در صورت عدم ضرورت استفاده از آن
    • استفاده از یک مدل امنیتی مبتنی بر کاربر SNMPv3 ،  بمنظور تائید پیام ها و رمزنگاری داده ها ( در صورت امکان )
    • در صورت استفاده از SNMP نسخه یک و یا دو ، می بایست آخرین نسخه Patch ارائه شده توسط تولید کننده ، نصب گردد برای آگاهی از مشخصات تولیدکننگان، می توان به  بخش ضمیمه CERT Advisory CA-2002-03 ، مراجعه نمود .
    • SNMP را در گلوگاه های ورودی شبکه فیلتر نمائید ( پورت ۱۶۱ مربوط به TCP/UDP و پورت ۱۶۲ مربوطه به TCP/UDP )  . عملیات فوق را در مواردیکه ضرورتی به مدیریت دستگاهها بصورت خارجی وجود ندارد ، می بایست انجام داد .
    • از  کنترل دستیابی مبتنی بر میزبان بر روی سیستم های SNMP agent استفاده گردد . ویژگی فوق ممکن است توسط SNMP agent سیستم های عامل دارای محدودیت هائی باشد ، ولی می توان کنترل لازم در خصوص پذیرش درخواست ها توسط agent مربوطه را انجام داد. در اکثر سیستم های یونیکس ، می توان عملیات فوق را توسط  یک TCP-Wrapper و یا پیکربندی Xined انجام داد . استفاده از یک فایروال فیلترینگ بسته های اطلاعاتی مبتنی بر agent  بر روی یک میزبان  نیز می تواند در بلاک نمودن درخواست های ناخواسته SNMP موثر واقع شود .

    حفاظت در مقابل رشته های قابل حدس

    • غیر فعال نمودن SNMP در صورت عدم ضرورت استفاده از آن

    • استفاده از یک مدل امنیتی مبتنی بر کاربر SNMPv3 ،  بمنظور تائید پیام ها و رمزنگاری داده ها ( در صورت امکان )
    • در صورت استفاده از SNMP نسخه یک و یا دو ، می بایست از یک سیاست خاص بمنظور اسامی community ( استفاده شده بعنوان رمزهای عبور ) استفاده گردد. در این راستا لازم است اسامی بگونه ای انتخاب گردند که  غیر قابل حدس بوده و بصورت ادواری و در محدوده های خاص زمانی نیز تغییر داده شوند .
    • با استفاده از امکانات موجود می بایست بررسی لازم در خصوص  استحکام اسامی در نظر گرفته شده برای رمزهای عبور راانجام داد.در این رابطه می توان از خودآموز و ابزار ارائه شده در آدرس  http://www.sans.org/resources/idfaq/snmp.php ، استفاده کرد.
    • SNMP را در گلوگاه های ورودی شبکه فیلتر نمائید ( پورت ۱۶۱ مربوط به TCP/UDP و پورت ۱۶۲ مربوطه به TCP/UDP )  . عملیات فوق را در مواردیکه ضرورتی به مدیریت دستگاهها بصورت خارجی وجود ندارد ، می بایست انجام داد . پیکربندی فیلترینگ را صرفا” بمنظور ترافیک مجاز SNMP بین subnet های ممیزی شده ، انجام دهید.


    هشتمین نقطه آسیب پذیر : icon sad مهمترين نقاط آسيب پذير يونيکس و لينوکس ( بخش چهارم   ) Secure Shell (SSH
    SSH ، یک سرویس عمومی برای ایمن سازی Login ، اجرای دستورات و ارسال فایل در یک شبکه است .اکثر سیستم های مبتنی بر یونیکس از بسته نرم افزاری OpenSSH ( نسخه فوق بصورت open-source  است ) و یا نسخه تجاری  SSH Communication Security ، استفاده می نمایند . با اینکه SSH دارای ایمنی مناسبتری نسبت به telnet,ftp و برنامه های R-Command  می باشد ، ولی همچنان  در هر دو نسخه اشاره شده ، ضعف های امنیتی متعددی وجود دارد . اکثر ضعف های موجود صرفا” اشکالات جزئی بوده و تعداد اندکی از آنان ، حائز اهمیت بوده و می بایست بلافاصله نسبت به برطرف نموودن آنان اقدام گردد . مهمترین تهدید مرتبط با ضعف های امنیتی SSH ، امکان دستیابی (سطح ریشه)  به ماشین آسیب پذیر توسط مهاجمان است . با توجه به  رشد چشمگیر استفاده از سرویس گیرندگان و سرویس دهندگان  SSH  در محیط های ویندوز،  اکثر اطلاعات ارائه شده در رابطه با نقطه آسیب پذیر فوق ، به نسخه های پیاده سازی شده  SSH در  ویندوز و nix *  ( یونیکس ، لینوکس  )  بر می گردد .عدم مدیریت مناسب SSH ، خصوصا” در ارتباط با پیکربندی و بکارگیری patch ها و بهنگام سازی لازم ، می تواند مسائل و مشکلات خاص خود را  بدنبال داشته باشد .
    SSH2 ، ابزاری قدرتمند
    تعداد زیادی از نقاط آسییب پذیر تشخیص داده شده   در پروتکل هائی نظیر POP3 ( جایگزین با SSH2 SFTP ) ، برنامه Telnet ، سرویس HTTP ,  و ابزارهای مبتنی بر rhost ( نظیر : روش های تائید ,rsh ,   rlogin ,rcp ) باعث ارسال اطلاعات بصورت clear text  و یا عدم پردازش مناسب session های سرویس گیرنده – سرویس دهنده می گردد. پروتکل SSH1 ، دارای  پتانسیل آسیب پذیری  بالائی خصوصا” در ارتباط با session  موقتی رمزنشده می باشد . بدین دلیل  مدیران سیستم و شبکه ، استفاده از پروتکل SSH2  را  گزینه ای شایسته در اینخصوص می دانند( در مواردیکه امکان آن وجود دارد) . لازم است به این نکته مهم  اشاره گردد که SSH1 و SSH2 با یکدیگر سازگار نبوده  و لازم است  نسخه SSH بر روی سرویس گیرنده و سرویس دهنده یکسان باشند (در این رابطه موارد استثنا ء نیز وجود دارد ) .
    کاربران OpenSSH می بایست به این نکته توجه نمایند که کتابخانه های OpenSSH در مقابل پتانسیل های ایجاد شده توسط OpenSSH ، دارای نرم افزارهای آسیب پذیر مختص خود می باشند. بمنظور آگاهی از جزئیات مربوطه ، می توان از آدرس  CERT Advisory 2002-23 استفاده  نمود .در سال ۲۰۰۲ یک نسخه آلوده از OpenSSH  ( نسخه فوق دارای یک trojan-horse  بود ) در زمان کوتاهی گسترش و باعث آسیب های فراوانی گردید. بمنظور کسب اطلاعات بیشتر در این رابطه و اطمینان از عدم آسیب پذیری سیستم خود در مقابل نسخه آلوده فوق ، می توان از آدرس  http://www.openssh.org/txt/trojan.adv استفاده نمود .

    سیستم های عامل در معرض تهدید
    هر نسخه یونیکس و یا لینوکس که بر روی آن OpenSSH 3.3 و یا بعد از آن ( نسخه  ارائه شده در سال ۲۰۰۳ ،version 3.6.1)  و یا SSH Communication Security’s SSH 3.0.0  و یا بعد از آن ( نسخه ارائه شده در سال ۲۰۰۳ شماره version 3.5.2 ) نصب واجراء می گردد ،  در معرض این آسیب قرار خواهد داشت .

    نحوه تشخیص آسیب پذیری سیستم
    با استفاده از یک پویشگر مناسب ، می توان بررسی لازم در خصوص آسیب پذیری یک نسخه را انجام داد . در این رابطه می توان با اجرای دستور ” ssh   -V ” ، از شماره نسخه نصب شده بر روی سیستم آگاه گردید.  ScanSSH ، ابزاری مفید  بمنظور تشخیص  از راه دور سرویس دهندگان SSH  آسیب پذیر بدلیل عدم Patching ، می باشد. دستور خطی ScanSSH ، لیستی از آدرس های شبکه را برای سرویس دهندگان  پویش و گزارشی در ارتباط با شماره نسخه های آنان را ارائه می نماید . آخرین نسخهScanSSH  که در سال ۲۰۰۱ ارائه شده است را می توان از آدرس http://www.monkey.org/~provos/scanssh دریافت نمود .

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    بمنظور حفاظت در مقابل نقطه آسیب پذیر فوق ، موارد زیر پیشنهاد می گردد :

    • نسخه  SSH و یا  OpenSSH را به آخرین نسخه موجود ارتقاء دهید . درصورتیکه SSH و یا OpenSSH بهمراه سیستم عامل ، نصب شده باشد ، می بایست  آخرین Patchمربوطه را از سایت ارائه دهنده سیستم عامل دریافت و آن را برروی سیستم نصب نمود. در صورت استفاده  از OpenSSL  ، از نصب آخرین نسخه آن مطمئن شوید .

    • حتی المقدور سعی گردد، نسخه SSH1 به SSH2 ارتقاء یابد .در رابطه با توسعه SSH1  در آینده تصمیم خاصی وجود نداشته و توسعه SSH2 مورد نظر می باشد .

    • دو نسخه پیاده سازی شده SSH ، دارای مجموعه ای از گزینه های انتخابی بوده  که مدیران سیستم با استفاده از آنان و با توجه به سیاست های موجود می توانند پیکربندی مناسبی در اینخصوص را انجام دهند.  امکان محدودیت در دستیابی به ماشین مورد نظر و اتصال به آن ، روش های تائید کاربران و ماهیت کاربران مجاز ، نمونه هائی از گزینه های انتخابی بوده که می توان از آنان بمنظور پیکربندی مطلوب استفاده گردد.

    • پیکربندی مناسب  سرویس گیرندگان SSH  در زمان اتصال به سرویس دهنده ای که SSH را حمایت نمی نماید . در چنین مواردی سرویس گیرنده ممکن است به عقب برگشته و استفاده از rsh را در این رابطه مفید تشخیص دهد . بمنظور پیشگیری از مواردی اینچنین می بایست  به کلید FallBackToRsh  در فایل پیکربندی SSH ، مقدار NO را نسبت داد .

    • از رمزنگاری blowfish در مقابل ۳DES استفاده گردد (روش ۳DES ، ممکن است بصورت پیش فرض در نسخه مربوطه در نظر گرفته شده باشد ). بدین ترتیب علاوه بر افزایش سرعت در عملیات ، رمزنگاری انجام شده نیز از استحکام مناسبی برخوردار خواهد بود.

    در بخش پنجم  این مقاله به بررسی سایر نقاط آسیب پذیر یونیکس و لینوکس خواهیم پرداخت

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش سوم )

    اسفند ۲۵م, ۱۳۸۸

    پنجمین نقطه آسیب پذیر : :Clear Text Services
    تعداد زیادی از سرویس های شبکه استفاده شده توسط سیستم های مبتنی بر یونیکس ، بصورت  plain text بوده و  از رمزنگاری خاصی استفاده نمی نمایند. ضعف در رمزنگاری ، امکان شنود اطلاعاتی ( مشاهده ترافیک شبکه )  را فراهم و مهاجمان در ادامه امکان دستیابی به محتویات ارتباط ایجاد شده و یا اطلاعات حساس کاربران نظیر داده های مرتبط با رمز عبور را بدست خواهند آورد.  مثلا” بمنظور تشخیص  اطلاعات مرتبط با FTP و یا telnet ( اطلاعات login ) ، یک مهاجم ، می تواند  یک  sniffer  را در شبکه  و در محلی بین مسیر ارتباطی، مستقر نماید (بعنوان سرویس دهنده FTP و یا یا Client LAN ) . تبادل اطلاعات بین دستورات ورودی توسط سرویس گیرندگان و پاسخ های ارائه شده توسط سرویس های موجود بر روی سرویس دهنده ، بصورت plain-text خواهد بود. بدین ترتیب ،امکان ردیابی ( رهگیری ) داده و یا کلیدهای فشرده شده توسط کاربر بسادگی فراهم می گردد. اغلب مهاجمان در حملات اخیر خود از برنامه های مختص شنود اطلاعاتی استفاده و عمدتا” اینگونه برنامه ها را  بر روی دستگاهها ی  آسییب پذیر نصب می نمایند. در چنین مواردی ، تشخیص نام و رمز عبور کاربر در داده های جمع آوری شده ( شنود اطلاعاتی ) ، بسادگی میسر خواهد شد.جدول زیر،  لیست برخی از سرویس های شبکه یونیکس را که اطلاعات را بصورت Clear Text  ، مبادله می نمایند ، نشان می دهد :

    آیتم ارسالی Clear Auth Clear Content پورت سرویس

    متن ، باینری

    Yes Yes 21 , 20 FTP
    متن ، باینری N/A Yes 69 TFTP
    متن Yes Yes 23 telnet
    متن ، باینری N/A Yes 25 SMTP
    متن ، باینری Yes Yes 110 POP3
    متن ، باینری Yes Yes 143 IMAP
    متن Yes Yes 513 rlogin
    متن Yes Yes 514 rsh
    متن ، باینری Yes Yes 80 HTTP

    سرویس هائی نظیر Telnet و FTP که شامل اطلاعات  مربوط به تائید هویت کاربران می باشند ، اطلاعات مورد نظر را بصورت متن  ارسال  که  بالاترین ریسک را بدنبال خواهد داشت . در چنین مواردی مهاجمان می توانند با استفاده مجدد از داده های حساس کاربران نظیر نام و رمز عبور، با خیال راحت ! به سیستم دستیابی نمایند .علاوه براین ، اجرای دستورات  بصورت clear text می تواند توسط مهاجمان استفاده تا با استفاده از آنان دستورات دلخواه خود را بدون الزامی برای تائید ، اجراء نمایند. سرویس های Clear text  ، می توانند زمینه تهدیدات مختلفی نظیر  :  تسهیل در انجام  حملات  ، دستیابی از راه دور ، اجرای دستورات بر روی یک سیستم مقصد ، شنود و تشخیص اطلاعات را بدنبال داشته باشد .

    سیستم های عامل در معرض تهدید
    تمامی  نمونه های یونیکس  ارائه شده ، از سرویس ها ی Clear text استفاده می نمایند. ( telnet و FTP دو نمونه متدواول در این زمینه می باشند ) . تمامی  نمونه نسخه های  ارائه شده یونیکس و  لینوکس ( تنها استنثاء در این  رابطه، مربوط به آخرین ویرایش  Free/OpenBSD  می باشد ) ، بصورت پیش فرض ، برخی از سرویس های فوق را نصب می نمایند .

    نحوه تشخیص آسیب پذیری سیستم
    موثرترین و مطمئن ترین روش بمنظور تشخیص نقطه آسیب پذیر فوق (سرویس های clear text )  ، بکارگیری  نرم افزاری مشابه با  ابزارهای استفاده شده (sniffer) توسط مهاجمان است. متداولترین برنامه موجود در این زمینه ،  tcpdump می باشد. برای دریافت برنامه “tcpdump ” می توان از آدرس  http://www.tcpdump.org ،  استفاده نمود . نحوه فعال نمودن برنامه فوق،بمنظور تشخیص هر گونه ارتباط clear text ،  بصورت زیر است :

    # tcpdump -X -s 1600

    دراین راستا می توان از برنامه های دیگر نظیر : “ngrep” نیز استفاده نمود. برنامه فوق،امکان جستجوی الگوئی خاص نظیر “sername ” و یا ” assword ” را در شبکه فراهم می نماید.  ( اولین حروف، بمنظور سازگاری با حروف بزرگ احتمالی ، در نظر گرفته نشده است ) . برای دریافت برنامه فوق ، می توان از آدرس    http://www.packetfactory.net/projects/ngrep استفاده نمود . نحوه فعال نمودن برنامه فوق ،  بصورت زیر است :

    # ngrep assword

    در این رابطه می توان از ابزارهای متنوع  دیگری بمنظور تشخیص داده های حساس کاربران ( نام و رمز عبور )  استفاده نمود . Dsniff ، متداولترین ابزار در این زمینه است . برنامه فوق ، بررسی لازم در خصوص تمامی زوج نام و رمزعبور بر روی پروتکل های Plain text حجیم، نظیر FTP ، Telnet و POP3 را انجام و پس از تشخیص، آنان را نمایش خواهد داد. برای بدست آوردن برنامه فوق می توان از آدرس  http://www.monkey.org/~dugsong/dsniff استفاده نمود . نحوه فعال نمودن برنامه فوق ،  بصورت زیر است :

    # /usr/sbin/dsniff

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    استفاده از رمزنگاری End-To-End و یا حداقل رمزنگاری Link-level می تواند در این زمینه مفید واقع گردد. برخی پروتکل ها از لحاظ رمزنگاری معادل یکدیگر می باشند( نظیر : POP3S و HTTPS ) . برای پروتکل هائی که دارای قابلیت ها  و امکانات  , ذاتی رمزنگاری نمی باشند ، می توان آنان را از طریق  SSH : Secure Shell ، و یا  SSL connection انجام داد( tunneling ) .
    OpenSSH یک نمونه پیاده سازی شده متداول و انعطاف پذیر ازSSH  است.( قابل دسترس در آدرس  http://www.openssh.org ) . برنامه فوق، در اکثر نسخه های یونیکس اجراء و می توان از آن بمنظور ارتباطات از راه دور ( replaces telnet ,rlogin ,rsh ) و tunneling ( پروتکل هائی نظیر POP3,SMTP و X11 )   استفاده گردد .
    دستور زیر نحوه tunnel نمودن POP3 را بر روی SSH connection  نشان می دهد. بر روی  سرویس دهنده POP3 ، می بایست سرویس دهنده SSH نیز اجراء گردد. در ابتدا آن را بر روی ماشین سرویس گیرنده اجراء می نمائیم :

    # ssh -L 110:pop3.mail.server.com:110 username@pop3.mail.server.com

    در ادامه ، برنامه سرویس گیرنده پست الکترونیکی را به localhost اشاره می دهیم ، پورت TCP 110  ( برخلاف روال معمول که بصورت : pop3.mail.server.com ، پورت ۱۱۰ است )  . بدین ترتیب ، تمامی ارتباطات بین ماشین و سرویس دهنده پست الکترونیکی بصورت رمز شده انجام خواهد شد ( tunneled over SSH  ) .
    یکی دیگر از راه حل های متداول رمزنگاری مبتنی بر tunneling ، استفاده از stunnel است . روش فوق ، پروتکل SSL را پیاده سازی( با استفاده از OpenSSL Toolkit ) و می توان آن را  بمنظور tunel نمودن پروتکل های متفاوت plain text بخدمت گرفت . برای دریافت برنامه فوق ، می توان از آدرس  http://www.stunnel.org استفاده نمود.

    ششمین نقطه آسیب پذیر : : Sendmail
    Sendmail ، برنامه ای است که از آن بمنظور ارسال ، دریافت و فوروارد نمودن  نامه های الکترونیکی در اغلب سیستم های یونیکس و لینوکس استفاده می گردد. Sendmail ، یکی از متداولترین MTA : Mail Transfer Agent  در اینترنت بوده که بطور گسترده ای از آن بعنوان “آژانش توزیع نامه های الکترونیکی” بهمراه سرویس دهندگان پست الکترونیکی ، استفاده می گردد  . Sendmail ، یکی از اهداف اولیه مهاجمان  در سالیان اخیر بوده و تاکنون حملات متعددی را در ارتباط با آن شاهد بوده ایم. اکثر حملات انجام شده بدلیل قدیمی بودن  و یا عدم patch مناسب نسخه های نصب شده ، با موفقیت همراه بوده است .در این رابطه  می توان به چندین نمونه از حملات اخیر اشاره نمود :

    - CERT Advisory CA-2003-12 Buffer Overflow in Sendmail
    - CERT Advisory CA-2003-07 Remote Buffer Overflow in Sendmail
    - CERT Advisory CA-2003-25 Buffer Overflow in Sendmail

    خطرات و تهدیدات مرتبط با Sendmail را می توان به دو گروه عمده  تقسیم نمود :  از دست رفتن امتیازات که علت  آن buffer overflow  خواهد بود و پیکربندی نادرست سیستم که می تواند تبعات منفی را بدنبال داشته باشد ( مثلا” تبدیل یک سیستم به مرکزی آلوده برای توزیع نامه های الکترونیکی ) .عامل اصلی در بروز تهدیدات نوع اول ، عمدتا” به استفاده از نسخه های قدیمی و یا عدم  patching مناسب سیستم برمی گردد.علت اصلی تهدیدات نوع دوم ، به استفاده از فایل های پیکربندی پیش فرض و نادرست برمی گردد .

    سیستم های عامل در معرض تهدید
    تقریبا” تمامی نسخه های لینوکس و یونیکس بهمراه یک نسخه نصب شده از Sendmail عرضه می گردند. سرویس فوق،  بصورت پیش فرض فعال می باشد .

    نحوه تشخیص آسیب پذیری سیستم
    Sendmail ، در گذشته دارای نقاط آسیب پذیر فراوانی بوده که بتدریج  وبا ارائه نسخه های جدیدتر و patch های مربوطه ، میزان  آسیب پذیری آن کاهش یافته است .هر نسخه قدیمی و یا Patch نشده نرم فزار فوق در معرض آسیب قرار خواهد داشت . بمنطور مشخص نمودن شماره نسخه برنامه sendmail ، می توان از دستور زیر استفاده نمود :

    echo \$Z | /usr/lib/sendmail -bt -d0

    مسیر مشخص شده sendmail  در دستور فوق ، با توجه به پیکربندی سیستم ، می تواند متفاوت باشد. برای آگاهی از آخرین نسخه ارائه شده Sendmail می توان از آدرس  http://www.sendmail.org/current-release.html استفاده نمود .

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    مراحل زیر بمنظور ایمن سازی و حفاظت Sendmail پیشنهاد می گردد :

    • نسخه موجود را به آخرین نسخه ارتقاء و از آخرین patch های موجود ، استفاده گردد . برای دریافت source code می توان از آدرس http://www.sendmail.org استفاده نمود. در صورتیکه نسخه sendmail بهمراه سیستم عامل ارائه شده است  ( یک Package ) ، می توان برای دریافت patch مربوطه به سایت عرضه کنندگان سیستم عامل مراجعه نمود.

    • برنامه sendmail عموما” بصورت پیش فرض در اکثر سیستم های یونیکس و لینوکس ( حتی آنانی که بعنوان سرویس دهنده mail  مورد نظر نبوده و فعالیت آنان در ارتباط با  mail نخواهد بود) نصب می گردد. برنامه Sendmail را در حالت daemon بر روی ماشین های فوق ، اجراء ننمائید ( غیر فعال نمودن سوئیچ  bd -  ) . امکان ارسال نامه الکترونیکی توسط سیستم های فوق ، همچنان وجود خواهد داشت . در این رابطه می بایست پیکربندی سیستم بگونه ای انجام شود که به یک mail relay در فایل پیکربندی sendmail ، اشاره گردد.فایل پیکربندی،  sendmail.cf نام داشته و معمولا” در آدرس  etc/mail/sendmail.cf  قرار دارد .

    • در صورتیکه  لازم است sendmail در حالت daemon اجراء گردد، می بایست از صحت پیکربندی انجام شده اطمینان حاصل گردد. در این رابطه می توان از منابع اطلاعاتی زیر استفاده نمود :
      http://www.sendmail.org/tips/relaying.html
      http://www.sendmail.org/m4/anti_spam.html
      در نسخه  Sendmail 8.9.0 ، امکان open relay  بصورت پیش فرض غیرفعال می باشد.تعداد زیادی از عرضه کنندگان سیستم های عامل ، مجددا” آن رادر پیکربندی پیش فرض خود فعال می نمایند. در صورت استفاده از نسخه  Sendmail  ارائه شده بهمراه سیستم عامل ، می بایست دقت لازم در اینخصوص را انجام داد ( عدم استفاده سرویس دهنده برای  realying  ).

    • در زمان استفاده از نسخه جدید sendmail ( سوئیچ نمودن به یک نسخه دیگر ) ،  لازم است تدابیر لازم در خصوص تغییر فایل های پیکربندی ارائه شده توسط نسخه قدیمی ، اندیشیده گردد . برای آگاهی از جزئیات  بیشتر در ارتباط با پیکربندی Sendmail ، می توان از آدرس http://www.sendmail.org/m4/readme.html استفاده نمود.

    • در مواردیکه برنامه  Sendmail  از منابع موجود بر روی اینترنت Download  می گردد ، می بایست  بمنظور اطمینان از مجاز بودن نسخه تکثیری  از  PGP signature  استفاده نمود. در این رابطه لازم است به این نکته دقت شود که بدون بررسی integrity مربوطه به source code  برنامه Sendmail ، نمی بایست از آن استفاده شود. در گذشته ، نسخه هائی از Trojan ها در Sendmail  مستقر تا در زمان مناسب حرکت مخرب خود را آغاز نمایند .   بمنظور دریافت اطلاعات تکمیلی در این رابطه می توان از آدرس   CERT Advisory CA-2002-28 استفاده نمود. کلیدهای استفاده شده بمنظور sign نمودن برنامه Sendmail دریافتی را می توان از آدرس http://www.sendmail.org/ftp/PGPKEYS بدست آورد . در صورت فقدان  PGP ، می بایست از MD5 Checksum بمنظور بررسی integrity  کد منبع Sendmail ، استفاده گردد.

    برای کسب اطلاعات بیشتر می توان از منابع اطلاعاتی زیر استفاده نمود :

    http://www.sendmail.org/secure-install.html
    http://www.sendmail.org/m4/security_notes.html
    http://www.sendmail.org/~gshapiro/security.pdf

    در بخش چهارم این مقاله به بررسی سایر نقاط آسیب پذیر یونیکس و لینوکس خواهیم پرداخت .

    مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش دوم )

    اسفند ۲۵م, ۱۳۸۸

    سومین نقطه آسیب پذیر : Apache Web Server
    آپاچی ( Apache) یکی از متداولترین سرویس دهندگان وب بر روی اینترنت است . در مقایسه با سرویس دهنده وب مایکروسافت ( IIS ) ، آپاچی مسائل و مشکلات امنیتی کمتری را داشته  ولی همچنان دارای آسیب پذیری خاص خود است  .
    علاوه بر وجود نقاط آسیب پذیر در ماژول ها و کد آپاچی ( CA-2002-27 و CA-2002-17 ) ، تکنولوژی های CGI و PHP نیز دارای نقاط آسیب پذیری خاص خود بوده که ضعف های امنیتی آنان به سرویس دهنده وب نیز سرایت می گردد.  در صورت وجود نقاط آسیب پذیر در سرویس دهنده آپاچی و یا عناصر مرتبط به آن  ، زمینه تهدیدات زیر فراهم می گردد :

    • غیر فعال نمودن سرویس ( DoS )
    • نمایش و بمخاطره انداختن  فایل ها و داده های حساس
    • دستیابی به سرویس دهنده از راه دور
    • بمخاطره افتادن سرویس دهنده ( دستکاری و خرابی سایت )

    سیستم های عامل در معرض تهدید
    تمامی سیستم های یونیکس قادر به اجراء آپاچی می باشند . آپاچی بصورت پیش فرض بر روی تعداد زیادی از نسخه های  یونیکس و لینوکس ، نصب می گردد .علاوه بر امکان فوق ، آپاچی را می توان  بر روی میزبانی دیگر که از سیستم عاملی مختلف نظیر ویندوز استفاده می نماید نیز نصب نمود. این نوع از نسخه های آپاچی نیز می تواند دارای نقاط آسیب پذیر خاص خود  باشد .

    نحوه تشخیص آسیب پذیری سیستم
    بمنظور آگاهی  و کسب اطلاعات  لازم در خصوص نحوه تشخیص آسیب پذیری سرویس دهنده وب آپاچی ، می توان از آدرس های زیر استفاده نمود :

    آدرس های اشاره شده ، دارای اطلاعات فنی لازم بمنظور نحوه تشخیص آسیب پذیری سیستم و پیشنهادات لازم در خصوص ارتقاء وضعیت امنیتی می باشند . استفاده از آدرس:   http://httpd.apache.org نیز در این زمینه مفید است .

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    بمنظور حفاظت یک سرویس دهنده وب آپاچی ، پیشنهادات زیر ارائه می گردد :

    • اطمینان از نصب آخرین patch  ارائه شده
      - در این رابطه می توان از آدرس http://httpd.apache.org بمنظور آگاهی  از آخرین  وضعیت نسخه ها و Patch levels  استفاده نمود.
      - بمنظور دستیابی به Source code  اکثر نسخه های آپاچی، می توان از آدرس   http://httpd.apache.org/download.cgi استفاده نمود.
      - بمنظور آگاهی و دریافت آخرین Patch های ارائه شده می توان از آدرس  http://www.apache.org/dist/httpd/patches/ استفاده نمود.

    • اطمینان از patching عناصر کلیدی سیستم عامل که آپاچی بعنوان مرجع از آنان استفاده می نماید .در این رابطه لازم است که صرفا” ماژول های ضروری بمنظور صحت عملکرد سرویس دهنده ، در آپاچی کمپایل گردند .لازم است به این نکته اشاره گردد که  کرم(  mod_ssl ( CA-2002-27 نمونه ای کامل در این زمینه بوده که از نقاط آسیب پذیر در( OpenSSL ( CA-2002-23 استفاده نموده است .

    • از اجرای  آپاچی بعنوان ریشه ، اجتناب و می بایست بدین منظور ، کاربر و یا گروهی  خاص با حداقل مجوز ایجاد گردد.  سایر پردازه های سیستم ضرورتی به اجراء تحت کاربر و یا گروه فوق را نخواهند داشت .

    • Chroot ، پتانسیلی است  که باعث تعریف مجدد محدوده یک برنامه می گردد . در حقیقت chroot ، باعث تعریف مجدد دایرکتوری ROOT”  و یا “/”  برای یک برنامه و یا یک Login session می گردد .chroot می تواند بعنوان یک لایه تدافعی استفاده گردد . مثلا” در صورتیکه فردی به کامپیوتر شما دستیابی پیدا نماید ، قادر به مشاهده تمامی فایل های موجود بر روی سیستم نخواهد بود . علاوه بر محدودیت فوق ، محدودیت هائی در خصوص اجرای برخی از دستورات نیز بوجود می آید.در این رابطه یک دایرکتوری با نام chroot/ ، ایجاد و تمامی سرویس های مورد نطر با یک انظباط خاص در آن مستقر می گردند . مثلا” سرویس دهنده آپاچی در chroot/httpd / قرار می گیرد. با توجه به موارد فوق ، می بایست آپاچی را در یک  محیط chroot اجراء نمود . درصورتیکه آپاچی بصورت chrooted اجراء و فعالیت خود را  آغاز نماید ، امکان دستیابی آن به سایر بخش های موجود در  ساختار دایرکتوری سیستم عامل و  خارج از chroot وجود نخواهد داشت . بدین ترتیب یک لایه تدافعی مناسب در خصوص سوء استفاده های احتمالی ایجاد می گردد. بعنوان نمونه ، ممکن است یک shell فراخوانده شده  و با توجه به اینکه  bin/sky / در chroot قرار ندارد ، می تواند زمینه سوء استفاده احتمالی را فراهم نماید. لازم است به این نکته مهم نیز اشاره گردد که Chrooting آپاچی می تواند اثرات جا نبی نامطلوبی را در ارتباط با CGI,PHP ، بانک های اطلاعاتی و سایر ماژول ها و یا ارتباطاتی که محیط سرویس دهنده وب بمنظور سرویس دهی به آنان نیازمند دستیابی به توابع کتابخانه ای خارجی است را بدنبال داشته باشد .روش های متعددی بمنظور chrooting  وجود داشته و می بایست از مستندات نرم افزار مورد نظر ، بعنوان یک منبع اطلاعاتی مناسب در خصوص ارائه راهکارهای مربوطه ، استفاده گردد

    • بمنظور مدیریت یک سرویس دهنده وب ، لازم است فیدبک های لازم در خصوص فعالیت و کارآئی سرویس دهنده و سایر مسائلی که ممکن است یک سرویس دهنده با آنان برخورد نماید را اخذ و در ادامه با آنالیز آنان تمهِیدات لازم در خصوص مسائل موجود را بکار گرفت . سرویس دهنده آپاچی ، قابلیت ها و پتانسیل های انعطاف پذیری را در خصوص logging ارائه می نماید . بنابراین لازم است عملیات logging با دقت نظر بالا بصورت موثر و موشکافانه انجام تا امکان ردیابی هر نوع فعالیت امنیتی غیر مجاز و یا رفتار غیر منطقی سرویس دهنده ، فراهم گردد .پیشنهاد می گردد که با یک نظم خاص از اطلاعات موجود در فایل های لاگ ، آرشیو تهیه شود . بدین ترتیب ، امکان مدیریت فایل های لاگ و بررسی آنان فراهم خواهد شد. بمنظور آشنائی با فرمت های متفاوت لاگ می تواند از منابع زیر استفاده نمود :
      - برای Apache 1.3.x از آدرس http://httpd.apache.org/docs/logs.html استفاده شود .
      - برای Apache 2.0.x  از آدرس http://httpd.apache.org/docs-2.0/logs.html استفاده شود .
      در موارد متفاوتی و با توجه به شرایط پیش آمده ممکن است محتوی فایل های لاگ بتنهائی کافی نباشد . وضعیت فوق در مواردیکه از  PHP ، CGI و یا سایر تکنولوژی های مبتنی بر اسکریپت استفاده می گردد ، تشدید و می توان بمنظور افزایش توان آنالیز یک تهاجم و سوءاستفاده از یک ضعف امنیتی ، اقدام به ثبت لاگ های مربوط به  GET و POST  نمود.لاگ نمودن عملیات مرتبط به GET و POST می تواند از طریق mod_Security صورت پذیرد. ModSecurity یک سیستم تشخیص مزاحمین ( Intruder detection ) یوده و پیشگیری های لازم در خصوص یک برنامه وب را ارائه می نماید . سیستم فوق بهمراه سرویس دهنده وب مستقر و یک پوشش امنیتی مناسب را در جهت پیشگیری از یک تهاجم در ارتباط با برنامه های وب فراهم می نماید . ModSecurity   ، از سرویس دهنده آپاچی حمایت می نماید .
      - http://www.modsecurity.org
      http://www.securityfocus.com/infocus/17064.152.44.126 152.44.126

    • PHP، CGI،SSI و سایر اسکریپت ها . در این رابطه موارد زیر پیشنهاد می گردد :
      - PHP,CGI,SSI و سایر زبان های اسکریپت را غیر فعال نمائید ( مگر اینکه ضرورتی جدی در رابطه با آنان وجود داشته باشد ).
      - SSI یا Server Side Includes را  که می تواند زمینه مساعدی بمنظور سوء استفاده از  سرویس دهنده و الزام آن در جهت اجرای کد ناخواسته گردد را غیر فعال نمائید .
      - در صورتیکه ضروری است که  از PHP,CGI,SSI و یا سایر زبان های اسکریپت استفاده گردد ، می بایست  از SuEXEC استفاده شود. suEXEC ، امکان  اجرای اسکریپت ها تحت آپاچی  بهمراه یک User Id در مقابل یک Apache User Id را فراهم می نماید در حقیقت suEXEC این امکان را برای کاربران آپاچی فراهم می نماید  که قادر به اجرای برنامه های SSI و CGI تحت یک User Id متفاوت نسبت به User Id مربوط به فراخوانی سرویس دهنده وب باشند.بدین ترتیب تهدیدات امنیـتی کاهش و امکان نوشتن و اجرای برنامه های SSI و CGI اختصاصی نوشته شده توسط مهاجمان ، حذف خواهد شد . استفاده از  suEXEC ،می بایست توام با آگاهی و دانش لازم باشد چراکه در صورت استفاده نادرست و یا عدم پیکربندی مناسب و شناخت نسبت به مدیریت setupid Root ،  خود باعث بروز حفره های امنیتی دیگر خواهد شد.. در این رابطه و بمنظور آشنائی با نحوه عملکرد و استفاده از suEXEC می توان از آدرس های زیر استفاده نمود:
      – برای Apache 1.3.x از آدرس http://httpd.apache.org/docs/suexec.html استفاده شود .
      – برای Apache 2.0.x  از آدرس   http://httpd.apache.org/docs-2.0/suexec.html استفاده شود.
      - بررسی لازم در خصوص محتوی دایرکتوری cgi-bin و سایر دایرکتوری های شامل اسکریپت ها انجام و لازم است تمامی اسکریپت های پیش فرض نمونه ، حذف گردند.
      - ایمن سازی PHP . پرداختن به موضوع فوق با توجه به گستردگی مطالب از حوصله این مقاله خارج بوده و صرفا” به دو نمونه مهم در اینخصوص اشاره می گردد :
      - غیر فعال نمودن پارامترهائی که باعث ارائه اطلاعات در HTTP header می گردد .
      - حصول اطمینان از اجرای PHP در حالت safe
      برای دریافت اطلاعات تکمیلی دراین خصوص می توان از آدرس  http://www.securityfocus.com/printable/infocus/1706 استفاده نمود .
      -  استفاده از ماژولهای اضافه بمنظوربهبود وضعیت امنیتی. مثلا”ماژول mod_Security می تواند باعث حفاظت در مقابل Cross Site Scripting:  XSS  ،  شود . برای آشنائی و مشاهده اطلاعات تکمیلی در این خصوص می توان  از آدرس  http://www.modsecurity.org استفاده نمود.
      - ممیزی و بررسی اسکریپت ها برای نقاط آسیب پذیر شامل XSS & SQL Injection نیز حائز اهمیت است . در این رابطه می توان از ابزارهای متعددی استفاده نمود. نرم افزار Nikto ( قابل دسترس در آدرس   http://www.cirt.net/code/nikto.shtml )  یکی از مناسبترین ابزارهای پویش و بررسی CGI  است .

    چهارمین نقطه آسیب پذیر : account هائی با رمز عبور ضعیف و یا فاقد رمز عبور
    استفاده از رمزعبور، روش های تائید کاربر و کدهای امنیتی در هر گونه تعامل ارتباطی بین کاربران وسیستم های اطلاعاتی ، امری متداول و رایج است . اکثر روش ها ی  تائید کاربران ، نظیر حفاظت فایل و داده ، مستقیما” به رمزهای عبور ارائه شده توسط کاربران ، بستگی خواهد داشت . پس از تائید کاربران ، امکان دستیابی آنان به منابع مشخص شده فراهم و هر یک از آنان  با توجه به امتیازات و مجوزهای نسبت داده شده ، قادر به استفاده از منابع موجودخواهند بود. در اغلب موارد ، فعالیت کاربرانی که مجاز بودن آنان برای دستیابی به منابع ، تائید شده است ، لاگ نشده و یا در صورتیکه فعالیت آنان ثبت گردد ، کمتر سوء ظنی به آنان می تواند وجود داشته باشد . ( آنان پس از تائید وارد میدانی شده اند که بدون هیچگونه ردیابی ، قادر به انجام فعالیت های گسترده ای خواهند بود) . بنابراین ، رمز عبور دارای نقشی حیاتی و اساسی در ایجاد اولین سطح دفاع در یک سیستم اطلاعاتی بوده  و از دست رفتن رمز عبور و یا  ضعف آن می تواند سیستم را در معرض تهدیدات جدی قرار دهد . مهاجمان پس از دستیابی به رمز عبور کاربران تائید شده ( استفاده از مکانیزم های متفاوت ) قادر به دستیابی منابع سیستم و حتی تغییر در تنظیمات سایر account های تعریف شده و موجود بر روی سیستم خواهند بود،عملیاتی که می تواند پیامدهای بسیار منفی را بدنبال داشته باشد . پس می بایست بپذیریم که وجود یک account ضعیف و یا فاقد رمز عبور می تواند تهدیدی جدی در یک سازمان باشد . در این راستا علاوه بر اینکه می بایست از پتانسیل های ارائه شده توسط سیستم عامل با دقت استفاده نمود ، ضروری است ، تابع یک  سیاست امنیتی تدوین شده در رابطه با رمز عبور در سازمان متبوع خود باشیم . تعریف و نگهداری یک account بهمراه رمز عبور مربوطه در سازمان ما تابع چه سیاست امنیتی است ؟  مهمترین و متداولترین نقاط آسیب پذیر در ارتباط با رمز عبور شامل موارد زیر است :

    • Account  تعریف شده  دارای رمز عبور ضعیف و یا فاقد رمز عبور است .
    • عدم حفاظت مناسب کاربران از رمزهای عبور ،صرفنظر از استحکام رمزهای عبور تعریف شده .
    • سیستم عامل و یا سایر نرم افزارهای موجود ، امکان ایجاد account مدیریتی ضعیف  و فاقد رمز عبور را فراهم می نمایند .
    • الگوریتم های Hashing رمز عبور( رمزنگاری مبتنی بر کلید عمومی بر پایه یک مقدار hash ، استوار بوده و بر اساس یک مقدار ورودی که دراختیار الگوریتم hashing گذاشته می گردد ، ایجاد می گردد. در حقیقت مقدار hash ، فرم خلاصه شده و رمز شده ای  از مقدار اولیه خود است  ) ، شناخته شده بوده و در اغلب موارد مقدار Hashe بدست آمده ، بگونه ای ذخیره می گردد که امکان مشاهده آن توسط سایرین وجود خواهد داشت. مناسبترین نوع حفاظت در این راستا ، تبعیت از یک سیاست رمز عبور قدرتمند بوده  که در آن دستورالعمل ها ی لازم برای تعریف یک رمز عبورمناسب مشخص و در ادامه با استفاده از ابزارهای موجود، بررسی لازم در خصوص  استحکام و بی نقص بودن رمز عبور صورت گیرد.

    سیستم ها ی در معرض آسیب پذیر
    هر سیستم عامل و یا برنامه ای که فرآیند تائید کاربران آن براساس یک User ID و رمز عبور باشد ، در معرض این تهدید خواهد بود.

    نحوه تشخیص آسیب پذیری سیستم
    در صورتیکه از account هائی استفاده می شود که بین کاربران متعدد و یا کارکنان موقت  یک سازمان به اشتراک  گذاشته شده و یا کاربران از رمزهای عبور بدرستی حفاظت ننمایند، پتانسیل نفوذ به شبکه توسط یک مهاجم فراهم می گردد.پیکربندی account های جدید کاربران با یک رمز عبور مشابه و یا رمز عبوری که بسادگی قابل حدس باشد نیز  فرصتی مناسب را در اختیار مهاجمان بمنظور دستیابی به منابع اطلاعاتی  موجود در یک سازمان قرار خواهد داد .
    لازم است در خصوص ذخیره سازی رمز عبور hashes تصمیم گیری و مشخص شود که محل استقرار و ذخیره سازی آنان در etc/passwd /  و یا etc/shadow / می باشد.قابلیت خواندن فایل etc/passwd /، می بایست توسط تمامی کاربران شبکه وجود داشته تا زمینه و امکان تائید کاربران فراهم گردد. در صورتیکه فایل فوق ، شامل رمزعبور hashed نیز باشد ،  در ادامه و پس از دستیابی کاربران به سیستم ، امکان خواندن مقادیر hash فراهم و مهاجمان می توانند با استفاده از یک برنامه cracker ، تلاش خود را جهت شکستن و تشخیص رمز عبور آغاز و به سرانجام برسانند . فایل etc/shadow/  ، صرفا” برای root قابل خواندن بوده و مکانی مناسب بمنظور ذخیره نمودن مقادیر hashes است . در صورتیکه account های محلی ، توسط /etc/shadow حفاظت نشود ، ریسک رمزهای عبور افزایش خواهد یافت . اکثر سیستم های عامل جدید بصورت پیش فرض از  etc/shadow / بمنظور ذخیره سازی رمز عبور hashes استفاده می نمایند ( مگر اینکه شرایط فوق توسط نصب کننده تغییر یابد ). در این رابطه می توان از الگوریتم MD5 بمنظور hash نمودن رمزهای عبور نیز استفاده نمود. الگوریتم فوق،  بمراتب از الگوریتم قدیمی crypt ایمن تر است .
    NIS)Network Information System) ، یک بانک اطلاعاتی توزیع شده بمنظور مدیریت یک شبکه است . در حقیقت  NIS ، استانداردی برای اشتراک فایل ها بین سیستم های کامپیوتری متعدد را فراهم و شامل مجموعه ای از سرویس هائی است که بمنزله یک بانک اطلاعاتی از سرویس ها عمل نموده و اطلاعات مربوط به مکان سرویس ( Mapping ) را در اختیار سایر سرویس های شبکه نظیر( Network File System (NFS) ، قرار می دهد. با توجه به ماهیت طراحی بعمل آمده  ، فایل های پیکربندی NIS ، شامل رمزهای عبور hash  بوده و این امر می تواند امکان خواندن آنان را برای تمامی کاربران فراهم و عملا” رمزهای عبور در معرض تهدید قرار گیرند .نسخه های جدید پیاده سازی شده  از NIS ، نظیر +NIS و یا LDAP عموما” دارای استحکام لازم در ارتباط با رمزهای عبور hashes می باشند( مگر اینکه شرایط فوق توسط نصب کننده تغییر یابد). تنظیم و پیکربندی نسخه های فوق ( نسخه های جدید ) ، مشکل تر بوده و همین امر می تواند استفاده از آنان را با تردید و مشکل مواجه نماید .
    حتی اگر رمزهای عبور hashes توسط /etc/shadow و یا امکانات پیاده سازی شده ، محافظت گردند ، امکان حدس و تشخیص رمزهای عبور توسط سایر افراد وجود خواهد داشت . در این رابطه می توان به موارد متعدد دیگری نظیر : ضعف رمز عبور ، وجود account های غیر استفاده مربوط به کارکنانی که سازمان خود را ترک نموده اند ، اشاره نمود .سازمان ها معمولا” در رابطه با غیر فعال نمودن account مربوط به کاربران قدیمی کوتاهی نموده و لازم است در این رابطه از روش های خاصی استفاده گرد.
    نصب های پیش فرض سیستم های عامل و یا شبکه توسط سازندگان و یا مدیران  سیستم و یا شبکه ، می تواند نصب مجموعه ای از سرویس های غیرضروری را  نیز بدنبال داشته باشد.  رویکرد فوق،با اینکه عملیات نصب سیستم عامل و سرویس ها ی مربوطه را تسهیل می نماید ولی  مجموعه ای از سرویس های غیر ضروری و account هائی که بصورت پیش فرض ضعیف ویا فاقد رمز عبور می باشند را بهمراه بر روی سیستم مستقر و پیکربندی می نماید.

    نحوه حفاظت در مقابل نقطه آسیب پذیر
    بهترین و مناسبترین دفاع در مقابل ضعف رمزهای عبور ، تبعیت از یک سیاست امنیتی مستحکم بوده که دستورالعمل های لازم  کهه موجب می شود رمزهای عبور مناسب و مستحکمی توسط کاربران تعریف و توسط مدیران سیستم بصورت مستمر پیوستگی و استحکام آنان بررسی می گردد با حمایت کامل سازمان . مراحل زیر توصیه های لازم برای ارائه یک سیاست امنیتی مناسب می باشد :

    • اطمینان ازاستحکام و انسجام  رمز های عبور . با استفاده از سخت افزار مناسب و اختصاص زمان کافی ، می توان هر رمز عبوری را  crack نمود. در این راستا می  توان با استفاده ازروش های ساده و در عین حال موفقیت آمیز، عملیات تشخیص رمز عبور را انجام داد . اغلب برنامه های تشخیص دهنده رمزعبوراز روشی موسوم به “حملات مبتنی بر سبک دیکشنری ” ، استفاده می نمایند. با توجه به اینکه روش های رمز نگاری تا حدود زیادی شناخته شده می باشند  ، برنامه های  فوق ، قادر به مقایسه  شکل  رمز شده یک رمز عبور در مقابل شکل  های رمز شده کلمات دیکشنری می باشند( در زبان های متعدد و استفاده از اسامی مناسب بهمراه جایگشت های مختلف آنان  ) . بنابراین ، رمز عبوری  که ریشه آن در نهایت یک کلمه شناخته شده باشد ، دارای استعداد ذاتی در رابطه با این نوع از حملات خواهد بود . تعداد زیادی از سازمان ها ، آموزش های لازم در خصوص نحوه تعریف رمزهای عبور را به کارکنان خود داده و به آنان گفته شده است  که رمزهای عبور مشتمل بر ترکیبی از حروف الفبائی و کاراکترهای ویژه را برای خود تعریف نمایند.متاسفانه اکثر کاربران این موضوع را رعایت ننموده و  بمنظور تعریف یک رمز عبور با نام “password” ، صرفا” اقدام به تبدیل حروف به اعداد و یا حروف ویژه می نمایند ( pa$$w0rd) . چنین جایگشت هائی نیز قادر به  مقاومت در مقابل یک تهاجم مبتنی بر دیکشنری نبوده و  “pa$$w0rd” به روش مشابهی که “password” تشخیص داده می شود ، crack خواهد شد .
      یک رمز عبور خوب ، نمی بایست از ریشه یک  کلمه و یا نام شناخته شده ای  اقتباس شده باشد .در این راستا لازم است به کاربران آموزش لازم در خصوص انتخاب و ایجاد رمزهای عبور از موارد تصادفی نظیر  یک عبارت ، عنوان یک کتاب ،نام یک آواز و یا نام یک فیلم  داده شود. با انتخاب  یک رشته طولانی که بر اساس رویکردهای خاصی می تواند انتخاب گردد( گرفتن اولین حرف هر کلمه ، جایگزینی یک کاراکتر خاص برای یک کلمه ، حذف تمامی حروف صدادارو  سایر موارد ) ، کاربران قادر به ایجاد رمزهای عبور مشتمل بر ترکیبی از حروف الفبائی و حروف ویژه بوده که در صورت مواجه شدن  با حملات مبتنی بر دیکشنری ، تشخیص آنان بسختی انجام می شود. لازم است به این نکته نیز اشاره گردد که رمزعبور می بایست براحتی بخاطر سپرده شده و بازیابی ( یادآوری)آن مشکل نباشد ( هدف از ذخیره سازی ، بازیابی است اگر چیزی را ذخیره  نمائیم ولی در زمان مورد نظر قادر به بازیابی آن نباشیم ، سیستم ذخیره و بازیابی ما با اشکال مواجه شده است ! ). پس از تدوین دستورالعمل لازم بمنظور تولید رمزهای عبور مناسب و  آموزش کاربران بمنظور پایبندی به  اصول امنیتی تعریف شده ، می بایست از روتین ها ی جانبی متعددی بمنظور اطمینان از پیروی کاربران از دستوراالعمل های اعلام شده ، استفاده گردد. بهترین گزینه در این راستا ، بررسی صحت رمزهای عبور پس از اعمال تغییرات توسط کاربران است .
      پس از ارائه دستورالعمل ها ی لازم و مناسب برای ایجاد رمزهای عبور ، روتین های تکمیلی خاصی  می بایست ایجاد تا این اطمینان حاصل گردد که کاربران پایبند به دستورالعمل های ارائه شده بوده اند. بهترین روش در این زمینه ، بررسی صحت اعتبار رمزهای عبور پس  از اعمال تغییرات توسط کاربران است . اکثر نمونه های یونیکس و لینوکس می توانند از Npasswd بمنظور بررسی رمز عبور در مقابل سیاست امنیتی موجود استفاده نمایند. سیستم های PAM-Enabled  نیز می توانند از Cracklib ( کتابخانه لازم بمنظور هماهنگی با  Crack ) بمنظور بررسی رمزهای عبور ایجاد شده ، استفاده نمایند.اکثر سیستم های PAM-enabled را می توان بگونه ای پیکربندی نمود که رمزهای عبوری  را که با سیاست های مشخص شده مطابقت ندارد ، رد نمایند .
      درمواردیکه امکان استفاده از ابزارهائی نظیر Npasswd و یا کتابخانه های PAM-Enabled ، وجود ندارد، مدیران سیستم و شبکه می توانند از برنامه های کاربردی Cracking  در حالت stand-alone و بعنوان یک روتین کنشگرایانه مستمر، استفاده نمایند. LC4 )l0phtcrack version 4) و John the Ripper ، نمونه هائی از برنامه های فوق ، می باشند.  لازم است مجددا” به این موضوع اشاره گردد که بدون کسب مجوز لازم از مدیران ارشد سیستم در سازمان ، نمی بایست از برنامه های cracking استفاده گردد.پس از کسب مجوزهای  لازم ، می توان عملیات فبررسی رمزهای عبور  را بر روی یک ماشین حفاظت شده انجام داد. به کاربرانی که رمزهای عبور آنان crack می گردد، بصورت محرمانه وضعیت فوق گزارش و دستورالعمل های لازم در خصوص نحوه انتخاب یک رمز عبور مناسب نیز به آنان ارائه گردد .اخیرا” و در پاسخ به رمزهای عبور ضعیف ، استفاده از روش هائی دیگر بمنظور تائید کاربران،  نظیر بیومتریک (زیست سنجی )  ، نیز مورد توجه  واقع شده است .

    • حفاظت رمزهای عبور مستحکم . در صورتیکه رمزهای عبور hashes در etc/passwd /  ذخیره می گردند ، سیستم را بهنگام نموده تا از  /etc/shadow استفاده گردد . در صورتیکه بر روی  سیتستم  NIS و یا LDAP اجراء که امکان حفاظت hashes وجود نداشته باشد ، هر کاربری قادر به خواندن رمزهای عبور hashes و تلاش بمنظور cracking  آنان ، خواهد بود.در این رابطه  می بایست بررسی لازم در خصوص استفاده از گزینه های ایمن تری از نسخه های NIS و LDAP را انجام داد. تا زمانیکه این نوع برنامه های غیر ایمن وجود داشته و با نمونه های ایمن جایگزین نشده اند، می بایست  مجوزهای مربوطه را ایمن و از ابزارهای کنشکرایانه بصورت مستمر استفاده گردد.در این رابطه پیشنهاد می گردد که در مقابل استفاده از الگوریتم قدیمی Crypt بمنظورhash نمودن رمزهای عبور از الگوریتم  MD5 استفاده گردد.
      حتی اگر رمزهای عبور ، مستحکم و قدرتمند باشند ، در صورت عدم حفاظت آنان توسط کاربران ، سیستم های موجود در یک سازمان در معرض تهدید قرار خواهند گرفت .  یک سیاست امنیتی مناسب ، می بایست شامل دستورالعمل های لازم بمنظور آموزش کاربران در رابطه با حفاظت رمزهای عبور می باشد.عدم ارائه رمز عبور به افراد دیگر، عدم نوشتن رمز عبور در محلی که امکان خواندن آن برای دیگران وجود داشته باشد و حفاظت اتوماتیک فایل  هائی که رمزهای عبور در آن ذخیره شده اند ، از جمله مواردی می باشند که می بایست به کاربران آموزش داده شود. اغلب کاربران در مواجهه با پیامی مشابه “Your password has expired”  که نشاندهنده اتمام عمر مفید یک رمز عبور است ، یک رمز عبور ضعیف را برای خود انتخاب می نمایند ، بنابراین لازم است در فرصت مناسب و قبل از برخورد با اینچنین پیام هائی ، به کاربران آموزش های لازم ارائه گردد.

    • کنترل دائم و پیوسته accounts . هر account مدیریتی و یا مبتنی بر سرویس که از آن استفاده نمی گردد، می بایست غیر فعال و یا در صورت امکان از روی سیستم حذف گردد. هر account مدیریتی و یا مبتنی بر سرویس که از آن استفاده می گردد ، می بایست دارای رمزعبورجدید و مستحکمی باشد. پیکربندی account های جدید کاربران  با رمزهای عبور اولیه (تولیده شده بصورت تصادفی)  و ضرورت تغییر رمزهای عبور توسط کاربران و در اولین log in  نیز می تواند در این زمینه مفید واقع شود. ممیزی account ها بر روی سیستم را انجام  و لازم است در این رابطه یک لیستی اصلی ایجاد گردد .در این رابطه می بایست رمزهای عبور در ارتباط با سیستم هائی نظیر روترها ، چاپگرهای دیجیتالی متصل شده به اینترنت و سایر موارد دیگر نیز مورد بررسی قرار گرفته و روتین هائی خاص بمنظور افزودن account های تائید شده  به لیست و یا حذف  account هائی که ضرورتی به استفاده از آنان نمی باشد ، پیاده سازی و همواره خود را پایبند به آن بدانیم .اعتبار لیست را در فواصل زمانی خاصی بررسی تا از بهنگام بودن آن اطمینان حاصل گردد.از روتین های  خاصی بمنظورحذف account متعلق به کارکنان و یا پیمانکارانی که سازمان را ترک نموده اند ، استفاده گردد .

    در بخش سوم این مقاله به بررسی سایر نقاط آسیب پذیر یونیکس و لینوکس خواهیم پرداخت .