نمایش نتایج 1 تا 14 از 14

نام تاپیک: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

  1. #1

    Question توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

  2. #2

    پست بدون محتوا

    //////////
    آخرین ویرایش به وسیله MostafaEs3 : پنج شنبه 21 بهمن 1395 در 05:24 صبح

  3. #3
    کاربر دائمی آواتار wallfa
    تاریخ عضویت
    بهمن 1388
    محل زندگی
    همدان
    پست
    414

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    یه مقاله به نام هویت سنجی دارم برو بخون به دردت میخوره !
    البته سه قسمت از قسمت اول بخون ! http://www.wallfa.com/

  4. #4

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    یعنی چی نتونه تگهای اسکریپت توی URL قرار بده ؟؟ من منظورت رو درست متوجه نشدم ولی این تابع شاید بدردت بخوره :
    منظورم اینه که کاربر نتونه یه لینک شبیه به لینک زیر ایجاد کنه:
    کد HTML:
    <a href="http://site.com?id=<script>alert('HACK MSG');</script>">click</a>

  5. #5

    پست بدون محتوا

    //////////
    آخرین ویرایش به وسیله MostafaEs3 : پنج شنبه 21 بهمن 1395 در 05:25 صبح

  6. #6

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    می تونی اینو تو htaccess بنویسی

    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]

    با این دستور ما از طریقه apache به سیستم میگیم که هر موقع درخواستی به سمت سرور فرستاده شد اگر در url مودر نظر تگ <script> وجود داشت اون رو خنثی کن و بلاک بشه، توجه کن که این کد به کد‌های درون سیستم (سایت) کاری نداره و فقط روی url تاثیر دارد.

  7. #7

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    الان من کد زیر رو توی لینک گذاشتم ولی صفحه 404 نمایش داده نمی شه. لطفا بگید مشکل از کجاست؟
    http://localhost/photo.php?src=/admin<script>5555555555</script>

    کد htaccess

    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
    RewriteRule ^(.*)$ router.php?id=404 [F,L]

  8. #8

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    فکر نمیکنم htaccess برای این کارها مناسب باشه. یعنی برنامه خودش هست که باید امن نوشته بشه و جلوی این موارد رو بگیره. یعنی ولیدیشن کامل. اگر id قراره عدد باشه خب باید قبل از استفاده بررسی بشه؛ یا درواقع قبل از درج در صفحه. چون این حملات مطابق نمونه ای که گذاشتی در مواردی کار میکنن که اون ورودی (مقدار id) در جایی در کد HTML صفحه درج میشه. اگر id قراره هر شکلی داشته باشه خب باید قبل از استفاده چک بشه و در این زمینه قدرت رگولار اکسپرشن ها رو هم میشه بکار گرفت. اما یک روش ساده تر هم وجود داره:
    echo htmlspecialchars($id, ENT_QUOTES, 'UTF-8');

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

    htmlspecialchars برای موقعی هست که میخوایم ورودی کاربر رو با HTML ترکیب کنیم، همونطور که mysql_real_escape_string برای موقعی هست که میخوایم ورودی کاربر رو با SQL ترکیب کنیم.

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

  9. #9

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    الان مثلا دستورات htaccess هم که گذاشتید جلوی همه چیز رو نمیگیرن.
    مثلا بجای تگ script اگر تگ object بود چی؟
    با تگ object طرف میتونه فایلهای swf و چیزهای دیگری رو در صفحات شما درج کنه.
    یا مثلا با تگ img میتونه تصویر درج کنه.
    این دستورات حتی همون حملات با تگ script رو هم فکر نمیکنم بتونه در تمام شکلها و ترفندها و باگهایی که براش هست جلوگیری کنه. این مسائل خیلی پیچیده تر از این حرفا هستن که صرفا با فیلتر کردن یک شکل خاص و ساده فکر کنید مشکل رفع شده.
    برنامه هایی مثل htmlpurifier بیخودی اونقدر پیچیده و حجیم نیستن. خیلی جزییات و شکلها و تگها و باگها وجود دارن که باید جلوشون گرفته بشه.

    بنابراین بنظر بنده در کد و با روشهای کامل و دقیق کار کنید. چون امکانات و برنامه های موجود در این زمینه رو یا اصلا نمیشه یا به این راحتی نمیشه در htaccess بدست آورد.

  10. #10

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    بنابراین بنظر بنده در کد و با روشهای کامل و دقیق کار کنید. چون امکانات و برنامه های موجود در این زمینه رو یا اصلا نمیشه یا به این راحتی نمیشه در htaccess بدست آورد.
    همه مواردی که گفتید رو استفاده می کنم.
    فقط همین مورد که باقی مونده و باید توی htaccess ّکار ببرم.

  11. #11
    کاربر جدید آواتار dragontools
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    خرم آباد
    سن
    29
    پست
    25

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

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

  12. #12

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    دوستان همه مطالبی که گفتید رو الان انجام می دم. فقط همین روش رو استفاده نکردم.

    لطفا بگید که چطور می شه این کار رو کرد؟

    الان من کد زیر رو توی لینک گذاشتم ولی صفحه 404 نمایش داده نمی شه. لطفا بگید مشکل از کجاست؟
    http://localhost/photo.php?src=/admin<script>5555555555</script>

    کد htaccess

    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
    RewriteRule ^(.*)$ router.php?id=404 [F,L]

  13. #13
    کاربر دائمی آواتار رضا قربانی
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    ܓܨ_| ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ _
    پست
    1,824

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    توی اچ تی اکسس به این صورت گفتید router.php?id ولی موقع آدرس دهی به یک صفحه دیگه آدرس دادید با آدرس گت متفاوت photo.php?src

  14. #14

    نقل قول: توی htaccess چه کدی می تونم استفاده کنم تا کاربر نتونه تگهای <script> رو توی url قرار بده؟

    توی اچ تی اکسس به این صورت گفتید router.php?id ولی موقع آدرس دهی به یک صفحه دیگه آدرس دادید با آدرس گت متفاوت photo.php?src
    در صورتیکه تگ اسکریپت مشهاده بشه htaccess باید کاربر رو به router.php?id که همون صفحه 404 هست بفرسته.

    هنوز دلیل اصلی مشکل رو پیدا نکردم.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •