شماتیک رمزگذاری در وب (Encoding Schemes)

به نام خدا

در این مطلب آموزشی قصد داریم شما دوستان رو با مبحث مهم رمزگذاری در وب آشنا کنیم.

برنامه های کاربردی تحت وب یا سیستم ها تحت وب، از چندین رمزگذار گوناگون برای ارسال یا دریافت داده ها استفاده میکنند.

در زمان حمله به برنامه های کاربردی وب ، گاهی پیش از ارسال داده ها ممکن است که نیاز به رمزگذاری داده ها داشته باشید ; در ادامه این مطلب با رایج ترین روش های رمزگذاری آشنا خواهید شد.

۱) URL-Encoding :

در این روش از رمزگذاری ، url ها تنها به وسیله مجموعه کاراکتر های ASCII میتوانند روی بستر اینترنت ، فرستاده شوند.

آن دسته از کاراکتر هایی که خارح از مجموعه ASCII هستند را با نماد % به همراه ۲ رقم در مبنای هگزا دسیمال (Hex) جایگزین میکنند

نکته : اگر url هایی حاوی کاراکتر space باشند ، معمولا از نماد (کاراکتر ) + برای نمای این فضای خالی استفاده میشود.

چند نمونه از کاراکتر های مهمی که در url ها رمزگذاری میشوند

  1. ; << %3b

  2. % << %25

  3. = << %3d

یا به فرض :

http://site.com/news.php?id=64%20union%20all%20select%201,2,3,4,5,6,7%23

برای مشاهده کد های بیشتر میتونید به سایت های زیر مراجعه کنید:

http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters

http://en.wikipedia.org/wiki/Percent-encoding

www.tutorialspoint.com/html/html_url_encoding.html

www.rapidtables.com/code/text/ascii-table.html

www.branah.com/ascii-converter www.ascii.cl/htmlcodes.htm

۲) Unicode-Encoding :

این روش یک استاندارد رمزگذاری کاراکتری است که هدفش پشتیبانی از بیشتر زبان های دنیا هست. یونی – کد میتواند توسط رمزگذاری کارکتری گوناگونی پیاده شازی شود. پرکاربرد ترین رمزگذار ها عبارتند از utf-8 و utf-16

۳) Base64-Encoding :

از این روش رمزگذاری بیشتر در مواقعی استفاده میشود که داده ها باینری باشند. معمولا از base64 برای رمزگذاری پیوست های ایمیل ، عکس ها و اعتبار نامه کاربران در احراز هویت عمومی ( برای نمونه : استفاده از مکانیزم Basic )  در پروتکل HTTP استفاده میشود. یکی از روش های تشخیص اینکه آیا از این روش استفاده شده است یا خیر ، نگاه کردن به انتهای فرم رمزگذاری شده و کشف یک تا ۳ کاراکتر = است : برای مثال :

قبل از رمزگذاری :
learn Hack & Security = Netyaran.ir

بعد از رمزگذاری :
bGVhcm4gSGFjayAmIFNlY3VyaXR5ID0gTmV0eWFyYW4uaXI=

۴) HTML-Encoding :

در این روش ، این رمزگذار کاراکتر وبژه ای مانند <،>، & ، ” که در رشته های درون اسناد HTML استفاده میشوند را به اصطلاح

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

قبل رمز گذاری :

<center> netyaran.ir </center>

بعد رمز گذاری :

&lt;center&gt; netyaran.ir &lt;/center&gt;

۵) Hex-Encoding :

در این رمزگذاری برای حملات sqli بسیار استفاده میشود گاهی بین ۲ کاراکتر هگز یک کاراکتر ۰x میبینید که این ۰x بیانگر هگز بودن هست :

قبل از رمزگذاری :

netyaran.ir hack & Security

بعد از رمزگذاری :

۶e6574796172616e2e6972206861636b202620536563757269747920

با ۰x

۰x6e6574796172616e2e6972206861636b202620536563757269747920

روش های پیشرفته تری هم در سال های خیر پیدا شده که با هزینه و با الگوریتم های خاص رمزگذاری انجام میشود

امید واریم این مطلب مفید بوده باشه.

منتظر نظرات شما هستیم

منبع:netyaran.ir

 

همچنین شاید مطالب زیر مورد پسندتان باشد...

افزودن یک دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*