loading...

آموزش مهندسی شبکه مایکروسافت ، معرفی مقالات آموزش شبکه مایکروسافت و MCSE

بازدید : 17
سه شنبه 12 فروردين 1404 زمان : 15:41

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

  • آموزش سئو محتوای متنی : چگونه یک محتوای متنی را سئو کنیم ؟

    سئو محتوا چیست؟

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

    انتخاب کلمه کلیدی (Keyword)

    مهمترین بخشی که برای سئو محتوا باید بهش توجه کنید انتخاب یک کلمه کلیدی و بعد نوشتن محتوا بر اساس همان کلمه کلیدی است. فرض کنید میخواهید برای کلمه کلیدی «سئو محتوا» مطلب بنویسید. ابتدا از طریق ابزار Google Trend کلمه کلیدی رو با نمونه های مشابه مقایسه کنید.

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

    انتخاب عنوان مناسب

    در اولین قدم برای مطلب باید عنوان مناسب انتخاب کنید. زمانی که کاربر اقدام به جستجو داخل موتورهای جستجو می کند، اولین گزینه ای که از نتیجه وب سایت شما می بیند عنوانی است که برای مطلب انتخاب کردید.

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

  • آموزش برنامه نویسی به زبان ساده به همراه مثال های کاربردی
  • آموزش طراحی سایت (HTML - CSS - Javascript) برای تازه کار ها
  • آموزش جاوا اسکریپت به زبان ساده به همراه مثال های کاربردی
  • در عناوین بالا، هدف ما به ترتیب کلمات کلیدی آموزش برنامه نویسی، آموزش طراحی وب و آموزش جاوا اسکریپت است که بر اساس این کلمه کلیدی عنوان ها را انتخاب کردیم. همچنین به این موضوع توجه کنید که کلمه کلیدی مورد نظر شما نیازی نیست که چندین بار در عنوان تکرار شود. یکبار قرار دادن کلمه کلیدی در ابتدای عنوان کفایت می کند. مهم تکرار کلمات کلیدی در متن اصلی یا چگالی کلمه کلیدی (Keyword Density) است که در بخش های بعدی این مطلب در مورد آن صحبت می کنیم.

    بعضی وقت ها انتخاب کلمه کلیدی نیاز به دقت زیادی داره، برای مثال، شما زمان نوشتن یک مطلب می تونید از کلمه کلیدی «جاوا اسکریپت» یا «جاوااسکریپت» استفاده کنید.

  • همچنین سعی کنید عنوان انتخابی شما زیاد طولانی و همچنین زیاد کوتاه نباشد، بهترین طول انتخابی برای عنوان مطلب بین 49 تا 65 کاراکتر است.

    توضیحات Meta Description

    یکی از مهمترین بخش های مطلب شما برای سئو محتوا، متنی است که برای بخش Meta Description مطلبتون انتخاب می کنید. این بخش در نتایج جستجو، زیر عنوان نمایش داده میشه. موارد زیر رو در زمان انتخاب Meta Description حتماً رعایت کنید:

  • طول توضیحات حداکثیر 150 کاراکتر باشد
  • کلمه کلیدی مورد نظر شما حتماً در توضیحات آورده شود
  • توضیحات مطلب به گونه ای باشد که کاربر با خواندن آن متوجه هدف شما از نوشتن مطلب بشود
  • از نوشتن توضیحات به صورت کلمات کلیدی خودداری کنید. نمونه ای از یک توضیحات نامناسب: آموزش سی شارپ، آموزش C#، آموزش برنامه نویسی، شروع برنامه نویسی
  • مطلب شما از نظر سئو محتوا باید به پاراگراف های مختلف تقسیم شود. سعی کنید از نوشتن پاراگراف های طولانی خودداری کنید. همچنین هر پاراگرف برای یک موضوع یا مفهوم خاص نوشته شود. استفاده از پاراگراف ها در نوشتن مطالب کمک زیادی به ماندگاری کاربر در وب سایت کرده و نرخ Bounce Rate را کاهش می دهد.

    سرفصل ها

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

  • در مشخص کردن سرفصل های مطلب به موارد زیر دقت کنید:

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

  • آشنایی با واژه سئو محتوا
  • انتخاب کلمه کلیدی
  • انتخاب عنوان برای محتوا
  • توضیحات یا Meta Description
  • نوشتن محتوای اصلیپ

بازدید : 26
سه شنبه 12 فروردين 1404 زمان : 15:40

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

اما ما در این مقاله می خواهیم به روشهای مختلف استفاده از فایل های راهنما در لینوکس و دستورات مرتبط با آنها اشاره کنیم. در این مقاله من ، محمد نصیری ، کارشناس امنیت سایبری و متخصص لینوکس به شما به ساده ترین شکل ممکن ، نحوه استفاده از این دستورات را به همراه مثال آموزش می دهم پس تا انتها با من باشید.

چرا به گرفتن کمک و راهنما در لینوکس نیاز داریم؟

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

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

استفاده از دستور whatis

ساده ترین و البته اولین دستوری که شما برای گرفتن راهنما در لینوکس نیاز دارید دستور whatis است. این دستور در یک خط بصورت خیلی ساده به شما توضیح می دهد که کاربرد این دستور چیست. دستور whatis دارای یک بانک یا دیتابیس اطلاعاتی نیست و اطلاعات خودش را از SECTION 1 فایل Manual یا راهنمای لینوکس دریافت می کند که بعدا به آن اشاره خواهیم کرد. برای مثال دستور زیر به شما می گوید کار دستور whatis چیست :

unity@tosinso-suse:~> whatis whatis
whatis (1)           - display one-line manual page descriptions

اگر دستورهای whatis و یا apropos در لینوکس کار نکردند ، یکی از روشها استفاده از دستور makewhatis با سویچ u برای به روز رسانی دیتابیس whatis است.

استفاده از دستور whereis

دستور whereis در لینوکس همانطور که از اسمش هم پیداست ، محل قرارگیری فایل اجرایی دستور مورد نظر را نمایش می دهد و در عین حال اگر فایل سورس کد ، فایل های manual یا راهنما هم برای آن دستور وجود داشته باشد ، آنها را نیز نشان می دهد. برای مثال در زیر ما دستور whereis را برای دستور ping استفاده کرده ایم :

unity@tosinso-suse:~> whereis ping
ping: /usr/bin/ping /bin/ping /usr/share/man/man8/ping.8.gz

استفاده از دستور apropos

دستور apropos در لینوکس برای جستجو کردن در فایل های راهنما یا Manual ها است. خروجی دستور apropos ممکن است بسته به دستوری که شما می خواهید از آن خروجی بگیرید کوتاه یا زیاد باشد. دستور apropos به شما هر فایل manual ای که چیزی در مورد دستور مورد نظر شما در آن وجود داشته باشد را برای شما لیست می کند. برای مثال برای دستور ping برای شما هر فایل manual ای که در کل سیستم چیزی در مورد ping در آن آمده باشد را لیست می کند.

همانطور که در خروجی apropos ping مشاهده می کنید ، هر فایل Manual ای که در آن اسمی از ping آورده شود برای شما لیست می شود. نکته مهم در خصوص خروجی دستور apropos این است که بصورت پیشفرض هر چیزی که شامل متن دستور ما باشد را نمایش می دهد. برای مثال اگر شما apropos ping را بزنید هر Manual ای که در آن کلمه ping باشد را نمایش می دهد. مثلا در خروجی دستور بالا همانطور که مشاهده می کنید کلمه mapping که هیچ ارتباطی به دستور ping ندارد هم در خروجی نمایش داده شده است.

استفاده از دستور man

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

  • NAME
  • SYNOPSE
  • DESCRIPTION
  • OPTIONS
  • EXIT STATUS
  • RETURN VALUES
  • ERRORS
  • FILES
  • VERSIONS
  • EXAMPLES
  • AUTHORS
  • SEE ALSO

برنامه نویسی که می خواهد یک فایل manual ایجاد کند باید این ترتیب و این قالب نگارش را برای manual خود رعایت کند. در ادامه مثال هایی برای دستور man را برای شما آورده ایم :

tosinso-suse:~ #man ls
tosinso-suse:~ #man –k ( apropos )
tosinso-suse:~ #man –k ping 
tosinso-suse:~ #man echo
tosinso-suse:~ #man ping

به غیر از دستور man –k ping که معادل دستور apropos ping است ، سایر دستوراتی که در بالا گفتیم برای شما فایل Manual دستور مورد نظر را باز می کنند تا از داخل آن بتوانید دستور مورد نظر را با مثال یاد بگیرید. اما فایل های man دارای یک قالب برای درک بهتر نحوه نگارش دستورات هستند که در در خصوص آنها صحبت می کنیم :

  • متن برجسته : دقیقا به همین شکل باید وارد شود
  • متن کج شده یا ایتالیک : با یک آرگومان باید جایگزین شود
  • حروف داخل براکت [-abc] : آرگومان ها بصورت انتخابی هستند ( Optional )
  • استفاده از پایپ بین آرگومان ها یا مثلا –a|-b : نمی توانند در کنار هم استفاده شوند

ستفاده از دستور info

