رفتن به مطلب
بازگشایی انجمن! ×
GuardIran

درخواست دور زدن یک Input text


پست های پیشنهاد شده

با سلام

ما اینجا یک input text داریم خواستم ببینم امکان دور زدنش هست یا خیر

This is the hidden content, please

 

خب بزارید توضیح بدیم

$mesal همون مقداریه که توی کادر وارد میشه حالا میتونه عدد یا حروف باشه

میخوام یه چیزی باشه که مثلا بتونیم این رو دور بزنیم و به جایی که پسورد عوض بشه در حقیقت Name='Example' بشه 

یه همچین چیزی امکانش هست؟

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر


درود،

بله سورس آسیب پذیر هست،

لطفا هدفتون رو مفهوم تر بیان کنید تا راهنمایی کنیم

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر


ببینید اینجا یک کادری ما داریم که pKey رو تغییر میده

ما میخوایم یه چیزی تو این کادر بنویسیم که در واقع Name تغییر کنه 

مثلا تو کادر بنویسیم 123 پسورد میشه 123

ولی میخوایم که در حقیقت Name بشه 123

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر


درود

 

تارگت کاملا آسیب پذیر است ؛ به دلایل زیر :

 

- هیچ ارزیابی اعتباری روی اطلاعات fetch شده از فرم مربوطه وجود ندارد و اطلاعات آن مستقیما در Query پایگاه داده استفاده شده که این بی احتیاطی موجب آسیب پذیری رایج SQL Injection شده است .

 

- جدا از این مسئله از تابع منسوخ شده PHP به نام mysql_query استفاده شده که رعایت نکردن استاندارد های لازم از دلایل منسوخ شدن همین تابع بوده .

 

راه حل :

 

* ارزیابی اعتبار فرم پیش از استفاده از اطلاعات آن

* استفاده از از توابع و استاندارد های پیشرفته مثل PDO Binding

 

موفق باشید

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر


در 8 دقیقه قبل، R3dC0d3r گفته است :

درود

 

تارگت کاملا آسیب پذیر است ؛ به دلایل زیر :

 

- هیچ ارزیابی اعتباری روی اطلاعات fetch شده از فرم مربوطه وجود ندارد و اطلاعات آن مستقیما در Query پایگاه داده استفاده شده که این بی احتیاطی موجب آسیب پذیری رایج SQL Injection شده است .

 

- جدا از این مسئله از تابع منسوخ شده PHP به نام mysql_query استفاده شده که رعایت نکردن استاندارد های لازم از دلایل منسوخ شدن همین تابع بوده .

 

راه حل :

 

* ارزیابی اعتبار فرم پیش از استفاده از اطلاعات آن

* استفاده از از توابع و استاندارد های پیشرفته مثل PDO Binding

 

موفق باشید

خب عزیز میتونید سورس آسیب پذیر رو بگید ما هم تمرین کنیم رو لوکال هاست؟

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر


سوالی که مطرح هست اینه که متغیر $name جزئی از فرم هست یا خیر ؟

 

- اگر پاسخ بله هست که کاری که باید انجام بشه کاملا مشخص هست !

 

- اگر پاسخ خیر هست و با توجه به اینکه به اساس SQL و SQL Injection آشنایی دارید ادامه این مطلب رو دنبال کنید

 

آسیب پذیری واضح : در 90 درصد مواقع جدول کاربران شامل ستونی به اسم access_level ، user_type و یا غیره هست که بیانگر سطح دسترسی کاربر هست که با تحلیل پایگاه داده میتونید نام ستون رو پیدا کنید ؛ کافیه اون مقدار آپدیت بشه تا یوزر شما سطح دسترسی ادمین بگیره . پس بنا بر فرضیه گفته شده متغیر $mesal باید حاوی رشته زیر باشه :

 

This is the hidden content, please

نکته : این تکنیک فقط در توابع غیر استانداردی مثل mysql_query و در صورتی که کاراکتر ها خنثی نشده باشند جواب خواهد داد ؛ در تکنیک های استانداردی مثل بایندینگ تمامی کاراکتر های موجود در پارامتر های یک فیلد ESCAPE و خنثی شده .

 

عمل غیر ممکن در شرایط موجود  : با توجه به اینکه متغیر mesal وسط رشته query اپدیت هست (قبل از where) و متغیر name (بعد از where) قرار گرفته ، امکان تاثیر گذاری بر روی اون قسمت وجود ندارد .

اما چرا گفته شده غیر ممکن در شرایط موجود ؟ چرا که تابع mysql_query فقط پاسخگوی یک statement بوده و هرگونه تلاش برای ارسال multiple statement به سمت SQL Parser پایگاه داده به وسیله این تابع با خطای php مواجه خواهد شد .

در صورت استفاده از توابعی که از multiple statement پشتیبانی میکنند خیلی راحت میشه به شکل زیر به هدف مورد نظر رسید :

 

This is the hidden content, please

 

در شرایطی که منظور از Name ، فیلد قبل از where clause باشد به راحتی با overwrite کردن آن ، مقدار تغییر خواهد کرد :

 

This is the hidden content, please

 

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر


به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • ایجاد مورد جدید...