نوشته‌ها

hak veb serverha-taliem-ir

هك وب سرورها، آسيب پذيري برنامه هاي تحت وب، و تكنيك هاي شكستن

وب سرورها و برنامه هاي تحت وب، بسيار مستعد حمله هستند. اولين دليل آن، اين است كه وب سرورها، بايد از طريق اينترنت قابل دسترس باشند. زمانيكه وب سروري مورد حمله قرار گرفت، راهي را براي ورود هكر به داخل شبكه فراهم آورد. نه تنها نرم افزار وب سرور بلكه برنامه هايي كه بر روي وب سرور نيز اجرا ميشوند، ميتوانند
براي حمله استفاده شوند. به خاطر عملكرد آنها، وب سرورها نسبت به سيستم هاي ديگر، قابل دسترس تر هستند و حفاظت از آنها كمتر است بنابراين، حمله به وب سرورها بسيار ساده تر است. وب سرورها در ۲۴ ساعت شبانه روز و ۷روز هفته در دسترس هستند بنابراين حمله به شبكه را بسيار راحت تر می کنند. اين فصل در مورد انواع حملاتي كه بر عليه وب سرورها و برنامه هاي تحت وب انجام ميگيرند، و نيز آسيب پذيري هاي آنها بحث ميكند. به عنوان كارشناس امنيتي، بايد با نحوه هك وب سرورها، آسيب پذيري هاي آنها، و نيز انواع حملاتي كه هكر ممكن است استفاده كند، آشنا باشيد. علاوه بر اين، با تكنيك هاي مديريت patch ها و روشهاي ايمن سازي وب سرورها نیز باید آشنا باشيد.

انواع آسيب پذيري هاي وب سرور :

• پيكربندي نادرست نرم افزار وب سرور ( Apache ،IISو … )

• مشكلات سيستم عامل يا نرمافزارها يا خ اط در كد برنامه

• آسيب پذير بودن نصب هاي پيش فرض سيستم عامل يا نرم افزار وب سرور، و عدم به روز رساني آنها

• نداشتن فرآيندها و سياست هاي امنيتي صحيح

بیشتر بدانید…



zaban barname nevisi go-taliem-ir

معرفی زبان برنامه نویسی GO

در سپتامبر سال Ken Thompson ،۲۰۰۷ و Rob Pike، دو تن از سرشناس ترین چهره های دنیای نرم افزار که نیازی به معرفی‌ شان نیست، ایده ی ساخت یک زبان برنامه نویسی سیستمی جدید را با Robert Griesemer ، یکی دیگر از مهندسین مشغول در Google در میان گذاشتند. آنها کار بر روی این زبان جدید را شروع کردند و در این مدت تعداد دیگری از همکارانشان همچون Russ Cox و Brad Fitzpatrick و Andrew Gerrand به تیم آنها ملحق شدند.(شاید بد نباشد اگر این اسامی را گوگل کنید!) در نوامبر سال ۲۰۰۹، اولین نسخه ی آزمایشی زبان با پشتیبانی گوگل به صورت متن باز به عموم برنامه نویسان عرضه شد. از آن زمان تا کنون بیش از ۳۰۰ نفر از برنامه نویسان داوطلب در توسعه ی این پروژه شرکت داشته اند! از اولین ماه انتشار این زبان، شرکت های Startup زیادی استفاده از آن را شروع کردند. با اینکه زبان در نسخه ی آزمایشی به سر میبرد، اما برای خیلی ها وجود نام Ken Thompson و Rob Pike کافی بود تا از کیفیت زبان اطمینان حاصل کنند. شرکت های بزرگتر ما، منتظر نسخه ی پایدار زبان ماندند. تا اینکه در ماه مارس سال ۲۰۱۲T نسخه ی ۱٫۰ از زبان برنامه نویسی Go به صورت پایدار منتشر شد.

بیشتر بدانید…


niroye sazande-taliem-ir

نيروي سازنده، نيروي نابود كننده