با توجه به اینکه مکانیزم کاری دستور man و قالبی که دارد برای سیستم عامل unix قدیمی است و خیلی از محدودیت هایی که این روزها مستندات ندارند را دارد ، یک سیستم جدید مشاهده و مدیریت مستندات راهنمای نرم افزارها به نام صفحات اطلاعات یا info page به دستورات لینوکس اضافه شد.

در واقع دستور info خلاها و مشکلاتی که در دستور man بود را پوشش داده است. از مهمترین تفاوت های man و info می توان به امکان استفاده از Hyperlink در راهنما و همچنین استفاده از Node ها برای بالا و پایین رفتن در راهنماها نام برد. فایل های info در قالب Node ها و Level ها طبقه بندی و سازمان دهی می شوند و بسیار برای خواندن مرتب و منظم هستند.

چیزی شبیه به EBook هایی که میخوانیم.برخی از دستورات لینوکس فاقد صفحات Manual هستند و یا صفحات ناقصی دارند. دستور info که مشخصا مخفف دستور information یا اطلاعات است اطلاعات به مراتب تر و تمیزتری به نسبت دستور man در اختیار شما قرار می دهد. به جای صفحات man یا در کنار انها صفحات مستندات یا Documents هم وجود دارند.

دستور info خروجی اطلاعات مستندات را به شکلی روان و ساده با قابلیت لینک سازی بین صفحات به شما ارائه می دهد. دستور info در واقع قالب نمایشی خاص خودش را دارد و به سادگی در نمایش اطلاعات معروف است. این دستور محبوبیت دستور man را ندارد اما از نظر من بسیار جذابتر از man است.

توجه کنید که در بسیاری اوقات ممکن است خروجی دستور info با خروجی دستور man تفاوتی نداشته باشد ، چون فایل منبع یکسان است. اما امکان کلیک کردن بر روی سکشن های مختلف راهنما از جمله تغییراتی است که در قالب خروجی دستور info وجود دارد. نحوه استفاده از دستور info بسیار ساده است. همانند دستور زیر کافیست ابتدا کلمه info و سپس نام دستور مورد نظر را وارد کنید :

unity@tosinso-suse:~> info ping
  • use arrow keys move up and down
  • select links and go to the bottom of the page
  • Press Enter and go to the expert node
  • Press U browser up one level
  • Browse to Advanced Node
  • Press N to next mode
  • Press Q to Quit

استفاده از دستور help

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

  • help –d = خلاصه توضیحات دستور
  • help –m = اطلاعاتی که وجود داره رو تقریبا شبیه خروجی دستور man نشون میده
  • help –s = ساختار یا syntax انجام دستور رو می نویسه
tosinso-suse:~ # help –d pwd
tosinso-suse:~ # help –m pwd
tosinso-suse:~ # help –s pwd

توجه کنید که ممکن است برخی دستورات اصلا ماهیت help را نداشته باشند ، برای مثال echo –help قابل اجرا نیست یا در برخی توزیع ها اطلاعاتی در این بخش قرار ندارد.

استفاده از دستور less

دستور less را می توان یک دستور تقریبا قدیمی و تا حدودی منسوخ شده در لینوکس برای استفاده در راهنما استفاده کرد. این دستور این روزها کمتر بصورت مستقیم استفاده می شود و درون دستور man مورد استفاده قرار می گیرد. به زبان ساده تر دستور man از برنامه less برای نمایش دادن محتویات اطلاعات خودش استفاده می کند.

این دستور less است که درون دستور man قرار گرفته است و امکان حرکت کردن شما درون یک فایل مستند و راهنما را می دهد. بد نیست بدانید در قدیم دستوری به نام more وجود داشت که این روزها دیگر چنین چیزی کمتر در توزیع های جدید لینوکس دیده می شود. less جایگزین more شده است با امکانات بیشتر !!! دستور less به شما امکان مشاهده یک صفحه در لحظه را می دهد. به مثال زیر توجه کنید :

tosinso-suse:~ # man less
  • ( Space = Next Page )
  • ( Up Key = One Line Up )
  • ( ESC+V = One Page Up )
  • ( SHIFT+G = End of manual page )
  • ( G = Start of the manual page )
  • ( type /OPTIONS = locate options section )
  • ( N = Next Next till the result )
  • ( Q = Quit less )

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

unity@tosinso-ubuntu: cd /usr/share/doc/python
unity@tosinso-ubuntu: cat python-policy-dbk.gz
unity@tosinso-ubuntu: less  python-policy-dbk.gz

دایرکتوری های /usr/doc و /usr/share/doc حاوی مستدات مربوط به هر برنامه هستند که شما با دستورهای ادیتورها نمی توانید محتویات فایلهای zip شده را مشاهده کنید. اما همانطور که در مثال بالا مشاهده کردید ، شما می توانید با استفاده از دستور less محتویات فایل های zip مربوط به راهنماها را نیز باز کنید. امیدوارم این مقاله مورد توجه شما عزیزان قرار گرفته باشد.

بازدید : 27
سه شنبه 12 فروردين 1404 زمان : 15:39

یادگیری ماشین با نظارت | Supervised Machine Learning نوعی یادگیری است که در آن ماشین یا مدل با استفاده از داده های آموزشی (دارای برچسب صحیح) آموزش داده می شود تا بتواند برای داده های تستی یا جدید، فرایند تشخیص برچسب (تشخیص خروجی یا پیش بینی خروجی) را انجام دهند. منظور از داده های دارای برچسب این است که برخی از داده های ورودی قبلاً با خروجی صحیح برچسب گذاری شده اند.

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

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

هدف یک الگوریتم یادگیری با نظارت، یافتن یک تابع نگاشت برای ترسیم متغیر ورودی (x) با متغیر خروجی (y) است یا نگاشت یک سوال به یک پاسخ صحیح می باشد.

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

یادگیری با نظارت | Supervised Machine Learning چگونه کار می کند

در یادگیری نظارت شده | Supervised Machine Learning، مدل‌ها با استفاده از مجموعه داده‌های برچسب‌گذاری شده آموزش داده می‌شوند، پس از تکمیل فرآیند آموزش، مدل بر اساس داده های آزمون دارای برچسب واقعی (زیرمجموعه ای از مجموعه داده) آزمایش می شود تا برای آن ها خروجی صحیح را پیش بینی کند. اگر خروجی بدست امده شده مانند خروجی واقعی داده های آزمون باشد می توانیم بگیم مدل ما از دقت خوبی برخوردار است و می تواند در کسب و کار به منظور افزایش سود دهی از آن استفاده کرد در غیر اینصورت باید به فکر چاره در فرآیند کار بود.

فرض کنید مجموعه داده ای از انواع مختلف اشکال داریم که شامل مربع، مستطیل، مثلث و چند ضلعی است. اکنون اولین قدم این است که باید مدل را برای هر شکل آموزش دهیم.

  • اگر شکل داده شده چهار ضلع داشته باشد و همه اضلاع آن برابر باشند، آن را به عنوان مربع علامت گذاری می کنیم .
  • اگر شکل داده شده دارای سه ضلع باشد، به عنوان یک مثلث علامت گذاری می شود .
  • اگر شکل داده شده شش ضلع مساوی داشته باشد، به عنوان شش ضلعی علامت گذاری می شود .

حالا بعد از گام آموزش، مدل خود را با استفاده از مجموعه تست ( آزمایش )، تست (ارزیابی) می کنیم تا ببینیم برای شکل های تستی به درستی فرایند تشخیص نوع شکل را با توجه به تعداد اضلاع آن، انجام می دهد یا خیر.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

مراحل مربوط به یادگیری با نظارت:

  • ابتدا یک مجموعه داده یا دیتاست انتخاب می کنیم.
  • سپس مجموعه داده را به مجموعه داده آموزشی (75 درصد داده ها) و مجموعه داده آزمایشی (25 درصد داده ها) تقسیم کنید.
  • ویژگی های ورودی مجموعه داده آموزشی را تعیین کنید، که باید دانش کافی داشته باشد تا مدل بتواند خروجی را از طریق آن ها به طور دقیق پیش بینی کند.
  • یک الگوریتم یادگیری ماشین از نوع با نظارت (مانند ماشین بردار پشتیبان، درخت تصمیم) را با توجه به ساختار داده های آموزشی و آزمایشی انتخاب می کنیم
  • الگوریتم را روی مجموعه داده آموزشی اجرا کنید تا مدل آموزش دیده ساخته شود.
  • با ارائه مجموعه تست، دقت مدل ساخته شده از مرجله قبل را ارزیابی می کنیم.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

انواع الگوریتم های یادگیری ماشینی تحت نظارت

رگرسیون

اگر رابطه ای (مثل رابطه افزایشی یا کاهشی) بین متغیر ورودی (ویژگی ها) و متغیر خروجی (برچسب) وجود داشته باشد از الگوریتم های رگرسیون استفاده می شود. از این نوع الگوریتم ها برای پیش‌بینی متغیرهای پیوسته، مانند پیش‌بینی آب‌وهوا، روند بازار، و غیره استفاده می‌شود. در ادامه انواع الگوریتم های رگرسیون ذکر شده است.

  • رگرسیون خطی
  • درختان رگرسیون
  • رگرسیون غیر خطی
  • رگرسیون خطی بیزی
  • رگرسیون چند جمله ای

