رفتن به مطلب
انجمن تیم امنیتی گارد ایران

ارسال های توصیه شده

تغییر تاریخچه به روش بین سایتی‌

 

Cross Site History Manipulation ( XSHM )

 

توضیحات XSHM یک SOP (مخفف Same Origin Policy به معنای سیاست های یکسان بودن مبداء و ماهیت) برای تهدیدات امنیتی است.

SOP به عنوان مهمترین مفهوم امنیتی در مرورگرهای جدید است. SOP به این معناست که صفحات وب با مبداء و ماهیت های مختلف در طراحی (مثل تفاوت در پروتکل ها)

نمی توانند با یکدیگر ارتباط برقرار کنند. تهدید XSHM زمانی رخ می دهد که شی Historyی مرورگر در سمت کلینت، بر اساس هر سایت به صورت مناسب جداسازی نشده باشد. دستکاری و تغییر تاریخچه ی مرورگر ممکن است منجر به ایجاد مشکل در SOP شود و برای هکر امکان حمله ی CSRF و سایر اکسپلوییت ها را فراهم سازد.

از قبیل: تجاوز به حریم شخصی کاربری، تشخیص وضعیت لگین، نگاشت منابع، بدست آوردن اطلعات حساس، ردیابی فعالیت های کاربر و دزدیدن پارامترهای URL.

 

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

علوه بر یکپارچگی یا همان Integrity ، محرمانگی یا همان confidentiality نیز مورد حمله قرار می گیرد.

همچنین می توانیم به بازخوردها از مبداء های مختلف دسترسی پیدا کرده و اطلعاتی از سایت های دیگر بدست آوریم

 

مباحث زیر بر اساس حمله ی XSHM بدست می آیند:

* افشای شرط ها به صورت بین سایتی (Cross-site)

* تشخیص لاگین

* تشخیص وضعیت

* بدست آوردن اطلاعات

* ردیابی کاربران به صورت بین سایتی (Cross-site)

* مورد یابی (enumeration) پارامتر/URLها به صورت بین سایتی (  C   ross-site )  

 

افشای شرط ها به چه معناست؟

افشای شرط ها (condition leakage) زمانی رخ می دهد که هکر بتواند به مقادیر حساس موجود در جملت شرطی موجود در برنامه ی مورد حمله دسترسی پیدا کند.

برای مثال اگر یک سایت شامل عبارت منطقی زیر باشد:

Page A: If (CONDITION)
           Redirect(Page 

هکر می تواند CSRF را اجرا کرده و بر اساس بازخورد، به مقادیر موجود در شرط پی برد.

این حمله از طرف سایت هکر انجام می شود و سپس سایت هکر یک درخواست بین سایتی را به سایت قربانی ارسال می کند و با دستکاری شی History

یک بازخورد از اطلعات افشاء شده ی درخواستی از سایت قربانی به دست می آورد.

در مثال بال بیان این نکته ضروری است که می توان دستور redirect در کد را به روشنی ظاهر کرد و یا آن را به وسیله ی عملگرهای محیطی کامل کرد.

 

روند حمله:

۱. ساخت یک IFRAME با آدرس صفحه ی B یعنی src=Page B

۲.مقدار فعلی طول History را به خاطر بسپارید.

src .۳ مربوط به IFRAME را به صفحه ی A تغییر دهید.

۴. اگر مقدار طول History تغییر نکرد، یعنی این که شرط جمله درست (TRUE) بوده است

 

تشخیص لاگین

دموی زیر در صورتی که فردی به وسیله ی IE در فیس بوک لگین کرده باشد، وضعیت او را نمایش می دهد. «آیا من در حال استفاده از فیس بوک هستم؟»

 

بدست آوردن اطلعات بین سایتی

دست یافتن به اطلاعات حساس از روی صفحه ی یک مبداء متفاوت در صورتی که یک شرط برای ریدایرکت پیاده سازی شده باشد، امکان پذیر است: فرض کنید که در یک برنامه ی مدیریت منابع انسانی (HR) که دسترسی به صورت عمومی نیست. یک کاربر قانونی بتواند کارمندان را با استفاده از نام، حقوق یا موارد دیگر جستجو کند. در صورتی که جستجو هیچ نتیجه ای نداشت، برنامه یک فرمان ریدایرکت اجرا کرده و کاربر را به صفحه ی «پیدا نشد» ریدایرکت کند. برای این کار از URL زیر استفاده می کنیم:

?http://Intranet/SearchEmployee.aspx
name=Jon&SalaryFrom=3000&SalaryTo=3500

و هکر با مشاهده ریدایرکت به «پیدا نشد» می تواند به اطلعات حساسی در خصوص حقوق کاربر برسد. روند این حمله به صورت زیر است:

 

۱. یک IFRAME با آدرس NotFound.aspx بسازید.

۲. مقدار فعلی طول Hisory را به خاطر بسارید.

۳. مقدار src در IFRAME را به 

SearchEmployee.aspx?name=Jon&SalaryFrom=3000&SalaryTo=3500

تغییر دهید

 ۴. اگر مقدار طول History ثابت ماند؛ یعنی اینکه جستجو هیچ نتیجه ای نداشته است.

 

با تکرار حمله ی بالا با مقادیر مختلف برای پارامتر حقوق، هکر می تواند به اطلاعات حساسی مثل مقدار حقوق هر کارمند دسترسی پیدا کند.

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

به صورت بالقوه به XSHM آسیب پذیر بوده و خروجی آن در افشاءسازی بسیار شبیه XSS خواهد بود.

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

 

حملت مشابه :

Cross-site Scripting (XSS)

Cross-Site Request Forgery (CSRF)

 

آسیب پذیری های مشابه :

Cross Site Scripting Flaw

 

منابع:

 

Presentation in OWASP Israel Local Chapter Meeting

Cross site history manipulation (XSHM) Guide

Checkmarx identifies new web browser vulnerability, InfoSecurity Magazine

Demo for Internet Explorer users - Am I using Facebook

Wikipedia: Same Origin Policy (SOP)

 

 

 

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

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

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

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری

انجمن تیم امنیتی گارد ایران

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

شبکه های اجتماعی

×
×
  • اضافه کردن...