چه عاملي سبب ميشود كه در زندگي خود، راه ها و هدف هاي معینی را انتخاب كنيم؟ اين عامل، اعتقادات ماست؛ اينكه به عقيده توانايي هاي ما چقدر است چه و كارهايي ممكن يا غيـرممكن اسـت. در فرهنـگ مردم هائيتي، پزشك جادوگرِ قبيله، دارای چنان قدرت مرموزي است كه ميتواند با يك اشـاره فـردي را هلاك كند. اما در واقع، آنچه موجب مرگ آن فرد ميشود قدرت جادويي پزشك نيست،بلکه اعتقاد افـراد بـه قـدرت فوق تصور اوست. آيا در زندگي خود تاكنون انتظار واقعه ناگواري را كشيده ايد؟ اثر آن انتظار بر زندگيتان چه بوده است؟ چه عقايد مثبتي بر زندگي فعلي شما اثر گذاشته است؟ چه انتظارات مثبت تازه اي ميتوانيد در خود يا ديگران ايجاد كنيد؟ مردم جهان به مدت هزاران سال بر اين عقيده بودند كه انسان با توجه به ساختار جسمی خود، قادر نيسـت مسـافت يـك مايل را در چهار دقيقه بدود. با وجود اين فردي به نام <راجر بانيستر > اين مسافت را در كمتر از چهار دقيقـه دويـد و ايـن باور را در هم شكست. وي چگونه به اين كار توفيق يافـت؟ آنقـدر موفّقيـت خـود را بـه چشـم دل ديـد و چنـان تصـوير زنده اي از موفّقيت در ذهن خود تشكيل داد كه سرانجام فرماني بـي چـون و چـرا بـه سيسـتم عصبی خـود صـادر كـرد و نتيجه اي جسمي به دست آورد كه با آن تصوير هماهنگ ذهني بود. پس از آن، كسان ديگر نيز از بانيستر پيـروي و بـاور كردند كه آنان نيز قادر چنين به كاري هستند لذا ظرف يك سال، افراد بسياري موفقیت او را تكرار كردند.

برای دانلود رایگان کتاب بر روی لینک کلیک کنید.

majazisazi-taliem-ir

مجازي سازي سيستم هاي ذخيره سازي داده

تكنولوژي نرم افزاري و سخت افزاري كه باعث ميشود تا جزئيات ذخيره سازي از قبيل محل ذخيره سازي و يا تكنولوژي بكار رفته در سيستم ذخيره سازي داده ها از كاربردها مخفي بماند. اين تكنولوژي اجازه ميدهد تا تعداد زيادي سيستم يك واحد ذخيره سازي را بين خود اصطلاحات share نكنند بدون اينكه هر يك از ديگران اطلاعاتي داشته باشد. اين تكنولوژي همچنين اجازه ميدهد تا از يك بسته در حال اجرا اصطلاحا snapshotگرفته شود تا بتوان از اين سيستم يك نسخه پشتيبان تهيه كرد بدون اينكه براي كاربردهاي و تراكنش هاي در حال اجرا مشكل و مراقب ايجاد شود. مجازي سازي سيستم ذخيره سازي اغلب توسط سرورهاي ذخيره سازي پشتيباني ميشود. كلاينتها و سرورها نيازي ندارند بدانند فايل هايي كه در حال پردازش آنها هستند در كجا ذخيره شدهاند. چنين هم نيازي هم ندارند تا بدانند چه نوع از ذخيرهسازها، داده ها و كاربردها را ذخيره كردهاند. مثلا دستگاه هاي ذخيره سازي ميتوانند ديسك سخت باشند يا SSDو يا هر تكنولوژي ديگر. مجازي سازي ذخيره سازي يك ديد مصنوعي از شبكه ذخيره سازي ايجاد ميكند كه جزئيات شبكه فيزيكي را از كلاينتها و سرورها مخفي ميكند .

اين سيستم توابع زير را فراهم ميكند:

  • ايجاد سيستم فايل توزيع شده
    سيستم ذخيرهسازي راه دور طوري ساخته شده كه از ديد كلاينت به نظر برسد وسيله ذخيره ساز مستقيما به كامپيوتر متصل است.
  • ايجاد درايوهاي با اندازه غيرواقعي و دلخواه
    در اين سيستم ميتوان چندين ابزار ذخيره سازي را به يكديگر متصل كرده تا از ديد خارجي طوري به نظر برسد كه يك واحد ذخيره سازي است.