دسته بندی

از الگوریتم‌های دسته بندی زمانی استفاده می‌شوند که متغیر خروجی از نوع طبقه بندی ( Categorical ) باشد یا بتوان آن را به این نوع تبدیل کرد، به این معنی که متغیر خروجی از نوع دو کلاسه مانند بله-نه، مذکر-مونث، درست-کاذب و غیره وجود باشد. در ادامه انواع الگوریتم های دسته بندی لیست شده اند.

  • جنگل تصادفی | Random Forest
  • درخت تصمیم
  • رگرسیون لجستیک
  • ماشین بردار پشتیبان | SVM

مزایای یادگیری با نظارت

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

معایب یادگیری با نظارت

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

بازدید : 29
سه شنبه 12 فروردين 1404 زمان : 15:37

دوره آموزش نتورک پلاس چیست؟ دوره نتورک پلاس برای چه کسانی طراحی شده است؟ آیا دوره Network Plus یک دوره عمومی شبکه است؟ پاسخ همه این سوالات و 20 نکته دیگر درباره دوره آموزشی نتورک پلاس را در این مقاله به دست خواهید آورد. دوره نتورک پلاس ( Network+ ) دریچه ورود شما به دنیای فناوری اطلاعات است. شاید اکثر جاهایی که این سوال پرسیده می شود که مدرک نتورک پلاس چیست؟ پاسخ آن به این شکل مطرح می شود که نتورک پلاس مبانی و مفاهیم اولیه شبکه برای ورود به دنیای شبکه های کامپیوتری است و اولین قدم در یادگیری شبکه های کامپیوتری و آموزش شبکه است.

این جمله اشتباه نیست همه همه مطلب را نمی رساند . زمانیکه در خصوص گواهینامه بین المللی CompTIA Network+ صحبت می کنیم در واقع ما در خصوص اولین قدم برای ورود به دنیای شبکه های کامپیوتری ( مایکروسافت ، سیسکو ، مجازی سازی ، میکروتیک و ... ) ، اولین قدم در ورود به دنیای اینترنت اشیاء ، اولین قدم برای ورود به دنیای امنیت اطلاعات ، اولین قدم در ورود به دنیای هک و نفوذ و به زبان ساده تر اولین قدم برای ورود به هر حوزه ای در خصوص فناوری اطلاعات صحبت می کنیم.

بنابراین دوره Network+ یکی از مهمترین ، پر چالش ترین و پر مفهوم ترین دوره های آموزشی شبکه و فناوری اطلاعات است که شما را انواع تکنولوژی های شبکه ، زیرساختی ، نرم افزاری ، امنیتی ، مدیریتی و ... آشنا می کند و تعریف دوره مبانی شبکه اصلا برازنده نتورک پلاس نیست.

کامپتیا یا CompTIA مخفف کلمه های Computing Technology Industry Association است و یک مرکز عام المنفعه آمریکایی است که وظیفه صادر کردن گواهینامه های خاص حوزه فناوری اطلاعات را بر عهده دارد. از کامپتیا به عنوان محبوب ترین مرکز صدور گواهینامه های فناوری اطلاعات که اکثر شرکت ها و ارگان های بزرگ آن را به عنوان پیشنیاز تخصص های خودشان قبول دارند نام برده می شود.

دوره آموزشی نتورک پلاس CompTIA Network+

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

نتورک پلاس ( Network+ Plus ) چیست؟ تعریف نتورک پلاس از نظر CompTIA

CompTIA Network+ به توسعه شغل و موقعیت کاری شما در حوزه زیرساخت فناوری اطلاعات کمک می کند تا بتوانید تنظیمات ، مدیریت و رفع اشکال شبکه های کامپیوتری را بهتر و اصولی تر انجام دهید. دریافت گواهینامه نتورک پلاس به این معنی است که شما دانش فنی لازم برای نگهداری و امن سازی اولیه شبکه های کامپیوتری را دارا هستید.
بر خلاف بیشتر گواهینامه های شبکه و فناوری اطلاعات که بصورت ویژه برای یک شرکت یا محصول در بحث شبکه و زیرساخت طراحی شده اند ، دوره نتورک پلاس یک دوره در اصطلاح فارغ از وابستگی به سیستم عامل ، سخت افزار و یا محصول خاص یا Vendor Less است .

دوره آموزشی نتورک پلاس CompTIA Network+

کامپتیا نتورک پلاس به شما کمک می کند که هر شبکه ای ، با هر سیستم عاملی و هر نوع زیرساختی را مدیریت ، نگهداری و پشتیبانی کنید. CompTIA Network Plus تنها دوره ای است که تمامی مهارت های مورد نیاز یک متخصص شبکه را پوشش می دهد.

سایر گواهینامه های مرتبط با شبکه در دنیا به گستردگی و وسعت نتورک پلاس نیستند و مفاهیم به مراتب کمتری را در مباحث تئوری دنبال می کنند. روشهای یادگیری نتورک پلاس در دنیا متنوع است ، از کلاسهای حضوری چند ماهه گرفته تا کلاسهای حضوری کمپی ، کلاسهای آنلاین ، دوره های آموزشی ویدیویی و ... همگی روشهایی برای یادگیری دوره نتورک پلاس هستند. در حال حاضر نسخه نتورک پلاس موجود در وب سایت کامپتیا N10-007 است که به زودی به نسخه N10-008 به روز رسانی خواهد شد.

نتورك پلاس ( Network + plus ) چيست؟‌ به ساده ترین تعریف ممکن

همانطور که شما برای ورود به دنیای کامپیوتر نیاز به یادگیری مهارت های اولیه یا همان ICDL کامپیوتر دارید ، یا همانطور که برای اینکه بتوانید یک پزشک خوب باشید باید بدن انسان را به خوبی بشناسید و اعضای بدن و مکانیزم کاری بدن و سیستم گردش خون و ... را به خوبی درک کنید و سپس ابتدا تبدیل به یک پزشک عمومی و کم کم تبدیل به یک پزشک متخصص می شوید.

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

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

یک مثال عملی از کاربرد نتورک پلاس در دنیای واقعی می توانید ارائه کنید؟

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

نکته اینجاست که اساس کار پروتکل ها و استاندارد ها و مفاهیم زیرساختی آنها یکسان است و در همه سیستم عامل ها مفهوم رکورد ، Zone ، Lookup ، Cache و ... که از واژه های تخصصی سرویس DNS هستند ، یکسان هستند و شما فقط باید روش پیاده سازی را که یا گرافیکی است یا از طریق دستورات یاد بگیرید.

اگر شما در دوره نتورک پلاس این مفاهیم را به خوبی یاد گرفته باشید هیچ مشکلی در راه اندازی نخواهید داشت

و در عین حال در زمان بروز مشکل می توانید مسئله را به درستی حل و مشکل را حل کنید. ( الان درگیر سرویس DNS و واژه هایش نشوید ، این صرفا یک مثال بود )برای مطالعه مقاله به سایت مراجعه کنید.

بازدید : 23
سه شنبه 12 فروردين 1404 زمان : 15:36

یکی از مهمترین پارمترهای کلیدی برای تبدیل شدن به یک دانشمند بزرگ داده | data scientist ، تمرین با انواع مختلف مجموعه داده | دیتاست می باشد. اما به راحتی نمی توان یک مجموعه داده مناسب برای یک پروژه و نوع الگوریتم انتخابی یادگیری ماشین | ML انتخاب کرد، بنابراین در ادامه این مبحث، به شما آموزش خواهیم داد که از طریق چه منابعی می توانید به راحتی مجموعه داده هایی را مطابق با پروژه خود تهیه کنید.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

قبل از ذکر منابع مجموعه داده‌های یادگیری ماشین، ابتدا مفهموم مجموعه‌ داده را مورد بحث قرار می دهیم.

مجموعه داده | Dataset چیست؟

مجموعه داده | دیتاست، در واقع مجموعه ای از داده ها است که در آن داده ها به ترتیبی مرتب شده اند. یک مجموعه داده می تواند یک آرایه یا یک جدول از پایگاه داده باشد. جدول زیر نمونه ای از یک مجموعه داده را نشان می دهد که شامل 6 سطر و چهار ستون یا ویژگی کشور، سن، حقوق و خرید می باشد.

یک مجموعه داده را می توان به عنوان یک جدول یا ماتریس پایگاه داده درک کرد که در آن هر ستون در واقع یک متغیر یا ویژگی نامید. بیشترین نوع فایل پشتیبانی شده برای مجموعه داده های جدولی "فایل جدا شده با کاما" یا CSV است.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد.

انواع داده ها در مجموعه داده

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

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

نیاز به مجموعه داده

