محمدمهدیـ 122 ارسال شده در فروردین 93 گزارش بازنشر ارسال شده در فروردین 93 SQL injection چیه؟ 1 نقل قول لینک به ارسال
Black_Sky 6349 ارسال شده در فروردین 93 گزارش بازنشر ارسال شده در فروردین 93 یک نوع حمله با استفاده از ارسال یک رشته(String) حاوی کد مخرب به SQL Server Instance می باشد. کد مخرب حاوی یک دستور معتبر SQL است که به طور طبیعی توسط SQL سرور اجرا می شود.فرم اولیه این نوع حمله شامل درج یک دستور SQL در مقادیری است که توسط برنامه از کاربر دریافت می شود. به طور مثال فرض کنید برنامه نام یک طرف حساب را دریافت و لیست سفارشات خرید مربوط به طرف حساب انتخابی را لیست می کند. کد مربوط به تهیه لیست می تواند شبیه به زیر باشد:SELECT * FROM CustomerOrder WHERE CustomerName=’@pUserInput’که @pUserInput پارامتر دریافت شده از کاربر است حال اگر کاربر قصد برنامه ریزی یک حمله را داشته باشد می تواند رشته ای با فرمت زیر را به عنوان نام طرف حساب به برنامه ارائه کند:Mohammad’; DELETE FROM CustomerOrder—دستور SQL که به سرور SQL ارسال می شود به صورت زیر خواهد بود:SELECT * FROM CustomerOrder WHERE CustomerName=’ Mohammad’; DELETE FROM CustomerOrder—ارسال این دستور به SQL سرور حاصلی جز حذف کلیه طرف حسابهای ثبت شده در پایگاه داده نخواهد داشت. توجه داشته باشید که ( به مفهوم پایان یک دستور و شروع یک دستور دیگر بوده و (--) به مفهوم آنست که مابقی عبارت بعد از – برای SQL به منزله کامنت تلقی خواهد شد.جهت جلوگیری از حملات از نوع SQL Injection باید تمامی اطلاعاتی که توسط برنامه از کاربر دریافت می شود به دقت ارزیابی و محتوای مشکوک و مخاطره آمیز پذیرش نشود. رعایت موارد زیر می تواند به طور قابل قبولی از حملات SQL Injection جلوگیری نماید:1- سایز و نوع دیتا دریافتی کنترل و محدودیتهای وابسته به نوع اطلاعات مورد نظر اعمال شود.2- محتوای دیتا کنترل و از پذیرش اطلاعات باینری، کاراکترهای کامنت و ... خودداری شود.3- هیچگاه به طور مستقیم از دیتای وارد شده توسط کاربر دستور SQL ساخته نشود.4- کاراکتر های خاص نظیر ( ,(‘),(--),(xp_),(/* */) در اطلاعات دریافت شده از کاربر پذیرش نشده و یا به نحو مناسب جایگزین شود.5- سایز و نوع پارامترهای وروی SP ها کنترل شود.نکته 1: اطلاعات دریافتی الزام به طور مستقیم از کاربر دریافت نمی شود و می تواند شامل اطلاعاتی باشد که قبلا در جداول پایگاه داده ذخیره شده است.منبع :http://www.payvast.c...cton-چیست؟.aspxجاتون خالی الان چندتایی تارگت توی آشیانه زدم همین sql inject بود 10 نقل قول لینک به ارسال
bmppc2 148 ارسال شده در فروردین 93 گزارش بازنشر ارسال شده در فروردین 93 یک نوع حمله با استفاده از ارسال یک رشته(String) حاوی کد مخرب به SQL Server Instance می باشد. کد مخرب حاوی یک دستور معتبر SQL است که به طور طبیعی توسط SQL سرور اجرا می شود.فرم اولیه این نوع حمله شامل درج یک دستور SQL در مقادیری است که توسط برنامه از کاربر دریافت می شود. به طور مثال فرض کنید برنامه نام یک طرف حساب را دریافت و لیست سفارشات خرید مربوط به طرف حساب انتخابی را لیست می کند. کد مربوط به تهیه لیست می تواند شبیه به زیر باشد:SELECT * FROM CustomerOrder WHERE CustomerName=’@pUserInput’که @pUserInput پارامتر دریافت شده از کاربر است حال اگر کاربر قصد برنامه ریزی یک حمله را داشته باشد می تواند رشته ای با فرمت زیر را به عنوان نام طرف حساب به برنامه ارائه کند:Mohammad’; DELETE FROM CustomerOrder—دستور SQL که به سرور SQL ارسال می شود به صورت زیر خواهد بود:SELECT * FROM CustomerOrder WHERE CustomerName=’ Mohammad’; DELETE FROM CustomerOrder—ارسال این دستور به SQL سرور حاصلی جز حذف کلیه طرف حسابهای ثبت شده در پایگاه داده نخواهد داشت. توجه داشته باشید که ( به مفهوم پایان یک دستور و شروع یک دستور دیگر بوده و (--) به مفهوم آنست که مابقی عبارت بعد از – برای SQL به منزله کامنت تلقی خواهد شد.جهت جلوگیری از حملات از نوع SQL Injection باید تمامی اطلاعاتی که توسط برنامه از کاربر دریافت می شود به دقت ارزیابی و محتوای مشکوک و مخاطره آمیز پذیرش نشود. رعایت موارد زیر می تواند به طور قابل قبولی از حملات SQL Injection جلوگیری نماید:1- سایز و نوع دیتا دریافتی کنترل و محدودیتهای وابسته به نوع اطلاعات مورد نظر اعمال شود.2- محتوای دیتا کنترل و از پذیرش اطلاعات باینری، کاراکترهای کامنت و ... خودداری شود.3- هیچگاه به طور مستقیم از دیتای وارد شده توسط کاربر دستور SQL ساخته نشود.4- کاراکتر های خاص نظیر ( ,(‘),(--),(xp_),(/* */) در اطلاعات دریافت شده از کاربر پذیرش نشده و یا به نحو مناسب جایگزین شود.5- سایز و نوع پارامترهای وروی SP ها کنترل شود.نکته 1: اطلاعات دریافتی الزام به طور مستقیم از کاربر دریافت نمی شود و می تواند شامل اطلاعاتی باشد که قبلا در جداول پایگاه داده ذخیره شده است.جاتون خالی الان چندتایی تارگت توی آشیانه زدم همین sql inject بود منبع :http://www.payvast.c...cton-چیست؟.aspx 1 نقل قول لینک به ارسال
kasra 4929 ارسال شده در فروردین 93 گزارش بازنشر ارسال شده در فروردین 93 تشکر از توضیحاتتونمنبع :http://www.payvast.c...cton-چیست؟.aspxالآن لازم بود شما این پست رو بدید ؟مهم کمک کردن به کاربر هست حالا از هر طریقی میخواد باشه 6 نقل قول لینک به ارسال
bmppc2 148 ارسال شده در اردیبهشت 93 گزارش بازنشر ارسال شده در اردیبهشت 93 الآن لازم بود شما این پست رو بدید ؟مهم کمک کردن به کاربر هست حالا از هر طریقی میخواد باشهخوب اون سایته دوستم بود این همه زحمت کشیدن مطلب گذاشتن باید کپی رایت هم باشهاین همه تو انجمن میگید کپی رایت اما خودتان رعایت نمیکنید؟ نقل قول لینک به ارسال
Black_Sky 6349 ارسال شده در اردیبهشت 93 گزارش بازنشر ارسال شده در اردیبهشت 93 اگر دقت میکردید منبع هم معرفی کرده بودم اما اگر شما در اون لحظه ندیدید و یا ... دلایل زیادی میتونه داشته باشدباز اگر بنده کوتاهی کردن و ندیدم پوزش میطلبم 1 نقل قول لینک به ارسال
bmppc2 148 ارسال شده در اردیبهشت 93 گزارش بازنشر ارسال شده در اردیبهشت 93 (ویرایش شده) الآن لازم بود شما این پست رو بدید ؟مهم کمک کردن به کاربر هست حالا از هر طریقی میخواد باشهشما دیگه چرا آقا کسرا؟ کپی رایت را نباید رعایت کرد؟اگر دقت میکردید منبع هم معرفی کرده بودم اما اگر شما در اون لحظه ندیدید و یا ... دلایل زیادی میتونه داشته باشدباز اگر بنده کوتاهی کردن و ندیدم پوزش میطلبمنبود نگاه کن :البته مهم نیست منبع را نگفتید اما بهتره از شماهائی که مدیر هستید فرهنگ سازی کپی رایت جا بیفته تا همه کپی رایت را رعایت بکنند ویرایش شده اردیبهشت 93 توسط bmppc2 نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .