در حال ویرایش تزریق SQL

از Secure Coding

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

این ویرایش را می‌توان خنثی کرد. لطفاً تفاوت زیر را بررسی کنید تا تأیید کنید که این چیزی است که می‌خواهید انجام دهید، سپس تغییرات زیر را ذخیره کنید تا خنثی‌سازی ویرایش را به پایان ببرید.

نسخهٔ فعلی متن شما
سطر ۱: سطر ۱:
 
در این نوع از آسیب پذیری های مهاجم می تواند payload خود را در  قسمت های مختلف برنامه تزریق کند.
 
در این نوع از آسیب پذیری های مهاجم می تواند payload خود را در  قسمت های مختلف برنامه تزریق کند.
 
از انواع آسیب پذیری های injection می توان به تزریق sql و یا تزریق command اشاره کرد.
 
از انواع آسیب پذیری های injection می توان به تزریق sql و یا تزریق command اشاره کرد.
 +
==  تزریق sql ==
 
زبان پرس و جو sql راهی برای مدیریت داده های ذخیره شده در پایگاه داده های رابطه ای است.
 
زبان پرس و جو sql راهی برای مدیریت داده های ذخیره شده در پایگاه داده های رابطه ای است.
 
به این معنا که می توانیم در هر بستری از جمله وب داده هارا ذخیره، ویرایش و یا تغییر دهیم.
 
به این معنا که می توانیم در هر بستری از جمله وب داده هارا ذخیره، ویرایش و یا تغییر دهیم.
سطر ۲۰: سطر ۲۱:
 
حملات sql injection نوع های مختلفی دارد. چون به ازای هر query نوشته شده ممکن است حمله جدیدی رخ دهد.
 
حملات sql injection نوع های مختلفی دارد. چون به ازای هر query نوشته شده ممکن است حمله جدیدی رخ دهد.
 
با این حال به صورت کلی 3 دسته بندی زیر را می توان نام برد.
 
با این حال به صورت کلی 3 دسته بندی زیر را می توان نام برد.
== بر مبنای خطا یا Error Based ==
+
=== بر مبنای خطا یا Error Based ===
  
 
مثال معروفی برای این روش وجود دارد.
 
مثال معروفی برای این روش وجود دارد.
سطر ۷۷: سطر ۷۸:
 
</div>
 
</div>
  
== بر مبنای تاریکی Blind Based ==
+
=== بر مبنای تاریکی Blind Based ===
  
 
شاید اسم این روش عجیب باشد ولی با توجه به الگو "بر مبنای" تاریکی کلمه مناسب و هکر پسندانه تری است!
 
شاید اسم این روش عجیب باشد ولی با توجه به الگو "بر مبنای" تاریکی کلمه مناسب و هکر پسندانه تری است!
سطر ۱۰۳: سطر ۱۰۴:
 
== روش های جلوگیری ==
 
== روش های جلوگیری ==
  
 +
=== کنترل ورودی ها ===
  
=== روش های جلوگیری در زبان PHP ===
+
==== روش های جلوگیری در زبان PHP ====
  
  
سطر ۱۹۹: سطر ۲۰۱:
 
</div>
 
</div>
  
=== روش های جلوگیری در ASP.NET ===
+
==== روش های جلوگیری در ASP.NET ====
  
 
مثال 1)
 
مثال 1)
سطر ۳۳۱: سطر ۳۳۳:
 
</div>
 
</div>
  
=== روش های جلوگیری در زبان Java ===
+
==== روش های جلوگیری در زبان Java ====
  
 
مثال 1)
 
مثال 1)
سطر ۴۱۴: سطر ۴۱۶:
 
</pre>
 
</pre>
 
</div>
 
</div>
 
=== توابع php ===
 
 
از توابعی که می تواند در بروز این آسیب پذیری موثر باشد می توان به
 
 
* mysql_query
 
* mysql_db_query
 
* mysql_unbuffered_query
 
* pg_query
 
* pg_send_query
 
* mssql_query
 
* mysqli_query and mysqli::query
 
* mysqli_real_query and mysqli::real_query
 
* mysqli_multi_query and mysqli::multi_query
 
* mysqli_send_query and mysqli::send_query
 
* PDO::query
 
* PDO::exec
 
* PDO::prepar
 
 
اشاره نمود.
 
  
  
 
[[category:تزریق(Injection)]]
 
[[category:تزریق(Injection)]]

لطفاً توجه داشته‌باشید که همهٔ مشارکت‌ها در Secure Coding ممکن است توسط دیگر مشارکت‌کنندگان تغییر یابند، ویرایش یا حذف شوند. اگر نمی‌خواهید نوشته‌هایتان بی‌رحمانه ویرایش شوند؛ بنابراین، آنها را اینجا ارائه نکنید.
شما همچنین به ما تعهد می‌کنید که خودتان این را نوشته‌اید یا آن را از یک منبع با مالکیت عمومی یا مشابه آزاد آن برداشته‌اید (Secure Coding:حق تکثیر را برای جزئیات بیشتر ببینید). کارهای دارای حق تکثیر را بدون اجازه ارائه نکنید!

لغو راهنمای ویرایش‌کردن (در پنجرهٔ تازه باز می‌شود)