انواع باگ در وب سایت ها

انواع باگ

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

اشنایی با انواع باگ ها و اسیب پذیری های تحت وب

باگ چیست ؟

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

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

وب اپلیکیشن چیست ؟

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

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

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

انواع باگ ها

باگ SQLI

انواع باگ در وب سایت ها
اشنایی با یکی از مهم ترین انواع باگ SQL Injection

باگ SQLI که مخفف SQL Injection است به معنای تزریق کد های SQL است

که این اسیب پذیری یکی از باگ های خطرناک و بسیار رایج است که باعث می شود نفوذگر به دیتابیس سایت دسترسی پیدا کند و درنهایت به عنوان ادمین سایت لاگین کند و کوئری های خود را در دیتابیس وارد کند که این باگ گستردگی بسیار زیادی دارد و سایت های زیادی همچنان دارای این باگ خطرناک هتسند

منطق این باگ به این صورت است که با استفاده از کوئری مخرب  ,اطلاعات دیتابیس را بیرون می کشند

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

سه متد باگ SQLi

  • union 
  • error
  • blind

بیشتر از روش union البته با توجه به اسیب پذیری استفاده می شود که دراموزش های قبل اموزش هایی مرتبط با روش union قرار داده ایم و می توانید مشاهده نمایید و لازم به ذکر است که روش های باگ sqli گستردگی بسیار زیادی دارد زیرا ممکن است در هر مرحله , فایروال ها ، CDN و … از تزریق کد جلوگیری کنند و باید برای هر مرحله ان به بایپس های مربوطه اگاه و مسلط باشید.

اشنایی بیشتر با SQL Injection

همانطور که از نام ان پیداست مربوط به پایگاه داده است

و این حمله از طریق تزریق کدهای SQL در پایگاه داده از طریق ورودی رخ می دهد.

وجود این باگ در تمامی پایگاه داده ها مانند MariaDB,Microsoft SQL,Oracle,My SQL و … وجود دارد

و این اسیب پذیری هیچ ربطی به ضعف این پایگاه داده ها ندارد بلکه این باگ همان طور که گفته شد توسط اشتباهات برنامه نویس در زبان های PHP , ASP و دیگر زبان های تحت وب و سمت سرور است و گاهی این مشکل با کانفیگ غیر استاندارد سروربیشتر وب سایت را دچار اسیب پذیری میکند و به کاربر اجازه مقدار دهی و اجرا دستورات پایگاه داده را از طریق ورودی می دهد.

اهداف باگ:
اهداف این باگ متفاوت است. وقتی که شما بتوانید دستورات پایگاه داده را از طریق URL اجرا کنید تقریبا
هر کاری میتوانید انجام دهید .سرقت یوزر و پسورد ادمین و کاربران ، سرقت و تغییر تمامی محتوا سایت، دیفیس کردن سایت و …

باگ XSS

باگ XSS یا Cross Site Scripting یک باگ سطح کلاینت است

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

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

و ان  عبارت در سایت چاپ  می شود و هیچ محدودیتی بر روی کارکتر های دیگر اعمال نشده باشد احتمال وجود باگ در سایت وجود دارد اما دقت کنید که فقط یک  احتمال است و این چاپ شدن ممکن است در هرجایی از سایت امکان پذیر باشد  , ممکن است در قسمت اصلی سایت یا حتی در URL یا حتی در Header سایت باشد

آشنایی بیشتر انواع باگ XSS

به تصویر زیر توجه کنید

انواع باگ در وب سایت ها
تست باگ XSS از ورودی جستجو

مشاهده می کنید که عبارت وارد شده در فیلد جستجو در قسمت URL و سورس سایت چاپ شده

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

نکته :

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

باگ LFI

باگ LFI که مخفف local file inclusion است زمانی به وجود می اید که برنامه نویس سایت از تابع هایی مانند include که برای فراخوانی صفحات وب است استفاده کرده باشد و کاراکتر های غیرمجاز ازجمله ( . ) و ( / )   فیلتر نکرده باشد

در این صورت نفوذگر می تواند فایل مهمی همچون فایل :

/etc/passwd/

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

باگ RFI

انواع باگ در وب سایت ها
اشنایی با باگ lfi یکی از اصلی ترین اسیب پذیری ها در انواع باگ ها

این اسیب پذیری یکی دیگر از انواع باگ ها است که مخفف remot file inclusion می باشد

این باگ تقریبا مشابه LFI است با این تفاوت که باگ LFI به صورت محلی و لوکال است

و می توان فایل های مهم را فراخوانی کرد اما باگ RFI به صورت ریموت می باشد

تصور کنید یک صفحه دیفیس یا یک شل اسکریپت را بر روی یک هاست اپلود کرده اید و حال قصد دارید تا ان صفحه مورد نظر که در هاست اپلود کرده اید را بر روی سایتی که باگ RFI دارد اپلود و استفاده کنید و دقت کنید که فایل شما باید حتما پسوند TXT باشد اما نگران نباشید زمانی که فایل را بر روی سایت مورد نظر که باگ RFI دارد اپلود کردید کامپایلرهای HTML و PHP به صورت خودکار صفحه شما را کامپایل کرده و کد را اجرا کرده و نتیجه را به شما نمایش میدهند

برای استفاده از این باگ باید ادرس دقیق اینترنتی صفحه مورد نظر خود را در محل درستی در URL  قرار دهید و سپس Enter کنید اما امکان دارد تا مکانیزم های امنیتی جلوی اپلود شل شما را بگیرند که می توانید به راحتی صفحه دیفیس خود را اپلود کنید پیشنهاد میکنید برای اشنایی بیشتر با این اسیب پذیری اموزش باگ RFI را مشاهده کنید.

باگ RFU یکی دیگر از انواع باگ های مهم

باگ RFU  که مخفف remot file upload می باشد به نفوذگر این اجازه را می دهد تا بتواند فایل های خود را از جمله شل اسکریپت و صفحات دیفیس خود با استفاده از اپلودر اسیب پذیر اپلود کند که البته ممکن است به محدودیت هایی برخورد کند اما می تواند از روش های مختلف برای بایپس ستفاده کند و مکانیزم های امنیتی مانند فایروال را دور بزند

این باگ که به اختصار RFU & RFD   نام دارد به کاربر اجازه آپلود و دانلود فایل را می دهد.
باگ معروف DNN (سیستم مدیرت محتوا مایکروسافت)، از نوع RFU بود.

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

باگ RCE

باگ RCE مخفف remot code execution است که این قابلیت را در اختیار نفوذگر قرار می دهد

تا بتواند دستورات PHP یا دستورات سیستم را در ورودی سایت وارد کند و مستقیم به سرور دسترسی داشته باشد

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

باگ CSRF

انواع باگ در وب سایت ها

CSRF یکی از انواع باگ های مهم و مخفف CROSS SITE REQUEST FORGERIES است

زمانی به وجود می اید که برنامه نویس سایت Session های ایمنی تعریف نکرده باشد و موجب شود تا یک حفره امنیتی بزرگ به وجود بیاید که اکثر سایت ها توانایی ایمن کردن خود در برابر این حفره امنیتی را ندارند به همین دلیل این حفره را ملقب به غول حفره می نامند

این باگ همانند باگ XSS یک باگ سمت کلاینت است و نفوذگر توانایی جعل درخواست را دارد

و می تواند با استفاده از این باگ یک user با سطح دسترسی ادمین برای خود ایجاد کند

باگ Page Admin

با استفاده از این باگ نفوذگر می تواند صفحه ادمین را دور بزند و بدون داشتن نام کاربری و رمز عبور به راحتی وارد پنل مدیریت شود به صورتی که در فیلد نام کاربری و رمز عبور عبارت ‘or”=’ را وارد کرده و به صفحه مدیریت وارد می شود که این مسئله با به اشتباه انداختن دیتابیس به وجود می اید و از زیر مجموعه های باگ SQLi است

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

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

به ان عبارت مقدار (true) داده می شود و ادمین وارد پنل مدیریت می شود

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

زمانی که این کد به دیتابیس فرستاده شد مقدار (true) را دریافت می کند زیرا این کد خود به معنای true است

خلاصه و اشنایی با انواع باگ ها

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

نکته دیگر اینکه باگ ها را بر اساس متد دسته بندی میکنند. برای مثال اگر باگی در WordPress پیدا شود که اجازه دهد نفوذگر دستورات CMD یا Terminal مورد نظر خود را اجرا کند، در اسن صورت اسیب پذیری در زیر دسته باگ RCE قرار میگیرد.

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

پایدار باشید.

4.3/5 (3 نظر)

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

مطالب مرتبط

۱۲ دیدگاه در “انواع باگ در وب سایت ها”

  • پویا شهریور 11, 1398 پاسخ

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

    • Nima Nani مهر 8, 1398 پاسخ

      درود
      بسیار خوشحالیم اموزش برای شما مفید بوده است از نظر خوب شما سپاس گذاریم
      پایدار باشید

  • MMA10 خرداد 22, 1399 پاسخ

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

    • نیما حسینی خرداد 24, 1399 پاسخ

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

  • hamidnaj تیر 24, 1399 پاسخ

    بی نهایت عالی

  • آذر 7, 1399 پاسخ

    ‘or”=’ این باگ دقیقا چجوریه اسمو چی بزنم؟ پسورد چی؟
    اصن این چجوری جلو ادرس باید قرار داد؟

  • رضا دی 7, 1399 پاسخ

    سلام از مطالب اموزنده شما بسیار ممنونم.سوالی داشتم
    یه سایت هست که نظر سنجی گذاشته ودارای باگ هست من می خواستم بدونم چطوری میشه از باگ اون سایت استفاده کرد ویا نرم افزار یا مرور گر خاصی نیست که بتونیم بصورت گسترده رای ثبت کنییم؟

  • nima اسفند 2, 1399 پاسخ

    سلام . ببخشید برای ویروس و تروجان نویسی چه زبانی خوبه؟

    • پن‌تست‌کور اسفند 11, 1399 پاسخ

      درود
      ++C#, C و Python میتوانند بسیار مناسب باشند.

  • amir مهر 14, 1400 پاسخ

    سلام
    من با اسکنر یک باگی از سایتی پیدا کردم به نام
    Cleartext Password over HTTP
    اگه میشه آموزش نفوذ به سایت رو بدهید یا یک لینک سایت یا ویدئو بدهید که در آن آموزش داده باشد
    اما اگه میشه لطفا لطفا فیلم آموزشی اش را بگذارید و لینک ویدئو را به من بدهید

  • babak فروردین 28, 1402 پاسخ

    تو قسمت ورودی عددی یه سایتی یکی بود میتونست بیش از محدودیت سایت عدد وارد کنه .
    به نظرتون از چه روشی استفاده میکرد ؟

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

قوانین پن تست کور
دوره کالی لینوکس
نماد های اعتماد
نماد های اعتماد