برای کار با پروژه های یادگیری ماشین | machine learning، به حجم عظیمی از داده نیاز داریم، زیرا بدون داده، نمی توان مدل های ML/AI را آموزش داد. جمع آوری و آماده سازی مجموعه داده | دیتاست یکی از مهم ترین بخش ها در هنگام ایجاد یک پروژه ML/AI است. اگر مجموعه داده به خوبی آماده و از قبل پردازش نشده باشد، فناوری به کار رفته در پشت هر پروژه ML نمی تواند به درستی کار کند و دقت خروجی کمتری خواهد داشت. در طول توسعه پروژه ML، توسعه دهندگان کاملاً به مجموعه داده ها متکی هستند. در ساخت برنامه های ML، مجموعه داده ها به دو بخش تقسیم می شوند:

  • مجموعه داده های آموزشی : با استفاده از این مجموعه داده مدل یادگیری ماشین | machine learning مورد نظر را آموزش می دهیم.
  • مجموعه داده تست : با استفاده از این مجموعه داده مدل یادگیری ماشین | ML آموزش دیده را مورد ارزیابی قرار می دهیم.

توجه: مجموعه داده ها حجم بالایی دارند، بنابراین برای دانلود این مجموعه داده ها باید اینترنت پرسرعتی در رایانه خود داشته باشید.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

بهترین منابع برای دانلود مجموعه داده

در ادامه منابعی معرفی می شود که مجموعه داده های آن به صورت رایگان برای عموم در دسترس می باشد.

Kaggle Datasets

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

مخزن یادگیری ماشین UCI

مخزن یادگیری ماشین UCI یکی از منابع عالی مجموعه داده های یادگیری ماشین برای کاربردهای مختلف ( دسته بندی، رگرسیون، خوشه بندی و ... ) است که از سال 1987، به طور گسترده توسط دانشجویان، اساتید، محققان به عنوان منبع اصلی مجموعه داده های یادگیری ماشین استفاده شده است. از جمله مجموعه‌های داده محبوب آن عبارتند از مجموعه داده‌های Iris، مجموعه داده ارزیابی خودرو، مجموعه داده‌های دستی پوکر که برای آموزش الگوریتم های مختلف یادگیری ماشین از آن استفاده می شود.

مجموعه داده AWS

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

موتور جستجوی مجموعه داده های گوگل

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

مجموعه داده Scikit-Learn

Scikit-learn یک کتابخانه یادگیری ماشین برای زبان برنامه نویسی پایتون می باشد که علاوه بر ارائه الگوریتم های مختلف یادگیر ماشین و پردازش امکان دسترسی به یکسری مجموعه داده را برای دانشمندان داده ممکن می سازد.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد.

یکی از مهمترین پارمترهای کلیدی برای تبدیل شدن به یک دانشمند بزرگ داده | data scientist ، تمرین با انواع مختلف مجموعه داده | دیتاست می باشد. اما به راحتی نمی توان یک مجموعه داده مناسب برای یک پروژه و نوع الگوریتم انتخابی یادگیری ماشین | ML انتخاب کرد، بنابراین در ادامه این مبحث، به شما آموزش خواهیم داد که از طریق چه منابعی می توانید به راحتی مجموعه داده هایی را مطابق با پروژه خود تهیه کنید.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

قبل از ذکر منابع مجموعه داده‌های یادگیری ماشین، ابتدا مفهموم مجموعه‌ داده را مورد بحث قرار می دهیم.

مجموعه داده | Dataset چیست؟

مجموعه داده | دیتاست، در واقع مجموعه ای از داده ها است که در آن داده ها به ترتیبی مرتب شده اند. یک مجموعه داده می تواند یک آرایه یا یک جدول از پایگاه داده باشد. جدول زیر نمونه ای از یک مجموعه داده را نشان می دهد که شامل 6 سطر و چهار ستون یا ویژگی کشور، سن، حقوق و خرید می باشد.

یک مجموعه داده را می توان به عنوان یک جدول یا ماتریس پایگاه داده درک کرد که در آن هر ستون در واقع یک متغیر یا ویژگی نامید. بیشترین نوع فایل پشتیبانی شده برای مجموعه داده های جدولی "فایل جدا شده با کاما" یا CSV است.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد.

انواع داده ها در مجموعه داده

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

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

نیاز به مجموعه داده

برای کار با پروژه های یادگیری ماشین | machine learning، به حجم عظیمی از داده نیاز داریم، زیرا بدون داده، نمی توان مدل های ML/AI را آموزش داد. جمع آوری و آماده سازی مجموعه داده | دیتاست یکی از مهم ترین بخش ها در هنگام ایجاد یک پروژه ML/AI است. اگر مجموعه داده به خوبی آماده و از قبل پردازش نشده باشد، فناوری به کار رفته در پشت هر پروژه ML نمی تواند به درستی کار کند و دقت خروجی کمتری خواهد داشت. در طول توسعه پروژه ML، توسعه دهندگان کاملاً به مجموعه داده ها متکی هستند. در ساخت برنامه های ML، مجموعه داده ها به دو بخش تقسیم می شوند:

  • مجموعه داده های آموزشی : با استفاده از این مجموعه داده مدل یادگیری ماشین | machine learning مورد نظر را آموزش می دهیم.
  • مجموعه داده تست : با استفاده از این مجموعه داده مدل یادگیری ماشین | ML آموزش دیده را مورد ارزیابی قرار می دهیم.

توجه: مجموعه داده ها حجم بالایی دارند، بنابراین برای دانلود این مجموعه داده ها باید اینترنت پرسرعتی در رایانه خود داشته باشید.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

بهترین منابع برای دانلود مجموعه داده

در ادامه منابعی معرفی می شود که مجموعه داده های آن به صورت رایگان برای عموم در دسترس می باشد.

Kaggle Datasets

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

مخزن یادگیری ماشین UCI

مخزن یادگیری ماشین UCI یکی از منابع عالی مجموعه داده های یادگیری ماشین برای کاربردهای مختلف ( دسته بندی، رگرسیون، خوشه بندی و ... ) است که از سال 1987، به طور گسترده توسط دانشجویان، اساتید، محققان به عنوان منبع اصلی مجموعه داده های یادگیری ماشین استفاده شده است. از جمله مجموعه‌های داده محبوب آن عبارتند از مجموعه داده‌های Iris، مجموعه داده ارزیابی خودرو، مجموعه داده‌های دستی پوکر که برای آموزش الگوریتم های مختلف یادگیری ماشین از آن استفاده می شود.

مجموعه داده AWS

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

موتور جستجوی مجموعه داده های گوگل

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

مجموعه داده Scikit-Learn

Scikit-learn یک کتابخانه یادگیری ماشین برای زبان برنامه نویسی پایتون می باشد که علاوه بر ارائه الگوریتم های مختلف یادگیر ماشین و پردازش امکان دسترسی به یکسری مجموعه داده را برای دانشمندان داده ممکن می سازد.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد.

بازدید : 21
سه شنبه 12 فروردين 1404 زمان : 15:36

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

وب هکینگ چیست؟ معرفی تخصص تست نفوذ وب یا Web Hacking

تست نفوذ وب و Web Application یا همان وب هکینگ قانونمند یکی از پرطرفدارترین و پر مخاطب ترین حوزه های امنیت ، Security و تست نفوذ می باشد. حوزه امنیت و Security نیز مانند سایر حوزه های تخصصی IT به شاخه های مختلفی تقسیم می شود. به عنوان مثال 3 شاخه کلی برای حوزه امنیت متصور می باشد که شامل :

  1. Network Pentest
  2. Web Application Pentest
  3. جرم یابی سایبری | فارنزیکس (Forensics) می باشد

اما بسیاری از دانشجویان و علاقه مندان به حوزه امنیت و Security شاخه دوم یعنی Web Application Pentest | Web server Pentest | وب هکینگ قانونمند را انتخاب می کنند .

مهمترین دلایل ورود به دنیای وب هکینگ یا تست نفوذ وب چیست؟

  1. امروزه همه شرکت ها ، ارگان ها و سازمان ها دارای وب سایت و Web application ها با ساختار Web server و Android و سایر تکنولوژی های وب نوظهور می باشند. بنابراین با توجه به حساس بودن و محرمانه بودن و حیاتی بودن دیتا ها و اطلاعات خود شرکت ها و کاربران آنها دراین ساختار ، ارزیابی و تست نفوذ وب و وب اپلیکیشن ها مورد نیاز می باشد. و این خود باعث ایجاد فرصت و بازار کاری بزرگ با درامد عالی برای علاقه مندان به شاخه تست نفوذ وب و وب هکینگ (Web hacking) می شود.
  2. وجود ارتباط و وابستگی منظم بین مباحث و مفاهیم حوزه تست نفوذ وب و Web hacking باعث افزایش قدرت یادگیری و علاقه مندی کاربران و دانشجویان این حوزه می گردد.
  3. رشد روز افزون ساختار ها ، ابزار ها و تکنولوژی های حوزه وب و همچنین به موازات آن رشد تهدیدات سایبری این حوزه ، نیاز به داشتن تخصص تست نفوذ وب و سامانه های وب و Web application ها هر روز بیشتر احساس می گردد.

نقشه راه دوره های آموزشی هک وب یا وب هکینگ ( آموزش هک وب )

