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

نام تاپیک: پرسش در مورد امنیت در کوری استرینگ

  1. #1

    پرسش در مورد امنیت در کوری استرینگ

    با سلام


    می دونیم که با کوری چون عبارت جستجو شده در آدرس بار نمایش داده می شه یکسری کد نویسی انجام می شه تا کاربر بصورت دستی نتونه یک عبارت نامعتبر رو وارد کنه من یکسری چیز هایی می دونم ولی اگر دوستان کمک کنن و همه ریز کاری های کوری رو یک توضیح بدن یا یک منبع معرفی کنند ممنون می شم.


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


    پرسش سوم هم اینه که وقتی کلمه فارسی "املاک" رو در فایرفاکس با کوری می فرستم فارسی میره ولی وقتی در نتایج یافت شده(لیست ویو) به صفحه دوم می رم بصورت %u0627%u0645%u0644%u0627%u06a9 در میاد البته درست کار می کنه و صفحه دوم رو نشون می ده ولی چرا اینطوری می شه؟


    پیشاپیش سپاس گذاری می کنم

  2. #2
    کاربر دائمی آواتار BookWorm
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    اصفهان
    پست
    103

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    سلام به دوست عزیز
    QueryString یک از روش های انتقال اطلاعات در مسان صفحات وب است سایت شما می تواند از Session هم استفاده کند . بدین روش اعتبار سنجی در انتقال اطلاعات ممکن خواهد بود . در ضمن می توان QueryString را کد گذاری کرد و درباره کلمه "املاک" این وازه در کد utf به وجود آمده است .
    نحوه استفاده از Session هم بصورت زیر است .


    Session["Login"] = "DoLogin";
    Response.Redirect("~/Search.aspx");

    و سپس در صفحه Search مقدار

    if (Session["Login"] == null
    مورد بررسی قرار گیرد .

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

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    بهترین راه برای اینکار کد نویسی کردن کوئری استرینک هست

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

    کد اسکی کاراکتر ها رو عوض کنید دوباره در صفحه دوم به حالت اولیه در بیارین

    خیلی ساده هست

  4. #4
    کاربر تازه وارد آواتار farhadt
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    تهران
    پست
    74

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    نمیدونم این راه حل برای اینکه کلمه جدید مورد قبول نشه خوبه یا نه.

    -بررسی اینکه صفحه ای که این درخواست جستجو رو فرستاده معتبر هست یا نه. مثلا فقط جستجوهایی مورد قبول باشه که فقط از صفحه س جستجو اومده باشه (PostBak). که یه همچین چیزی میشه:


    If Request.UrlReferrer.AbsoluteUri = "http://mysite.com/search.aspx"Then
    Response.Write("ACCEPT")
    Else
    Response.Write("DENY")
    EndIf


    البته جای کار داره هنوز.

  5. #5
    کاربر دائمی آواتار majnun
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    ایران
    سن
    35
    پست
    656

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    میدونم این راه حل برای اینکه کلمه جدید مورد قبول نشه خوبه یا نه.

    -بررسی اینکه صفحه ای که این درخواست جستجو رو فرستاده معتبر هست یا نه. مثلا فقط جستجوهایی مورد قبول باشه که فقط از صفحه س جستجو اومده باشه (PostBak). که یه همچین چیزی میشه:

    کد:
    If Request.UrlReferrer.AbsoluteUri = "http://mysite.com/search.aspx"Then
    Response.Write("ACCEPT")
    Else
    Response.Write("DENY")
    EndIf
    البته جای کار داره هنوز.

    ببشیدا اگه آدرس رو اینجوری داد چی ؟

    test.com/search.aspxid=1;

    برای چند حالت شما میخواین کد بنویسین ؟

    هزار مدل مختلف ممکنه داده بشه

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

    نه اینکه با یه آدرس مقایسه کنیمش

  6. #6
    کاربر تازه وارد آواتار farhadt
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    تهران
    پست
    74

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    نقل قول نوشته شده توسط majnun مشاهده تاپیک
    ببشیدا اگه آدرس رو اینجوری داد چی ؟

    test.com/search.aspxid=1;

    برای چند حالت شما میخواین کد بنویسین ؟

    هزار مدل مختلف ممکنه داده بشه

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

    نه اینکه با یه آدرس مقایسه کنیمش
    والا من که نفهمیدم از چی ایراد گرفتی. اگه منظورت اینه که اگه توی آدرس querystring باشه چیکار کنیم که راه های زیادی داره. یکی اینکه Request.UrlReferrer.AbsoluteUri رو نگیریم، Request.UrlReferrer.AbsolutePath رو بگیریم و باهاش کار کنیم. یا اینکه از Instr و .. که بتونی منحصر به وبسایت خودن بودن رو چک کنی.


    نقل قول نوشته شده توسط majnun مشاهده تاپیک
    برای اینکار باید وقتی بعد از اینکه مقدار را از کوئری استرینگ گرفتین id رو چک کنید ببینید وجود داره یا نه در صورت عدم وجود خطا بده
    اگه درست فهمیده باشم میگی که یه querystring به نام id رو همینجوری بزاریم واسه اینکه بدونیم خودمون فرستادیم. حالا اگه اون کاربر ببو نباشه و اینطوری سرچ کنه چی؟:

    http://mysite.com/search.aspx?id=1&word=myword

  7. #7

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

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

  8. #8
    کاربر دائمی آواتار alonemm
    تاریخ عضویت
    آذر 1388
    محل زندگی
    تهرانپارس
    سن
    35
    پست
    1,846

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

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

    فقط کمی جستجو.

  9. #9
    کاربر تازه وارد آواتار farhadt
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    تهران
    پست
    74

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

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


    IfNot Request.UrlReferrer.Authority IsNothingThen
    If Request.UrlReferrer.Authority = "mysite.com"Then
    Response.Write("Accept")
    Else
    Response.Write("Deny")
    EndIf
    Else
    Response.Write("Deny")
    EndIf


    در هر صورت فقط یه پیشنهاده.

  10. #10

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    نقل قول نوشته شده توسط alonemm مشاهده تاپیک
    بهترین راه برای شما اینکه رشته خودتون رو رمزگزاری کنید.
    در این باره هم کلی مطلب توی این تالار هست.

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

    ممنون می شم

  11. #11
    کاربر دائمی آواتار majnun
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    ایران
    سن
    35
    پست
    656

    نقل قول: پرسش در مورد امنیت در کوری استرینگ


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


    درون تالار C#‎ بگردی کد های زیادی برای رمز نویسی هست

  12. #12

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    ای خدااااااااااااااا
    دوستان حتما تا به حال با کوری کار کردید و یک سری کد نویسی انجام می دید تا امنیت اون رو بالا ببرید من خودم تا به حال برای ارسال اطلاعات با form کار می کردم(چون کمی امن تره) ولی الان به کوری روی اوردم و چیزی در موردش نمی دونم در مورد hash کردن و غیره هم تجربه ایی ندارم یک نمونه عملی و کاربردی برای یک تمام آماتور می خوام.

  13. #13

    نقل قول: پرسش در مورد امنیت در کوری استرینگ

    خوب انگار کسی از دوستان تو عمر با برکتش با کوری کار نکرده!
    من در تمامی تکس باکس ها و همچنین در کوری با وارد کردن عبارت <script> ارور دریافت می کنم و در واقع سیستم اجازه کار به اسکریپتها نمی ده ایا این به این معنیه که سایت من در این زمینه ایمنه؟
    چه عبارت های دیگه وجود داره که می تونم چک کنم(برای حمله به سایتم)
    استفاده از UrlEncode و UrlDecode برای کوری مناسب و کافیه؟

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

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