برای دانلود رایگان کتاب بر روی لینک کلیک کنید.



mohandesi narmafzar-taliem-ir

مهندسی نرم افزار

بر طبق دسته بندي هايي كه انجام شده است نيازها شامل:
.۱عملياتي
.۲قابل دسترسي
.۳قابل اطمينان
.۴قابل كارايي
.۵قابل پشتيباني

در ارتباط با نيازهاي عملياتي قبلا بحث شده است.همان نيازهايي است كه شايد به غلط امنيت در اين مجموعه ذكر شده است. در صورتيكه امنيت جزو نيازهاي كيفي است.قابليت اطمينان آن نيازهايي است كه مقدار قابل دسترسي به نياز را بررسي ميكند.يعني مقدار كمكي كه وجود دارد بحث ميشود.و سيستم بايد در اين صورت داراي زبان پاسخگويي داشته باشد.در ارتباط با اين مورد فاكتور هاي انساني بحث ميشود.HCI :يكي از عواملي كه باعث اين نياز ميشود يعني براي فرد چه چيز قابل استفاده است .پس در ارتباط با مقوله قابل استفاده مسئله فاكتور انساني مطرح ميشود.و اين مسئله بسيار مهم ميباشد.يعني وابسته به وضعيت فرد چه نوع امكاناتي در اختيار سيستم قرار بگيرد.فاكتورهاي انساني وضعيت فرد است.اگر فرد مدير است آن نياز دارد اطلاعات به صورت منحني به آن داده شود.كسي كه درگير كار احتياج دارد.جزئيات را داشته باشد.

مفهوم فاكتور انساني:
.۱يعني انسان و يا كاربر مورد نظر مدام كار كند و يا چند وقت به چند وقت كار ميكند و بايد كاربرهاي سيستم دقيقا مشخص ميشود و سيستم در چه صورت قابل استفاده خواهد بود. مثلا مدير و پزشك را در نظر بگيريد در اين موقع مدير در صورتي سيستم آن موقعي قابل استفاده خواهد بود كه تمام اطلاعات را در اختيار داشته باشد و كاربر در صورتي مورد استفاده خواهد بود كه به اندازه كافي اطلاعات داشته باشد.

بیشتر بدانید…



majazisazi ba VMWare-taliem-ir

مجازی سازی با VMWare

نوشته اي كه در پيشرو داريد فصلهايي از پايان نامه دورهي كارشناسي اينجانب با موضوع “مجازي سازي و سيستم هاي پردازش ابري” است كه با كمي تغيير بدين شكل درآمده و در اختيار شما خواننده ي عزيز قرار گرفته است. موضوع اصلي اين نوشته مجازيسازي سرور است كه vSphere به عنوان يك نمونه از تكنولوژي هاي موجود مورد بررسي قرار گرفته است. سيستم هاي مجازيسازي سرور به طور كلي از دو قسمت اصلي تشكيل ميشوند: يكي بخش فوق ناظر كه بر روي سخت افزار قرار گرفته (البته در فوقناظر نوع ۲اين بخش بر روي سيستم عامل ماشين ميزبان قرار ميگيرد) و ماشينهاي مجازي بر روي آن اجرا ميشوند و مسئوليت اجرا ماشين هاي مجازي و تقسيم منابع بين آنها را برعهده دارد؛ و ديگري بخش مديريت كه به كمك آن ميتوان سرورهاي فيزيكي و ماشين هاي اجرا شده بر روي آنها را مديريت كرد. در حال حاضر شركتهاي بسياري به حيطه سيستم هاي مجازي سازي سرور وارد شده اند. در بخش فوق ناظر، مايكروسافت Hyper-vرا معرفي ميكند؛ VMWare كه از پيش تازان مجازيسازي است ESX و ESXi را ارائه كرده است؛ اوراكل نيز Oracle VM Serverرا بعنوان فوق ناظر معرفي ميكند؛ و در نهايت Xen كه يك فوق ناظر متن باز است توسط سيتريكس ارائه شده است. البته Xen بعنوان يك كامپوننت همراه با اكثر توزيعهاي لينوكس ارائه ميشود. ضمنا، توزيع Red Hatلينوكس ، KVM را نيز
بعنوان يك فوقناظر ارائه كرده است.

برای دانلود رایگان کتاب بر روی لینک کلیک کنید.


barname necisi-taliem-ir

برنامه نویسی اندروید

اندروید سیستم عامل متن بازي است براي گوشی هاي هوشمند (Smartphone) و کامپیوتر هاي دستی و تبلت ها که توسط Open Handset Alliance وGoogleساخته شد. این سیستم عامل، داراي ۱۲میلیون کد است که ۳میلیون آن ۲٫۸ ،XMLمیلیون خط Cو ۲٫۱میلیون آن جاوا می باشد. در سال هاي آینده اندروید در میلیون ها سیستم همراه و موبایل مورد استفاده قرار خواهد گرفت. شاید برخی به اشتباه فکر کنند که اندروید یک پلتفرم سخت افزاري است.ولی اندروید تنها یک سیستم عامل است که براي موبایل ها ساخته شده است. هسته سیستم عامل اندروید لینوکس است و داراي یک رابط کاربري ، غنی و کاربر پسند است و داراي توابعی براي مدیرت تماس هاي تلفنی است و همچنین برنامه هاي کاربردي و سودمندي براي کاربران نهایی دارد و کتابخانه هایی از کد براي راحتی کار برنامه نویسان و توسعه دهندگان نرم افزار دارد و از چند رسانه اي هم به خوبی پشتیبانی میکند. درصورتی که علاقه مند به برنامه نویسی بوده و یا در این زمینه یک حرفه اي هستید ، زمان یادگیري گسترش نرم افزار هاي اندروید فرا رسیده است.

امروزه پلت فرم های بسیار زیادی برای موبایل وجود دارد که رقیب اندرویدند. سیمبین ، آی فون، ویندوز موبایل، بلک بری، جاوا موبایل، لینکوس موبایل، و غیره از این دسته هستند.

بیشتر بدانید…

ketab shabakehaye mahali-taliem-ir

کتاب شبکه های محلی

شبکه ی کامپیوتری چیست؟ اساسا یک شبکه کامپیوتری شامل دو یا بیش از دو کامپیوتر و ابزارهای جانبی مثل چاپگرها ، اسکنرها و مانند اینها هستند که به طور مستقیم به منظور استفاده مشترک از سخت افزار و نرم افزار ، منابع اطلاعاتی ابزارهای متصل ایجادشده است توجه داشته باشید که به تمامی تجهیزات سخت افزاری و نرم افزاری موجود در شبکه منبع(source) گویند.

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

  1. استفاده مشترک از منابع: استفاده مشترک از یک منبع اطلاعاتی یا امکانات جانبی رایانه ، بدون توجه به محل جغرافیایی هر یک از منابع را استفاده از منابع مشترک گویند.
  2. کاهش هزینه: متمرکز نمودن منابع و استفاده مشترک از آنها و پرهیز از پخش آنها در واحدهای مختلف و استفاده اختصاصی هر کاربر در یک سازمان کاهش هزینه را در پی خواهد داشت.
  3. قابلیت اطمینان : این ویژگی در شبکه ها بوجود سرویس دهنده های پشتیبان در شبکه اشاره می کند، یعنی به این معنا که می توان از منابع گوناگون اطلاعاتی و سیستم ها در شبکه نسخه های دوم و پشتیبان تهیه کرد و در صورت عدم دسترسی به یک از منابع اطلاعاتی در شبکه (به علت از کار افتادن سیستم ) از نسخه های پشتیبان استفاده کرد. پشتیبان از سرویس دهنده ها در شبکه کارآیی ، فعالیت و آمادگی دایمی سیستم را افزایش می دهد.
  4. کاهش زمان :
  5. قابلیت توسعه:
  6. ارتباطات :

برای دانلود رایگان بر روی لینک کلیک کنید.

zaban barname nevisi-taliem-ir

زبان برنامه نویسی پایتون

هدف کتاب حاضر این است که به شما بیاموزد چگونه مانند یک متخصص کامپیوتر فکر کنیـد. این روش تفکر برخی از بهترین صور ریاضیات، مهندسـی و علـوم طبیعـی را در هـم مـیآمیـزد. ماننـد ریاضیدانان، متخصصـان کـامپیوتر از یـک زبـان رسـمی بـراي مشـخص کـردن ایـده هـا (خصوصـاً در محاسبات) استفاده میکنند. آنها مانند مهندسین چیزهایی را طراحی میکنند و اجزا را در سیسـتم هـا ترکیب و مقادیر را ارزیابی میکنند. آنها مانند دانشمندان، قواعد سیسـتم هـاي پیچیـده و فرضـیه هـا را رعایت میکنند و پیشگویی ها را آزمایش مینمایند. مهمترین مهارت یک متخصص کامپیوتر حل مسئله است. حل مسئله یعنی توانایی فرمول بندي مشـکلات، تفکـر خلاقانـه دربـارة راه حـلهـا و بیـان یـک راه حـل واضـح و دقیـق. بنـابراین یـادگیري برنامه نویسی فرصتی عالی براي کسب مهارت در حل مسائل است. این دلیل نامگذاري فصـل حاضـر بـا عنوان <روش برنامه نویسی> است. در قدم اول نوشتن برنامه را به عنوان یک مهارت مفیـد مـیآموزیـد و در قدم بعد شما از برنامه به منظور دستیابی به یک هدف استفاده میکنید. هرچـه پـیشتـر رویـم ایـن هدف واضحتر میشود.

پایتون نمونه اي از یک زبان سطح بالا است. از دیگر زبانهاي سطح بالا که ممکن است تـا بـه حال شنیده باشید، میتوان بیسیک، پاسکال، فورترن و Cرا نام برد. همانطور که ممکن است شما هم انتظار داشته باشـید، در مقابـل واژة < زبـان سـطح بـالا>، <زبان سطح پایین> هم وجود دارد که براي نمونه میتوان زبان اسمبلی را نام برد.

برای دانلود رایگان کتاب بر روی لینک کلیک کنید.


estefade az kelas va id-taliem-ir

استفاده از كلاس و id در طراحي صفحات با CSS

سلكتور كلاس: با استفاده از كلاس مي توانيم براي يك تگ HTML استايل هاي متفاوتي را تعريف كنيم. براي نمونه فـرض كنـيم مي خواهيم در صفحه دو نوع پاراگراف داشته باشيم: يكي با متن مشكي و ديگري با متن قرمز. براي مشـخص كـردن اين دو نوع پاراگراف مي توانيم از سلكتور كلاس استفاده كنيم. ابتدا استايل را به صورت زير مي نويسيم:
{p.black {color: black
{p.red {color:red
در مرحله بعد بايد براي هر پاراگرافي كه مي خواهيم به رنگ مشـكي باشـد از شناسـه ” class=”blackدر تـگ <p> استفاده كنيم و براي پاراگراف قرمز از شناسه ” class=”red البته نام كلاسـها اختيـاري اسـت ولـي بهتـر است آنها را طوري انتخاب كنيد كه مفهوم داشته باشند تا وقتي كه حجم استايل شما بيشتر شد به گنگ نباشـد. در مثال زير مي توانيد كد مربوط به نوشتن دو پاراگراف بالا را در متن HTML ملاحظه كنيد:

<p/>اين متني است كه به رنگ مشكي نمايش داده مي شود <“p class=”black>
<p/>اين متن به رنگ قرمز نمايش داده مي شود”<p class=”red>
نكته : شما مي توانيد بيش از يك كلاس براي يك تگ HTML تعريـف كنيـد امـا بـراي ايـن كـار نبايـد دو بـار از شناسه class استفاده كرد. بلكه بايد در يك شناسه class نام دو كلاس مورد نظر را با يك فاصله بين آنها وارد كرد.

برای دانلود کتاب بر روی لینک کلیک کنید.