با توجه به اهمیت شاخه تست نفوذ وب و با توجه به دلایل مذکور فوق ، یکی از دغدغه ها و فکر مشغولی های دانشجویان و کاربران این حوزه ، داشتن مسیر راه ، Road Map و انتخاب درست چگونگی یادگیری تخصصی این شاخه می باشد. تقریبا تمامی کمپانی ها و شرکت های ارائه دهنده دوره های امنیت، کتاب هایی در حوزه تست نفوذ وب و Web Application را ارائه داده اند.

اما قوی ترین و حرفه ای ترین کمپانی که به صورت کامل ، حرفه ای و جامع ، از مقدماتی تا حرفه ای( تخصصی) ، مرحله به مرحله و همچنین به صورت کاملا عملی و لابراتوار محور شاخه تست نفوذ وب و Web Application را تدریس نموده است کمپانی و شرکت SANS می باشد. این شرکت 2 دوره به نام های SANS 542 و SANS 642 را در حوزه تست نفوذ وب به دنیا معرفی نموده است .

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

دوره آموزشی هک وب | SANS SEC542 چیست؟

دوره sans 542 | دوره GWAP (GIAC Web Application Penetration Tester) یا دوره Web hacking | وب هکینگ | Web Pentest کامل ترین دوره تست نفوذ وب (Web Application Pentest) می باشد . این دوره متعلق به کمپانی SANS بوده و در این دوره انواع حملات و آسیب پذیری های وب به صورت مقدماتی تا حرفه ای به صورت عملی (Labs) آموزش داده خواهد شد .

دوره sans 542 (GWAPT) به افراد و دانشجویان این توانایی را خواهد داد که پس از گذراندن این دوره به صورت عملی و براساس Lab های طراحی شده ، انواع معماری و ساختار وب ،آسیب پذیری های وب سایت ها و Web Apllication ها را شناسایی و تحلیل نموده ، هچینین در این دوره افراد توانایی Exploit کردن و اکسپلویت نویسی آسیب پذیری های تحت وب به زبان هابی javaScript , Python و php را خواهد داشت .

این دوره جزء دوره های تخصصی حوزه امنیت محسوب می شود و به صورت کاملا حرفه ای برای افرادی که قصد شرکت در پروژه های تست نفوذ وب و سامانه ها و Application های وب را دارند بسیار مناسب می باشد . حتی برنامه نویسان تحت وب می توانند از این دوره برای کد نویسی امن و Secure استفاده نمایند.

وره آموزشی هک وب پیشرفته | SANS SEC 642 چیست؟

دوره sans 642 | Advanced WebApp Penetration testing | دوره تست نفوذ پیشرفته وب | وب هکینگ پیشرفته ، پیشرفته ترین و حرفه ای ترین دوره تست نفوذ پیشرفته وب و Web application ها می باشد.این دوره متعلق به کمپانی sans بوده و در این دوره علاوه بر ارائه تکنیک های پیشرفته حملات و تست نفوذ های دوره sans 542 ، تست نفوذ و هک جدیدترین ساختار ها و تکنولوژی های وب مانند : NoSqlinjection بر روی دیتا بیس های غیر رابطه ای ، انواع حملات NodeJs ، آسیب پذیری SSTI ، CSRF پیشرفته با Ajax ، CMS Hacking ، WebSocket Hacking ، PHP unserialize attack ، انواع کرک های پیشرفته ترافیک های رمز شده در وب شامل ECB , CBC , Padding Oracel ، Bypass کردن WAF و IPS ، PHP Juggling و آسیب پذیری های پیشرفته logical و خیلی دیگر از حملات و آسیب پذیری های نوظهور ارائه می شود.

این دوره قوی ترین و پیشرفته ترین دوره تست نفوذ و هک وب در دنیا محسوب می شود و جزء دوره های تخصصی حوزه امنیت محسوب می شود که می توان گفت این دوره دوره سنگینی می باشد که حتما دانشجویان می بایست دوره Sans 542 یعنی دوره مقدماتی این دوره را پشت سر گذاشته باشند.

مزایای دوره SANS 542 و SANS 642 مهندس محمدی

  1. ارائه کامل ، جامع تمامی مفاهیم و سرفصل های دوره sans 542 و sans 642 به ساده ترین شکل ممکن به زبان فارسی
  2. ارائه مطالب و مفاهیم بیشتر از کتاب به صورت عملی و تئوری و مرتبط با سرفصل های این 2 کتاب
  3. آموزش و ارائه چگونگی ایجاد و راه اندازی لابراتوار و Web application های آسیب پذیر در راستای انجام و اجرای CTF های در نظر گرفته شده توسط کتاب
  4. پشتیبانی کامل و مستمر توسط مدرس دوره
  5. آموزش و ایجاد آمادگی صد در صد دانشجو برای شرکت در بازار کار واقعی و دریافت انواع پروژه های تست نفوذ وب ، وب سایت و Web application ها
  6. امکان تهیه دوره و به صرفه بودن از لحاظ اقتصادی با توجه به قیمت مناسب این دوره در مقایسه با دوره ها حضوری معادل همین دوره ها و با در نظر گرفتن محدودیت های بیان شده در خصوص دوره های حضوری

راهنما و مسیر یادگیری دوره های آموزش هک وب مهندس محمدی

دانشجویان علاقه مند به شاخه تست نفوذ وب و وبسایت ها می بایست به ترتیب دوره های زیر را پشت سر بگذرانند.

1- پیشنهاد می گردد اگر دانشجویان اطلاعاتی کلی و عمومی در حوزه امنیت را ندارند و به تازگی وارد این حوزه شده اند و یا اینکه به عنوان مثال دوره های مقدماتی امنیت و همتراز انها مانند Security + | سکیوریتی پلاس را پشت سر نگذاشته اند ، حتما دوره Security plus | سکیوریتی پلاس را پاس نمایند و یا اینکه خودشان مفاهیم کلی و عمومی امنیت را مطالعه نماید.

2- در مرحله دوم دانشجویان می بایست دوره SANS 542 ارائه شده توسط مهندس محمدی در وب سایت توسینسو را تهیه و مطالعه نموده و حتما لابراتورا ها و CTF های در نظر گرفته شده برای این دوره را انجام دهند.

3- در مرحله سوم دانشجویان می باست دوره SANS 642 ارائه شده توسط مهندس محمدی در وب سایت توسینسو را تهیه و مطالعه نموده و حتما لابراتوارها و CTF های در نظر گرفته شده برای این دوره را انجام دهند.

4- در مرحله سوم دوره DVWA ارائه شده توسط مهندس محمدی در وب سایت را تهیه و مطلالعه نمایند چرا که مفاهیم و سرفصل های ارائه شده در این دوره بسیار کاربردی و مهم می باشد.

بازدید : 22
سه شنبه 12 فروردين 1404 زمان : 15:35

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

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

بازدید : 24
سه شنبه 12 فروردين 1404 زمان : 15:34

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

یادگیری ماشین بدون نظارت چیست؟

همانطور که از نام این نوع یادگیری پیداست، یادگیری بدون نظارت | Unsupervised Machine Learning یک تکنیک یادگیری ماشین است که در آن مدل‌ها با استفاده از مجموعه داده‌های آموزشی نظارت نمی‌شوند (یعنی از مجموعه داده دارای برچسب آموزش نمی بینند). در عوض، مدل‌ها می توانند یکسری الگوها و بینش‌های پنهان را از دل مجموعه داده ها پیدا ‌کنند.

می توان یادگیری بدون نظارت را اینگونه نیز تعریف کرد:

یادگیری بدون نظارت نوعی از یادگیری ماشینی است که در آن مدل‌ها با استفاده از مجموعه داده‌های بدون برچسب آموزش داده می‌شوند و اجازه دارند بدون هیچ نظارتی بر روی آن داده‌ها عمل کنند.

در دوره آموزشی جامع علم داده مدرس کاظم تقندیکی تمام A-Z علم داده (یادگیری ماشین، داده کاوی) را به شکل کاملاً عملی و با زبانی ساده به شما آموزش می دهد

یادگیری بدون نظارت | Unsupervised Machine Learning را نمی توان مستقیماً برای حل یک مسئله رگرسیون یا دسته بندی نیز استفاده کرد زیرا برای حل این نوع مسائل ما نیاز به مجموعه داده ای داریم که دارای ویژگی برچسب باشد، لذا برای حل این نوع مسائل باید از الگوریتم های یادگیری بانظارت استفاده کرد. هدف از یادگیری بدون نظارت، یافتن ساختار زیربنایی مجموعه داده، گروه بندی آن داده ها بر اساس شباهت ها و نمایش آن مجموعه داده در یک قالب فشرده است .

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

چرا باید از یادگیری بدون نظارت استفاده کنیم؟

مهمترین عواملی که استفاده از الگوریتم یادگیری بدون نظارت را در صنایع مهم دانسته است عبارتند از:

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

نحوه کار الگوریتم های یادگیری بدون نظارت :

نحوه کار الگوریتم های یادگیری بدون نظارت را می توان با تصویر زیر درک کرد:

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

انواع الگوریتم یادگیری بدون نظارت:

الگوریتم های یادگیری بدون نظارت | Unsupervised Machine Learning را می توان به دو دسته تقسیم کرد:

  • الگوریتم های خوشه‌بندی | Clustering : خوشه‌بندی روشی است برای قراردادن اشیاء در یکسری خوشه‌ها، به‌گونه‌ای که اشیای (داده های) داخل یک خوشه بیشترین شباهت را با یکدیگر و کمترین شباهت را با اشیای سایر خوشه ها دارند.
  • الگوریتم های قواعد انجمنی | Association rule : از این نوع الگوریتم ها برای تحلیل سبد خرید یک فروشگاه استفاده می شود به عنوان مثال با استفاده از این نوع الگوریتم ها می توانیم رابطه خرید بین محصولات یک فروشگاه را درک کنیم، یکی از این نوع قواعد می تواند به این شکل تفسیر شود. آقای رضاییان با ضریب اطمینان 90 درصد موقع خرید پنیر، محصول دیگری با نام نان نیز خریده است.

الگوریتم های یادگیری بدون نظارت:

برخی از الگوریتم های یادگیری بدون نظارت | Unsupervised Machine Learning نیز در زیر لیست شده است:

  • خوشه بندی سلسله مراتبی
  • خوشه بندی K-means
  • خوشه بندی مبتنی بر چگالی
  • K نزدیکترین همسایه
  • تشخیص ناهنجاری
  • شبکه های عصبی
  • الگوریتم Apriori

مزایای یادگیری بدون نظارت

  • یادگیری بدون نظارت | Unsupervised Machine Learning در مقایسه با یادگیری نظارت شده برای کارهای پیچیده‌تر استفاده می‌شود، زیرا در یادگیری بدون نظارت، داده‌های ورودی برچسب‌دار نداریم.

معایب یادگیری بدون نظارت

  • یادگیری بدون نظارت ذاتاً دشوارتر از یادگیری تحت نظارت است زیرا داده های ورودی دارای هیچ گونه برچسبی نیز نمی باشد.
  • نتیجه عملکردی الگوریتم های یادگیری بدون نظارت ممکن است دقت کمتری داشته باشد زیرا داده‌های ورودی برچسب‌گذاری نمی‌شوند و الگوریتم‌ها خروجی دقیق را از قبل نمی‌دانند و آموزش داده نشده اند.

بازدید : 30
سه شنبه 12 فروردين 1404 زمان : 15:33

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

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

سوال اول : چگونه کدنویسی را شروع کنیم؟

برای شروع برنامه نویسی ابتدا باید بدانید برای چه چیزی می خواهید برنامه نویس شوید و هدفتان چیست؟ سپس یک زبان برنامه نویسی برای شروع یادگیری را انتخاب می کنید. در دوره های آموزش برنامه نویسی آنلاین شرکت می کنید. آموزشهای ویدیویی متنوع را یاد می گیرید ، کتاب می خواهید و از ابزارهای کدنویسی سریع برای افزایش خلاقیت و سرعت کدنویسی استفاده می کنید و در نهایت با نگاه کردن به نمونه کدهای برنامه نویسی سایر برنامه نویس ها شروع یا انجام پروژه های برنامه نویسی می کنید.

سوال دوم : برنامه نویسی دسکتاپ را از کجا شروع کنیم؟

برنامه نویسی دسکتاپ به معنی برنامه نویسی برای سیستم عامل هایی است که بصورت رومیزی استفاده می شوند. برای مثال نوشتن برنامه ای که روی کامپیوتر شخصی شما ( PC ) یا لپتاپ با هر نوع سیستم عاملی اعم از ویندوز یا لینوکس یا مکینتاش اجرا می شود ، یک برنامه دسکتاپی به حساب می آیند که بازار کار بسیار خوبی دارد.

از مهمترین زبان های برنامه نویسی که بصورت تخصصی و به بهترین شکل به شما کمک می کنند می توانیم به زبان برنامه نویسی جاوا و زبان برنامه نویسی سی شارپ اشاره کنیم. برای شروع یادگیری آموزش جاوا می توانید به این لینک مراجعه کنید.

سوال سوم : برنامه نویسی وب را از کجا شروع کنیم؟

هر وب سایت که به آن مراجعه می کنید با یک زبان برنامه نویسی نوشته شده است. این زبان برنامه نویسی انواع و اقسام مختلفی دارد که مهمترین زبان های برنامه نویسی وب به ترتیب زبان PHP و زبان ASP.NET هستند. سایر زبان های برنامه نویسی وب به محبوبیت زبانهای برنامه نویسی پی اچ پی و ای اس پی دات نت نیستند.

یکی از مزایای برنامه نویسی وب ، امکان کار کردن بصورت فریلنسری و دورکاری است که به همین دلیل یکی از محبوب ترین زبان های برنامه نویسی وب به حساب می آیند. برای شروع یادگیری و آموزش PHP ( پی اچ پی ) می توانید به این لینک مراجعه کنید.

سوال چهارم : برنامه نویسی موبایل را از کجا شروع کنیم؟

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

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

سوال پنجم : جایگاه زبان پایتون در برنامه نویسی چیست؟

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

حتی افرادیکه در حوزه های تخصصی غیر از برنامه نویسی مثل شبکه و امنیت هم فعالیت می کنند می توانند برای نوشتن اسکریپت های کاربردی از پایتون استفاده کنند. پایتون برای نوشتن برنامه های مختلف برای پلتفرم های مختلف از به اصطلاح ماژول های مختلفی استفاده می کند . برای مثال برای نوشتن برنامه های تحت وب یا وب سایت به زبان پایتون از پلتفرمی به نام جنگو استفاده می شود. شما می توانید برای دسترسی به دوره آموزش جنگو Django به این لینک مراجعه کنید.

سوال ششم : دوره های آموزش برنامه نویسی را از کجا شروع کنیم؟

به شخصه اعتقاد دارم که برنامه نویسی یک هنر است . یک برنامه نویس با درک کردن ماهیت و مفهوم و استدلال برنامه نویسی می تواند به هر زبانی برنامه بنویسد. زبان برنامه نویسی صرفا یک ابزار است و این شما هستید که تعیین می کنید بهترین زبان چیست و چه چیزی باید به چه شکل نوشته شود.

اما برای افراد تازه کار پیشنهادات مختلفی وجود دارد. معمولا برای شروع برنامه نویسی شما با یک دوره پایتون یا دوره ای که مفاهیم اولیه برنامه نویسی را به شما آموزش بدهد شروع می کنید و در ادامه به زبان های قوی تری مثل سی شارپ یا جاوا می رسید.

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

سوال هفتم : آیا نیاز به یادگیری زبان برنامه نویسی C یا C++ وجود دارد؟

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

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

بازدید : 28
سه شنبه 12 فروردين 1404 زمان : 15:33

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

نوع 1 : NetBIOS Enumeration چیست؟

اولین نوع از انواع Enumeration از طریق سرویس NetBIOS انجام می شود. اولین گامی که یک مهاجم برای Enumeration از یک سیستم ویندوزی برمی دارد سوء استفاده کردن از NetBIOS API است. همانطور که به عنوان یک متخصص امنیت می دانید NetBIOS مخفف کلمه های Network Basic Input Output System است و توسط شرکت IBM با همکاری شرکت های Sytek طراحی و تولید شده است.

  • بیشتر بخوانید : آموزش Enumeration و تکنیک های دریافت اطلاعات از هدف نفوذ

در واقع NetBIOS به عنوان یک API یا Application Programming Interface برای فراهم کردن دسترسی ساده تر به منابع شبکه مورد استفاده قرار می گرفت و بر همین مبنا برای استفاده در شبکه های داخلی LAN ساخته شد. ساختار نامگذاری NetBIOS با استفاده از یک رشته کاراکتر ASCII انجام می شود که هر دستگاه در شبکه بعد از گرفتن آدرس IP از آن استفاده می کند ، 15 کاراکتر ابتدای آن برای نامگذاری دستگاه و شانزدهیم کاراکتر به عنوان رکورد نام یا سرویس استفاده می شود. مهاجمین از NetBIOS برای Enumerate کردن موارد زیر استفاده می کنند :

  • بدست آوردن لیست کامپیوترهای شبکه که دارای منابع به اشتراک گذاری شده هستند
  • بدست آوردن Policy های اعمال شده در شبکه به همراه برخی پسوردها

اگر مهاجم سیستم عامل ویندوزی را پیدا کند که شماره پورت 139 آن باز باشد ، می تواند بررسی کند که آیا منابعی بر روی آن سیستم وجود دارند که بتوانیم آن را مشاهده و یا بعضا به آنها دسترسی داشته باشیم یا خیر ، البته به این موضوع توجه کنید که برای اینکه Enumerate شدن از طریق NetBIOS به درستی انجام شود مهم است که سرویس file and printer sharing فعال شده باشد.

