MAHDIAR
21st February 2010, 11:53 PM
ارتباط ربايي
2/12/1388
مهدیار
http://www.jamejamonline.ir/Media/im...0940609281.jpg (http://www.jamejamonline.ir/Media/images/1387/03/19/100940609281.jpg)
Hijacking در اصل به معناي هواپيماربايي و يا ساير وسايل نقليه به همراه مسافران آن است. ولي اجازه دهيد ما از واژه ارتباط ربايي استفاده كنيم. ارتباط ربايي نوعي از حمله به شبكه است كه مهاجم كنترل ارتباط را در اختيار ميگيرد - مانند يك هواپيماربا كه كنترل پرواز را در اختيار ميگيرد - نفوذگر بين دو موجود در شبكه قرار ميگيرد و براي هركدام از طرفين ارتباط خود را جاي ديگري جا ميزند!
ارتباط ربايي نوع اول
در نوعي از ارتباط ربايي (كه بهعنوان man in the middle نيز شناخته ميشود)، مهاجم كنترل يك ارتباط برقرارشده را در حاليكه در حال انجام است، در اختيار ميگيرد. نفوذگر پيامها را در هنگام تبادل «كليد عمومي» دريافت ميكند و آنها را با جايگزين كردن كليد عموميخودش، براي طرف درخواست كننده مجدداً ارسال ميكند، به طوريكه دو طرف اوليه هنوز بنظر در حال ارتباط مستقيم هستند. نفوذگر از برنامهاي استفاده ميكند كه براي كلاينت به نظر سرور بيايد و براي سرور بهنظر كلاينت. اين نوع حمله ممكن است فقط براي دستيابي به پيامها به كار رود يا توسط آن حمله گر در پيامها تغيير ايجاد كند و سپس آنها را ارسال كند.
براي اينكه بهتوان امنيت را در تبادل پيامها برقرار كرد، از رمزنگاري استفاده ميشود. به اين ترتيب كه فرستنده متن اوليه پيام را رمز ميكند و گيرنده آنرا رمزگشايي ميكند، تا به متن اصلي پيام پي ببرد. متن رمزشده بخودي خود قابل فهم نيست، مگر اينكه بهتوان آنرا رمزگشايي كرد. براي رمزكردن متن از الگوريتم رمزنگاري به همراه كليد رمزنگاري استفاده ميشود. چنانچه كليد مورد استفاده براي رمزكردن و رمزگشايي پيام يكي باشد، رمزنگاري يا كليد، متقارن ناميده ميشود. چون دو طرف ارتباط بايد از يك كليد استفاده كنند، بنابراين بايد اين كليد مبادله شود، كه خود اين عمل از امنيت ارتباط ميكاهد. به همين منظور از الگوريتمهاي نامتقارن رمزنگاري استفاده ميشود. در اين الگوريتمهاي نامتقارن، كليد رمزكردن و رمزگشايي، يكي نيستند و در عين حال با دانستن يكي از آنها، نميتوان ديگري را بهدست آورد. بنابراين يك جفت كليد وجود دارد كه يكي كليد اختصاصي و ديگري كليد عمومياست. هر شخص براي ارتباط با ديگران، آنها را تنها از كليد عموميخويش مطلع ميسازد. براي ارسال پيام به اين شخص، متن پيام با استفاده از كليد عمومياين فرد رمز ميشود به وي فرستاده ميشود و وي پس از دريافت، متن را با كليد اختصاصي خودش رمزگشايي ميكند.
فرض كنيدA و B ميخواهند يك ارتباط امن داشته باشند A . به B كليد عموميخودش را اعلام ميكند و از B كليد عمومي وي را درخواست ميكند B . كليد عموميA را دريافت ميكند و كليد عموميخودش را براي A ارسال ميكند. چنانچه A بخواهد براي B پيامي بفرستد، ابتدا آن را با كليدعموميB رمز ميكند و براي B ارسال ميكندB. متن رمزشده را دريافت ميكند و با استفاده از كليد اختصاصي خودش رمزگشايي ميكند. چنانچه متن رمز شده به X برسد، نميتواند از محتواي آن مطلع شود، زيرا از كليد اختصاصي B اطلاعي ندارد.
حال ببينيم همينX چگونه ميتواند مرتكب ارتباط ربايي شود! X در نقطه اي بين A و B قرار ميگيرد.A براي ارسال پيام بهB ابتدا يك درخواست به سمت B ميفرستد و كليد عموميB را درخواست ميكند، غافل از اينكه اين در خواست به X ميرسدX . اين درخواست را به B ميفرستد در حاليكه وانمود ميكند خودش A است. B با ديدن اين درخواست كليد عمومي خود را به درخواست كننده، به گمان اينكه A است ميفرستدX. كليد عموميB را دريافت ميكند، اما كليد عمومي خودش را براي A ميفرستد و A گمان ميكند كه اين كليد عموميB است. حال A پيام خود را با ظاهرا كليد عموميB ولي در واقع كليد عموميX رمز ميكند و به ظاهراB ولي در واقع X ميفرستندX. اين پيام را دريافت ميكند و با كليد اختصاصي خودش رمزگشايي ميكند، از محتواي آن مطلع ميشود يا در آن تغيير ايجاد ميكند و متن حاصل را با كليد عموميB كه در اختيار دارد، رمز ميكند و برايB ارسال ميكند. در حاليكه B گمان ميكند پيام دريافت شده، از طرفA ارسال شده است. براي ارسال پيام امن از B به A، مراحل فوق بالعكس انجام ميگيرد. به اين ترتيبX بينA و B قرار ميگيرد و از محتواي پيامهاي آنها مطلع ميشود و آنها را دستكاري ميكند، بدون اين كه A و B متوجه غيرمستقيم بودن ارتباط شوند.
ارتباط ربايي نوع دوم
نوع ديگر ارتباط ربايي، «مرورگر ربايي» (Browser hijacking) است كه در آن يك كاربر به سايت متفاوتي با آنچه خودش درخواست كرده بود، هدايت ميشود.
دو نوع مختلف از DNS ربايي وجود دارد. در يكي نفوذگر به ركوردهاي DNS دسترسي پيدا ميكند و آنها را طوري دستكاري ميكند كه درخواستها براي صفحه واقعي به جايي ديگر هدايت شوند معمولاً به يك صفحه جعلي كه خود نفوذگر ايجاد كرده است. اين اتفاق به بيننده اين احساس را ميدهد كه وب سايت هك شده است، در حاليكه در حقيقت سرور DNS تغيير پيدا كرده است. چند سال پيش يك نفوذگر وب سايت امنيتي RSA را با دسترسي به ركوردهاي DNS ربود!!! و تقاضاها را به يك وب سايت جعلي هدايت كرد. براي كاربران اينطور بنظر ميرسيد كه يك نفوذگر به ديتاي واقعي وب سايت RSA دسترسي پيدا كرده و آنها را تغيير داده است يك مشكل جدي براي تشكيلات امنيتي! !! مشكل بتوان از اين نوع از ارتباط ربايي جلوگيري كرد، زيرا مديران شبكه، تنها ركوردهايDNS خود را كنترل ميكنند و كنترلي روي سرورهاي DNS بالايي ندارند.
در نوع دوم ربايش DNS، نفوذگر حسابهاي معتبر ايميل را جعل ميكند و توسط آنها باكسهاي ديگر را مورد حجم انبوهي از ايميل قرار ميدهد. اين نوع حمله ميتواند توسط روشهاي تاييد هويت جلوگيري شود.
در نوع ديگري از وب سايتربايي، فرد به آساني يك نام دامنه را كه به اندازه كافي شبيه نام دامنه يك سايت معروف و قانوني است، ثبت ميكند و كاربراني كه نام سايت اصلي را اشتباه ميكنند يا در تايپ آن دچار اشتباه ميشوند، به اين سايت هدايت ميشوند. از اين نوع حمله در حال حاضر براي ارسال سايتهاي مستهجن بهجاي سايتهايي كه كاربران ناآگاه درخواست كرده اند، استفاده ميش
2/12/1388
مهدیار
http://www.jamejamonline.ir/Media/im...0940609281.jpg (http://www.jamejamonline.ir/Media/images/1387/03/19/100940609281.jpg)
Hijacking در اصل به معناي هواپيماربايي و يا ساير وسايل نقليه به همراه مسافران آن است. ولي اجازه دهيد ما از واژه ارتباط ربايي استفاده كنيم. ارتباط ربايي نوعي از حمله به شبكه است كه مهاجم كنترل ارتباط را در اختيار ميگيرد - مانند يك هواپيماربا كه كنترل پرواز را در اختيار ميگيرد - نفوذگر بين دو موجود در شبكه قرار ميگيرد و براي هركدام از طرفين ارتباط خود را جاي ديگري جا ميزند!
ارتباط ربايي نوع اول
در نوعي از ارتباط ربايي (كه بهعنوان man in the middle نيز شناخته ميشود)، مهاجم كنترل يك ارتباط برقرارشده را در حاليكه در حال انجام است، در اختيار ميگيرد. نفوذگر پيامها را در هنگام تبادل «كليد عمومي» دريافت ميكند و آنها را با جايگزين كردن كليد عموميخودش، براي طرف درخواست كننده مجدداً ارسال ميكند، به طوريكه دو طرف اوليه هنوز بنظر در حال ارتباط مستقيم هستند. نفوذگر از برنامهاي استفاده ميكند كه براي كلاينت به نظر سرور بيايد و براي سرور بهنظر كلاينت. اين نوع حمله ممكن است فقط براي دستيابي به پيامها به كار رود يا توسط آن حمله گر در پيامها تغيير ايجاد كند و سپس آنها را ارسال كند.
براي اينكه بهتوان امنيت را در تبادل پيامها برقرار كرد، از رمزنگاري استفاده ميشود. به اين ترتيب كه فرستنده متن اوليه پيام را رمز ميكند و گيرنده آنرا رمزگشايي ميكند، تا به متن اصلي پيام پي ببرد. متن رمزشده بخودي خود قابل فهم نيست، مگر اينكه بهتوان آنرا رمزگشايي كرد. براي رمزكردن متن از الگوريتم رمزنگاري به همراه كليد رمزنگاري استفاده ميشود. چنانچه كليد مورد استفاده براي رمزكردن و رمزگشايي پيام يكي باشد، رمزنگاري يا كليد، متقارن ناميده ميشود. چون دو طرف ارتباط بايد از يك كليد استفاده كنند، بنابراين بايد اين كليد مبادله شود، كه خود اين عمل از امنيت ارتباط ميكاهد. به همين منظور از الگوريتمهاي نامتقارن رمزنگاري استفاده ميشود. در اين الگوريتمهاي نامتقارن، كليد رمزكردن و رمزگشايي، يكي نيستند و در عين حال با دانستن يكي از آنها، نميتوان ديگري را بهدست آورد. بنابراين يك جفت كليد وجود دارد كه يكي كليد اختصاصي و ديگري كليد عمومياست. هر شخص براي ارتباط با ديگران، آنها را تنها از كليد عموميخويش مطلع ميسازد. براي ارسال پيام به اين شخص، متن پيام با استفاده از كليد عمومياين فرد رمز ميشود به وي فرستاده ميشود و وي پس از دريافت، متن را با كليد اختصاصي خودش رمزگشايي ميكند.
فرض كنيدA و B ميخواهند يك ارتباط امن داشته باشند A . به B كليد عموميخودش را اعلام ميكند و از B كليد عمومي وي را درخواست ميكند B . كليد عموميA را دريافت ميكند و كليد عموميخودش را براي A ارسال ميكند. چنانچه A بخواهد براي B پيامي بفرستد، ابتدا آن را با كليدعموميB رمز ميكند و براي B ارسال ميكندB. متن رمزشده را دريافت ميكند و با استفاده از كليد اختصاصي خودش رمزگشايي ميكند. چنانچه متن رمز شده به X برسد، نميتواند از محتواي آن مطلع شود، زيرا از كليد اختصاصي B اطلاعي ندارد.
حال ببينيم همينX چگونه ميتواند مرتكب ارتباط ربايي شود! X در نقطه اي بين A و B قرار ميگيرد.A براي ارسال پيام بهB ابتدا يك درخواست به سمت B ميفرستد و كليد عموميB را درخواست ميكند، غافل از اينكه اين در خواست به X ميرسدX . اين درخواست را به B ميفرستد در حاليكه وانمود ميكند خودش A است. B با ديدن اين درخواست كليد عمومي خود را به درخواست كننده، به گمان اينكه A است ميفرستدX. كليد عموميB را دريافت ميكند، اما كليد عمومي خودش را براي A ميفرستد و A گمان ميكند كه اين كليد عموميB است. حال A پيام خود را با ظاهرا كليد عموميB ولي در واقع كليد عموميX رمز ميكند و به ظاهراB ولي در واقع X ميفرستندX. اين پيام را دريافت ميكند و با كليد اختصاصي خودش رمزگشايي ميكند، از محتواي آن مطلع ميشود يا در آن تغيير ايجاد ميكند و متن حاصل را با كليد عموميB كه در اختيار دارد، رمز ميكند و برايB ارسال ميكند. در حاليكه B گمان ميكند پيام دريافت شده، از طرفA ارسال شده است. براي ارسال پيام امن از B به A، مراحل فوق بالعكس انجام ميگيرد. به اين ترتيبX بينA و B قرار ميگيرد و از محتواي پيامهاي آنها مطلع ميشود و آنها را دستكاري ميكند، بدون اين كه A و B متوجه غيرمستقيم بودن ارتباط شوند.
ارتباط ربايي نوع دوم
نوع ديگر ارتباط ربايي، «مرورگر ربايي» (Browser hijacking) است كه در آن يك كاربر به سايت متفاوتي با آنچه خودش درخواست كرده بود، هدايت ميشود.
دو نوع مختلف از DNS ربايي وجود دارد. در يكي نفوذگر به ركوردهاي DNS دسترسي پيدا ميكند و آنها را طوري دستكاري ميكند كه درخواستها براي صفحه واقعي به جايي ديگر هدايت شوند معمولاً به يك صفحه جعلي كه خود نفوذگر ايجاد كرده است. اين اتفاق به بيننده اين احساس را ميدهد كه وب سايت هك شده است، در حاليكه در حقيقت سرور DNS تغيير پيدا كرده است. چند سال پيش يك نفوذگر وب سايت امنيتي RSA را با دسترسي به ركوردهاي DNS ربود!!! و تقاضاها را به يك وب سايت جعلي هدايت كرد. براي كاربران اينطور بنظر ميرسيد كه يك نفوذگر به ديتاي واقعي وب سايت RSA دسترسي پيدا كرده و آنها را تغيير داده است يك مشكل جدي براي تشكيلات امنيتي! !! مشكل بتوان از اين نوع از ارتباط ربايي جلوگيري كرد، زيرا مديران شبكه، تنها ركوردهايDNS خود را كنترل ميكنند و كنترلي روي سرورهاي DNS بالايي ندارند.
در نوع دوم ربايش DNS، نفوذگر حسابهاي معتبر ايميل را جعل ميكند و توسط آنها باكسهاي ديگر را مورد حجم انبوهي از ايميل قرار ميدهد. اين نوع حمله ميتواند توسط روشهاي تاييد هويت جلوگيري شود.
در نوع ديگري از وب سايتربايي، فرد به آساني يك نام دامنه را كه به اندازه كافي شبيه نام دامنه يك سايت معروف و قانوني است، ثبت ميكند و كاربراني كه نام سايت اصلي را اشتباه ميكنند يا در تايپ آن دچار اشتباه ميشوند، به اين سايت هدايت ميشوند. از اين نوع حمله در حال حاضر براي ارسال سايتهاي مستهجن بهجاي سايتهايي كه كاربران ناآگاه درخواست كرده اند، استفاده ميش