با استفاده از تکنیک های زیر مهاجم می تواند به منابعی که بر روی سرور هدف وجود دارد دسترسی پیدا کند ، دو حمله کلی در این نوع Enumeration وجود دارد ، یا مهاجم دسترسی Read و Write بدست می آورد یا اینکه می تواند حمله Denial Of Service یا تکذیب سرویس بر روی سیستم هدف انجام دهد . در Enumerate کردن سرویس NetBIOS شما Code های مختلفی را باید بدانید ، با بازگشت داده شدن هر یک از این کدها شما می توانید متوجه شوید که چه سرویسی بر روی سرور هدف وجود دارند ، به این کدها در اصطلاح Suffix هم گفته می شود برای مثال :

  1. کد 00 مربوط به نام کامپیوتر یا Hostname مقصد است

  2. کد 01 مربوط به نام دومین یا Domain Name مقصد است

  3. کد 03 مشخص کنند این است که سرویس Messenger در سیستم مقصد فعال است

  4. کد 20 به معنی فعال بودن سرویس Server در مقصد است

  5. کد 1D به معنی Browser Name کامپیوتر مقصد است

  6. کد 1B به معنی تایم سرور یا PDC سرور کامپیوتر مقصد است

  7. ...

به این نکته توجه کنید که در IPv6 دیگر چیزی به نام NetBIOS وجود ندارد و این سرویس به کلی فعال نیست.

NetBIOS Enumeration چیست

نوع 2 : LDAP Enumeration چیست؟

یکی از پرکاربردترین پروتکل های مورد استفاده در شبکه که امکان Enumeration را به ما می دهد LDAP است. LDAP مخفف کلمه های Lightweight Directory Access Protocol می باشد و این پروتکل در بزرگترین پایگاه داده های نگهداری و مجتمع سازی Object های شبکه مثل اکتیودایرکتوری مورد استفاده قرار می گیرد. LDAP یک پایگاه داده است و این پایگاه داده قابلیت پرسش و پاسخ یا Query گرفتن دارد.

می توان با استفاده از این روش دسترسی به داده های موجود در پایگاه داده دست پیدا کرد. ساختار دایرکتوری سرویس ها در دنیا یک ساختار استاندارد و سلسله مراتبی است و مثل ساختارهای سازمانی است که در اکثر شرکت ها و سازمان ها مشاهه می کنید. LDAP یکی از سرویس هایی است که قابلیت یکپارچه شدن با سرویس DNS و انجام Query های اسم خیلی سریع را دارد. LDAP بصورت معمول بر روی پورت 389 کار می کند و امکان Query گرفتن از خودش را بصورت پیشفرض ارائه می دهد .

LDAP Enumeration چیست

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

LDAP Enumeration در واقع به فرآیندی گفته می شود که شما به عنوان یک مهاجم می توانید اطلاعات مربوط به username ها و ... را راه دور دریافت کنید . شما می توانید در شبکه های مبتنی بر اکتیودایرکتوری قابلیت Enumeration را غیرفعال کنید ، این قابلیت به مهاجم امکان Cache کردن اطلاعات بسیاری را بر روی سیستم خودش می دهد. اطلاعات مربوط به کاربران ، گروه ها ، share های شبکه ، ایمیل ها ، آدرس ها ، شماره تلفن ها و ... از این طریق قابل دسترس هستند.

نوع 3 : Email Enumeration چیست؟

بصورت معمول هر آدرس ایمیل از دو قسمت تشکیل شده است ، قسمت اول که نام کاربری یا Username است و قسمت دوم که نام دومین یا Domain Name است. در واقع همانطور که می دانید ساختار یک آدرس ایمیل بصورت username@domainname.com است .

Email Enumeration چیست

تصور کنید که یک آدرس ایمیل به شکل m.nasiri@tosinso.com داریم در این ساختار مشخص است که m.nasiri یک نام کاربری و domainname.com آدرس دومین مورد استفاده است که با علامت @ از هم جدا شده اند. بعضا با استفاده از این ساختار می توان به نام کاربری های داخلی شبکه نیز پی برد و ساختار نامگذاری username ها را حدس زد. شما با استفاده از گرفتن اطلاعات کاربران می توانید ساختار ایمیل های هر کاربر در سازمان را تشخیص بدهید.

نوع 4 : Default Password Enumeration چیست؟

تجهیزاتی مثل سویچ و روتر و Access Point ها و حتی برخی نرم افزارها بصورت پیشفرض دارای پسورد هستند که این پسورد معمولا در هر نوع محصول تقریبا مشابه است. حتی بعضا برخی نرم افزارهای آنلاین نیز برای ایجاد دسترسی های پیشفرض از یک سری Username و Password پیشفرض استفاده می کنند. در بسیاری اوقات پیش می آید که کاربران بدون توجه به اینکه بایستی این رمزعبورها تغییر کند از همان رمز عبور پیشفرض نرم افزار بصورت همیشگی استفاده کرده و آنها را تغییر نمی دهند.

انواع Enumeration و پسوردهای پیشفرض

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

فراموش نکنید که حتما برای نرم افزارها و سخت افزارهای خود بلافاصله بعد از پیکربندی اولیه پسورد و نام کاربری متفاوتی از آنچه پیشفرض استفاده می شده است استفاده کنید. برای مثال چند نفر از شما پسورد و نام کاربری روتر خانگی خودش را Admin و Admin همچنان نگه داشته است و توجهی به تغییر دادن آن نکرده است ؟

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

http://www.defaultpassword.com/
https://cirt.net/passwords
http://www.routerpasswords.com/

نوع 5 : SMTP Enumeration چیست؟

قطعا می دانید که سرویس SMTP کاربرد ارسال ایمیل را بر عهده دارد و اگر این سرویس به درستی پیکربندی نشده باشد به دستوراتی که از طریق خط فرمان یا نرم افزارهای مربوطه ارسال می شوند پاسخ هایی می دهد که می تواند در فرآیند Enumeration مورد استفاده قرار بگیرند. EMTP Enumeration به شما اجازه می دهد که کاربران معتبر بر روی SMTP سرور را شناسایی کنید. اینکار با استفاده از دستورات Built-In ای که درون سرویس SMTP قرار گرفته اند امکانپذیر است. این سه دستور به شرح زیر هستند :

  1. دستور VRFY : این دستور برای بررسی اعتبار کاربران یا در اصطلاح بررسی Validity کاربران استفاده می شود
  2. دستور EXPN : این دستور برای بررسی آدرس های Delivery و همچنین لیست ایمیل ها استفاده می شود
  3. دستور RCPT TO : این دستور دریافت کنندگان یک پیام را تعریف می کند

STMP سرورهای مختلف بصورت متفاوتی اعتبار یا عدم اعتبار هر کدام از این دستورات پاسخ می دهند بنابراین با تجزیه و تحلیل کردن خروجی این دستورات می توان براحتی کاربران معتبر بر روی آن SMPT سرور را شناسایی کرد. همچنین مهاجم می تواند بصورت مستقیم با خود SMTP سرور نیز ارتباط بگیرد و دستورات را با استفاده از Telnet بر روی سرور مورد نظر ارسال کند که معمولا به شکل زیر انجام می شود ، برای مثال دستور زیر استفاده از SMTP VRFY با استفاده از Telnet بر روی یک SMTP سرور را نشان می دهد :

$ telnet 10.1.1.1
Trying 10.1.1.1
Connected to 10.1.1.1
Escape character ‘^]’.
220 NYmailserver ESMTP Sendmail 8.9.3
HEO
501 HELO requires domain address
HELO x
250 NYmailserver Hello [10.0.0.86] , please to meet you
VRFY Mohammad
250
Super-User 
VRFY Hossein
550 Hossein… User unknown

انواع Enumeration و SMTP Enumeration چیست

حالا همان حالت را با دستور SMTP EPN تست می کنیم :

$ telnet 10.1.1.1
Trying 10.1.1.1…
Connected to 10.1.1.1.
Escape character is ‘^]’.
220 NYmailserver ESMTP Sendmail 8.9.3
HELO
501 HELO requires domain address
HELO x
250 NYmailserver Hello [10.0.0.86] , please to meet you
EXPN Mohammad
550 Super-User 
EXPN Hossein
550 Hossein… User unknown

و در نهایت مثالی از خروجی دستور SMTP RCPT TO با استفاده از Telnet :

$ telnet 10.1.1.1
Trying 10.1.1.1 …
Connected to 1.1.1.1.
Escape character is ’^]’.
220 NYmailserver ESMTP Sendmail 8.9.3
HELO
501 HELO requires domain address
HELO x
250 NYmailserver Hello [10.0.0.86], pleased to meet you
MAIL FROM:Mohammad
250 Mohammad… Sender ok
RCPT TO:Ali
250 Ali…Recipient ok
RCPT TO:Hossein
550 Hossein… User unknown

نوع 6 : SNMP Enumeration چیست؟

قطعا اگر این مطلب را در مورد هک و امنیت مطالعه می کنید با کاربرد پروتکل SNMP آشنایی دارید اما بصورت خلاصه SNMP یک پروتکل لایه Application است که بصورت UDP کار کرده و برای مدیریت و نگهداری تجهیزاتی مثل روتر ، سویچ ، فایروال ، UPS و تجهیزاتی از این قبیل مورد استفاده قرار می گیرد.

SNMP دارای یک سری Agent می باشد که بر روی سخت افزارهایی که در شبکه مبتنی بر پروتکل IP فعالیت می کنند فعال شده و اجرا می شود ، طبیعتا چنین Agent هایی برای سیستم عامل های ویندوز و خانواده لینوکس نیز طراحی و وجود دارند و این پروتکل منحصر به استفاده در تجهیزات نمی باشد.

انواع Enumeration و SNMP Enumeration چیست

بر اساس تعاریفی که تا کنون از فرآیند Enumeration در هک قانونمند داشته ایم تعریف واژه SNMP Enumeration بدست آوردن اطلاعات حسابهای کاربری و تجهیزات و و حتی Process هایی است که بر روی کامپیوتر هدف وجود دارند ، می باشد. دو نوع جزء نرم افزاری در زمانیکه شما با استفاده از پروتکل SNMP ارتباط برقرار می کنید بکار گرفته می شوند که اولین جزء SNMP Agent و دومین آن SNMP Management Station می باشد.

  • بیشتر بخوانید : شناخت 4 روش مقابله با حمله Enumeration در هک و نفوذ

SNMP Agent در واقع قسمتی از این پروتکل است که بر روی سخت افزارها و سیستم عامل ها فعالیت می کند و گزارش ها را دریافت و ارسال می کند و SNMP Management Station جزئی است که اطلاعات را از Agent دریافت و به کاربر نمایش می دهد ، به زبان ساده Station همان نرم افزار مانیتورینگی است که شما در شبکه معمولا استفاده می کنید.

تقریبا همه دستگاه ها و تجهیزاتی که در شبکه های امروزی مورد استفاده قرار می گیرند از SNMP پشتیبانی می کنند و دارای SNMP Agent می باشند و به همین طریق قابل مدیریت و نظارت توسط SNMP Management Station می باشند. مکانیزم کاری بسیار ساده است ، SNMP Management Station درخواست خودش را به سمت دستگاهی که SNMP Agent دارد ارسال می کند و دستگاه بعد از پردازش درخواست توسط SNMP Agent پاسخ مناسب را به سمت Management Station ارسال می کند. هم درخواست ها و هم پاسخ ها در واقع تنظیماتی هستند که بر روی نرم افزار Agent انجام می دهیم.

البته در نظر داشته باشید که برخی متغیرها توسط SNMP Management station قابل تغییر هستند و پیکربندی می شوند. تقریبا هر اتفاق یا رویدادی که بر روی SNMP Agent رخ بدهد برای Management Station ارسال می شود از کوچکترین خطاهای سیستمی گرفته تا Reboot شدن سیستم یا هر اتفاق دیگر به اطلاع سیستم مدیریتی و نظارتی SNMP می رسد. SNMP دارای دو پسورد است که ما آنها را به نام Community String می شناسیم و هر دوی آنها می توانند هم برای دسترسی و هم برای انجام تغییرات بر روی SNMP Agent مورد استفاده قرار بگیرند ، این پسوردها به عنوان Read Community و Read//Write Community شناسایی می شوند.

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

اما Read//Write Community String همانطور که مجددا از نامش پیداست هم قابلیت های Read Community String را دارد و هم این امکان را دارد که تغییراتی را بر روی سیستم Agent اعمال کند . معمولا از Read Community به عنوان رشته عمومی یا Public و از Read//Write Community به عنوان رشته خصوصی یا Private نام برده می شود.

در بیشتر موارد به دلیل سهل انگاری مدیرهای شبکه Community String ها بعد از فعال سازی این سرویس تغییر نمی کنند و بصورت پیشفرض وجود دارند و در اصطلاح فنی Default Password هستند. در اینجاست که مهاجمین می توانند با استفاده از این آسیب پذیری و اتصال به سیستم ها اطلاعات بسیار مفید و کاربردی از سیستم هدف به دست بیاورند که در فرآیند Enumeration می تواند بسیار موثر باشد.

اگر سهل انگاری مدیر تا حدی باشد که پسورد Read//Write Community را نیز بصورت پیشفرض فعال کرده باشد این احتمال برای مهاجم وجود دارد که حتی بتواند پیکربندی سیستم مورد نظر را نیز تغییر بدهد . اطلاعاتی از قبیل تنظیمات و پیکربندی دستگاه ، Share های شبکه ، مسیریاب ها ، منابع شبکه و ... حتی ARP Table و Routing Table و ... در سوء استفاده کردن از این سرویس قابل دستیابی برای مهاجمین می باشد. دسترسی به اطلاعات مربوط به SNMP با استفاده از ابزارهای بسیار زیادی ممکن است که یکی از انها که برای SNMP Enumeration بصورت ویژه مورد استفاده قرار می گیرد SNMPUtil می باشد .

نوع 7 : NTP Enumeration چیست؟

قبل از اینکه در خصوص Enumeration از این سرویس بپردازیم بایستی دقیقا متوجه باشیم که این سرویس چیست و چه کاری انجام می دهد. NTP مخفف کلمه های Network Time Protocol می باشد و سرویسی است که مسئولیت اعلام زمان دقیق برای سیستم ها را بر عهده دارد ، برخی از سرویس های شبکه برای احراز هویت و بسیاری از مسائل دیگر نیاز به این سرویس دارند.

انواع Enumeration و NTP Enumeration چیست

در شبکه های مبتنی بر سیستم عامل ویندوز سرور معمولا سرور Domain Controller اصلی به عنوان NTP شناخته می شود. همانند سرویس SMTP سرویس NTP نیز از آن دسته از سرویس هایی است که بیشتر از 20 سال عمر دارد. در حال حاضر سرورهای بسیاری در دنیا وجود دارند که مسئولیت Time Server در دنیا را بر عهده دارند.

مکانیزم کاری این سرویس بصورت Server و Client است و طبیعی است که سرور می تواند اطلاعاتی از کلاینت هایی که به آن متصل می شوند را در اختیار داشته باشد که در اینجاست که امکان انجام فرآیند NTP Enumeration برای بدست آوردن اطلاعات ممکن است. سرویس NTP بصورت کلی برای برقراری ارتباط از پورت 123 بصورت UDP استفاده می کند.

سرورهای NTP که در اینترنت استفاده می شوند تا 10 میلی ثانیه زمان را می توانند نگهداری کنند اما همین زمان در شبکه های داخلی با توجه به نیاز به دقت بیشتر به 200 میکروثانیه می رسد و دقت به شدت افزایش پیدا می کند. در فرآیند NTP Enumeration شما می توانند لیستی از Host هایی که به NTP متصل شده اند را پیدا کنید و همچنین آدرس های IP ، اسامی سیستم ها ، نوع سیستم عامل های مورد استفاده بر روی سیستم های کلاینت و ... را پیدا کنید. تمامی این اطلاعات با Query گرفتن از NTP ممکن است ، اگر NTP سرور شما در قسمت DMZ شبکه باشد حتی احتمال افشاء شدن آدرس های IP داخلی شما را نیز دارد.

نوع 8 : DNS Enumeration چیست؟

فرآیند DNS Zone Transfer ای که در DNS انجام می شود می تواند بسیار اطلاعات مفیدی در خصوص هدف در اختیار ما قرار بدهد. زمانیکه درخواست Zone Transfer به یک DNS سرور ارسال می شود سرور اگر به درستی پیکربندی نشده باشد اطلاعات کامل رکوردهای DNS خودش را به سمت درخواست کننده ارسال می کند که شامل اطلاعات بسیار خوبی در خصوص سرویس ها و سرورهای موجود در مقصد است. شما می توانید با استفاده از اطلاعاتی که از طریق Zone Transfer بدست می آورید توپولوژی شبکه داخلی و ساختار اصلی شبکه هدف را شناسایی کنید. امیدوارم مورد توجه شما قرار گرفته باشد.

توجه کنید که این ارتباط صرفا بین DNS سرورها انجام می شود. DNS سرورها همیشه برای Zone Transfer از پورت TCP استفاده می کنند. برای اینکه فرآیند DNZ Zone Transfer بین دو یا چند DNS سرور به درستی انجام شود ارتباط بین ZNA سرورها چه مبدا و چه مقصد بایستی با انجام تاییده های TCP یا همان TCP ACK انجام شوند. اگر مهاجمی بتواند یک DNS سرور جعلی راه اندازی کند و درخواست Zone Transfer به DNS سرور واقعی بدهد می تواند اطلاعات بسیار زیادی در خصوص کلیه رکوردهای موجود در DNS سرور در فرآیند Enumeration بدست بیاورد.

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

تعداد صفحات : -1

درباره ما
موضوعات
آمار سایت
  • کل مطالب : 45
  • کل نظرات : 0
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • بازدید امروز : 25
  • بازدید کننده امروز : 0
  • باردید دیروز : 111
  • بازدید کننده دیروز : 0
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 146
  • بازدید ماه : 165
  • بازدید سال : 277
  • بازدید کلی : 2001
  • <
    پیوندهای روزانه
    آرشیو
    اطلاعات کاربری
    نام کاربری :
    رمز عبور :
  • فراموشی رمز عبور؟
  • خبر نامه


    معرفی وبلاگ به یک دوست


    ایمیل شما :

    ایمیل دوست شما :



    کدهای اختصاصی