امنیت و نفوذ, توصیه شده

هک کارت Mifare – قسمت اول

هک کارت مترو تهران

مقدمه:

قراره در چندین پست آینده روشهای نفوذ به کارتهای Mifare که از پروتکل crypto 1  استفاده میکنند را مشخصا تفسیر نماییم.

این بررسی  و نفوذ به علت اینکه اکثر کارتهای پرداخت درون شهری و اکثر شهرهای ایران مثل کارت مترو تهران, اتوبوس مشهد, اتوبوس رانی شیراز, اصفهان کارت و … از این سیستم استفاده میکنند مهم و حیاتی میشه.

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

سیسوگ به عنوان یک مرجع متن باز فارسی در حوزه الکترونیک وظیفه خود میدونه بحث امنیت در حوزه های مختلف الکترونیک را بررسی و هشدارهای لازم را بدهد.

این هشدارها وقتی اهمیت پیدا میکنه که میبنیم مثلا در همین مورد کارت Mifare هم اکنون هیچ هشدار و یا مقاله علمی بصورت فارسی وجود نداره و خدای نکرده در صورت عدم ایجاد تدابیر  امنیتی میتونه ضررهای بسیار زیادی به شرکتهای خصوصی و دولتی وارد کنه.

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

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

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

اول اینکه حتی اگر کارت را هک نمایید اطلاعات قرار داده شده داخل کارت غالبا بصورت خاصی چیده یا رمز نگاری شده اند که پیدا کردن الگوریتمهای اون بسیار سخت و گاها غیرممکن است.

دوم اینکه تا جایی که بنده اطلاع دارم شرکتهای ارائه دهنده خدمات پرداخت توسط کارتهای Mifare  در تهران و یا بقیه شهرها سعی میکنند بصورت انلاین کلیه تراکنش ها را مدیریت کنند به عبارتی اگر شما سعی کنید هر نوع سوء استفاده ای کنید در مدت کوتاهی کارت شما شناسایی میشه و میتوانند ضمن غیرفعال کردن کارت مورد نظر دارنده کارت را پیگیری نمایند.

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

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


هک کارت Mifare

کارت های مترو و اتوبوس ،قطعا از این کارت ها استفاده کرده اید یا حداقل یک بار هم که شده نام آنها را شنیده‌اید با استفاده از کارت مترو یا کارت اتوبوس به سادگی می توان پرداخت الکترونیکی بلیط را انجام داد و با حذف بلیط های کاغذی، اولین گام را برای تحقق رویای شهر الکترونیک برداشت ؛

خوشبختانه هرچند دیر ولی این پروسه در ایران اجرایی شد و در حال حاضر مورد بهره بردای قرار گرفته است ، به شخصه این پروژه را یک پروژه موفقی میدانم و باعث تعجب ام میشه که چرا این روند رو به رشد نگذاشت و در باقی حوزه ها ورود نکرد تا کم‌کم شاهد رشد و پیشرفت هرچه بیشتر در این حوزه باشیم البته ظاهرا جدیدا با معرفی و رونمایی از تکنولوژی NFC گام های مثبتی در این حوزه برداشته شده است ؛ انگار از بحث اصلی فاصله گرفتیم ، همیشه و همه جا باید موارد امنیتی را در نظر گرفت مخصوصا در حوزه های تکنولوژی که از حساسیت بالایی برخوردار هستند و بحث های مالی در میان است در غیر این صورت زمینه برای نفوذ و هک سیستم مهیا می‌شود؛ این جمله رو قبلا هم گفتم که فکر میکنم الزامی باشه که بهش توجه و فکر کنید:

صرف استفاده از گاوصندوق برای محافظت از دارایی‌ها لزوما تامین امنیت نیست ،آن هم  وقتی که کلید آن را بالای گاوصندوق می گذاریم . 

اولین سوالی که برای هر شخص استفاده کننده ای از یک سیستم پرداختی مطرح می‌شود قابلیت هک پذیر بودن آن سیستم است ؛ به صورت خیلی ساده اغلب افراد یک بار هم که شده به هک کارت Mifare فکر کرده اند یا تمایل به این کار دارند و سوال اغلب افراد این است که “کارت Mifare  را می شود هک کرد؟”

در پاسخ باید اضافه کنم هر نرم افزار یا سخت افزاری دارای باگ است و تا کنون هیچ نرم افزار یا حتی سخت افزار بدون باگی ساخته نشده است ، البته سیستم های با باگ کمتری هم وجود دارند که می توان به OpenBSD یا RedMail اشاره کرد که تا مدت های طولاتی بدون باگ بوده اند ولی نهایتا یک یا دو باگ جزیی در آنها کشف شده است که این نوید را بدهد که هیچ سیستم بدون باگی توسط بشر ساخته نشده است. پس کارت های Mifare هم قابل هک هستند.

در این سری مقالات سعی داریم به بررسی چالش های امنیتی و در نهایت هک کارت Mifare  بپردازیم ، البته در نظر داشته باشید که این مجموعه مقالات صرفا جهت آموزش ترفند های امنیتی است و هرگونه سوء استفاده از آن بر عهده سیسوگ نمی باشد.

همیشه اولین گام در هک هر نوع سیستمی اعم از سخت افزاری یا نرم افزاری آشنایی با نحوه کار و تکنولوژی مورد استفاده آن است ، برای این قسمت قصد داریم کارت های Mifare که در واقع یکی از بسترهای مورد استفاده در پرداخت با کارت است را معرفی کنیم پس با سیسوگ همراه باشید.

آشنایی با RFID

سیستم های RFID انواع مختلفی دارند که با مرور زمان و احساس نیاز ایجاد شده، بروز رسانی شده اند. در واقع سیستم های RFID برای شناسایی چیزها (اعم از جاندار و غیر جاندار) با استفاده از امواج رادیویی ساخته شده است، در انواع قدیمی سیستم های شناسایی ، مثل بارکرد نیاز به رؤیت بارکرد توسط بارکد خوان وجود داشت ، اما در سیستم RFID نیازی به روئیت فیزیکی تگ نیست همین که تگ در دید رادیویی دستگاه قرار داشته باشد کافی است. اما تگ چیست ؟ ، در واقع تگ در ساده ترین حالت ممکن حاوی یک شناسه (مثلا عدد) منحصر به فرد است که آن تگ را از باقی تگ ها جدا می‌کند.

 

RFID ها در فرکانس های کاری مختلفی تولید می شوند از فرکانس های بسیار پایین مثل 125 کیلوهرتز تا فرکانس های خیلی بالا در حدود حوزه فرکانسی UHF یعنی حدود 928 مگاهرتر. بسته به کاربرد و محل استفاده می توان یکی از فرکانس های تعریف شده را استفاده کرد. معمولا در استفاده هایی که تگ و قرائت گر فاصله نزدیکی دارند از فرکانس های پایین یعنی 125 کیلوهرتز یا 13.5 مگاهرتز استفاده می شود مثل تگ های روی کتاب یا محصولات یک فروشگاه یا کارت های حضور و غیاب یا همین کارت مترو و در استفاده هایی که نیاز به شناسایی از فاصله دور وجود داشته باشد از فرکانس های بالا استفاده می شود نظیر پرداخت عوارض اتوبان ها که با برچسب های UHF انجام می‌شود.

در سیستم های RFID دو نمونه TAG وجود دارد ، تگ های ساده که فقط حاوی یک شناسه یونیک هستند و اما دسته دوم تگ های حافظه دار هستند !

مورد بحث این مقاله پیرامون این دسته از تگ ها هست، tag هایی که دارای حافظه هستند و صد البته این گونه تگ ها قادر هستند حجم مشخصی داده را دخیره  و در حافظه نگاه دارند که در نوع قبلی چنین امکانی وجود نداشت.

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

کارت های مترو و اتوبوس هم از تکنولوژی کارت های (Tag) غیر تماسی استفاده می کنند و همانطور که در قسمت قبل اشاره شد از نوع تگ های حافظه دار می باشند. تگ های حافظه دار انواع گوناگونی دارند و از تکنولوژی رمزگذاری متفاوتی استفاده می کنند که امنیت را در سطح های مختلفی تامین می کنند.

کارت های مورد استفاده در سیستم مترو و اتوبوس رانی همه از نوع کارت های مایفر (mifare) کلاسیک هستند. کارت های Mifare Classic دارای یک کیلو بایت حافظه داخلی است که کاربر با استفاده از آن قادر است دادهای مشخصی را با نکات مشخصی در آن ذخیره و یا بازیابی کند.

حافظه کارت های مایفر از نوع Eeprom می باشند ، این نوع حافظه با قطع برق داده ها را ده ها سال در خود نگه می دارد بی آن که به آن خدشه ای وارد شود و البته قابلیت ویرایش داده ها را نیز دارد ! البته هر کارت داری یک قسمت Rom هم هست که اصلاعات اصلی آن توسط شرکت در آن قسمت برنامه ریزی شده است و به هیچ عنوان قابل برنامه ریزی توسط کاربر نیست ، این قسمت که UID نام دارد در واقع در بر دارنده یک عدد منحصر به فرد است که هر کارت را از دیگری مجزا می کند.

آشنایی با کارت Mifare

کارت های مایفر انواع مختلفی دارند از اولین نوع کارت که همان نوع کلاسیک آن می باشد در سال 1994 توسط کمپانی NXP عرضه شد ، بعد از آن بهبود های امنیتی زیادی بر روی آن اعمال شده و باعث ایجاد انواع دیگری نظری Mifare Pro یا Mifare Ultralight یا DESFire و… شده است که آخرین نوع عرضه شده از این تکنولوژی مربوط به سال 2018 است و Mifare 2GO نام دارد و از تکنولوژی NFC استفاده می کند. در این مقاله تمرکز ما بر روی کارت Mifare Classic است که از این به بعد صرفا آن را کارت مایفر (mifare) می خوانیم !

این کارت داری یک کیلو بایت حافظه داخلی است که اجازه ذخیره سازی داده را به کاربر می دهد. داده ها با استفاده از الگوریتم رمزگذاری Crypto-1 کارت و ریدر رد و بدل می شود که امنیت حفظ آنها را تا حدود زیادی تامین می کند.

آشنایی با ساختار کارت Mifare

همانطور که قبلا اشاره کردیم کارت های مایفر دارای 1 کیلو بایت حافظه داخلی هستند ! اما این حافظه به چه صورت مدیریت می شود ؟

در این قسمت به بررسی ساختار درونی کارت های Mifare می پردازیم و توضیح می دهیم که چطور از داده ها در مقابل هک محافظت می شود. در کارت های مایفر حافظه به 16 قسمت تقسیم می شود هر قسمت را یک سکتور می‌خوانیم هر سکتور خود 4 بلوک رو تشکیل میدهد. با توجه به حافظه یک کیلو بایتی کارت های مایفر ، هر سکتور 64 بایت دارد و هر بلوک 16 بایت ! برای واضح تر شدن مساله به تصویر زیر دقت کنید.

 

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

همانطور که در تصویر فوق هم مشخص شده برای کارت های مایفر (Classic) هفت بایت نخست از بلوک صفرِ سکتورِ صفر مشخص کننده UID یا همان شناسه منحصر به فرد کارت است.

این شناسه منحصر به فرد کاربرد های زیادی حتی در بحث های امنیتی می تواند داشته باشد که در مقالات آینده بدان خواهیم پرداخت.

هر سکتور داری 4 بلاک است که بلاک آخر از هر سکتور جهت نگهداری کلید های امنیتی است ، هر سکتور دو کلید امنیتی دارد که توسط بیت های Access در سکتور آخر قابل برنامه ریزی هستند ، مثلا این که یک سکتور فقط قادر به خواندن اطلاعات باشد ، یکی فقط بتواند بنویسید ، و … ؛ سه بلاک دیگر از سکتور به داده های کاربر اختصاص دارد. برای جزییات بیشتر به تصویر زیر دقت کنید:

نکات امنیتی در کارت های Mifare

همانطور که قبلا توضیح دادیم هر سکتور دو کلید جداگانه برای دسترسی به اطلاعات خود دارد ؛ پس هر کارت در مجموع داری 32 کلید مجزا است ، با این تکنیک اگر کلیدهای متفاوتی برای هر سکتور در نظر گرفته شود در صورت پیدا شدن هر کدام از کلید ها ، دسترسی به همان سکتور بسته وجود دارد؛ هر کلید شامل 6 بایت است یعنی هر کلید می تواند 281474976710655 حالت مختلف داشته باشد ، اگر برای هک بخواهیم تمام حالت های ممکن را چک کنیم ، و هر ده هزار حالت را در یک ثانیه چک کنیم باز برای پیدا کردن یک کلید نیاز به 28147497671 ثانیه زمان دارم یعنی معادل 890 سال زمان ! آن هم فقط برای یک سکتور و میدانید که هر کارت 32 سکتور دارد.

در مقاله بعدی بررسی خواهیم کرد که چطور داده بین کارت و ریدر رد و بدل می شود و آیا با استفاده از تکنیک اسنیف (Sniff) می شود به داده ها و کلید دسترسی پیدا کرد یا خیر ؛ با سیسوگ همراه باشید.

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

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

91 دیدگاه در “هک کارت Mifare – قسمت اول

  1. Avatar for سینا سینا گفت:

    من کارت رو چطوری هک کنم

  2. Avatar for Arian Arian گفت:

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

    1. Avatar for Shadow Shadow گفت:

      سلام دوست عزیز
      به لینکدین یا اینستاگرام سیسوگ پیام بدید.

  3. Avatar for amir amir گفت:

    کارت های شهر بازی رو میشه هک کرد
    یا اون دستگاهی که این کارت رو شارژ میکنه میشه پیدا کرد یا ساخت

    1. Avatar for Zeus ‌ Zeus ‌ گفت:

      در یک جمله ساده بخوام بگم
      بله میشه هر چیزی رو هک کرد.

  4. Avatar for Eh Eh گفت:

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

    1. Avatar for Zeus ‌ Zeus ‌ گفت:

      امم خوب این بحث رو اونایی که فیلتر میکنند قبول ندارن
      در ضمن اول فیلتر میکنند بعد سوال می پرسند :/

  5. Avatar for پورمراد پورمراد گفت:

    سلام . کارتهای مترو و اتوبوس تهران رو با کارت خوان با فرکانس 125k و 13.56 میشه خوند و نوشت ؟

    1. Avatar for Zeus ‌ Zeus ‌ گفت:

      سلام
      اون کارت ها از نوع مایفر هستند و فرکانس کاریشون ۱۳٫۵ مگاهرتزه
      و فکر کنم رمز دارن و برای خوندن و نوشتن باید رمزش رو داشته باشید

      1. Avatar for پورمراد پورمراد گفت:

        اگه کارت مترو فعال شده باشه ، یعنی خام نباشه ، بازم نمیشه بدون نیاز به رمز با استفاده از تگخوان و کامپیوتر ( برنامه ای تعریف بشه) فقط عددی رو به عنوان مبلغ وارد کارت کرد؟

        1. Avatar for Zeus ‌ Zeus ‌ گفت:

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

      2. Avatar for پورمراد پورمراد گفت:

        آخه تو خود مترو برای شارژ کارتها رمزی وارد نمیکنن و فقط مبلغ وارد میکنن

        1. Avatar for Zeus ‌ Zeus ‌ گفت:

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

      3. Avatar for Shaho Shaho گفت:

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

        1. Avatar for Zeus ‌ Zeus ‌ گفت:

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

  6. Avatar for عزیزی عزیزی گفت:

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

    1. Avatar for Sisoog Os Sisoog Os گفت:

      سلام به نظر شدنی هستند

      1. Avatar for عزیزی عزیزی گفت:

        سلام امکانش هست راهنمایی کنید .در صورت شامل هزینه لطفا اعلام بفرمایید .تشکر

      2. Avatar for عزیزی عزیزی گفت:

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

  7. Avatar for حسین حسین گفت:

    من سال ۸۶ یه پروژه با این کارت انجام دادم ،ولی برنامش رو جوری نوشته بودم که هر کارتی یه رمز مخصوص خودش رو داشت، نهایتا طرف میتونست یه کارت رو هک کنه ،اونم تازه اگه پیدا می کرد انقدر دیتای چرت و پرت و رندوم نوشته بودم که ………! دیتا رو هم تازه با چند کد منحصر بفرد مثل رقم های خاصی از ای دی کارت ایکس اور کرده بودم ،و چک سام هم داشت ، یعنی اگه رمز هم لو میرفت احتمال دیکد کردن دیتا سخت بود، خلاصه به نظرم باید یه خورده از این خلاقیت های من دراوردی هم گاهی باید گذاشت ،

  8. Avatar for Abed Abed گفت:

    سلام ، داداش چجوری هکش کردی ، بگو مام فیض ببریم?

    1. Avatar for Zeus Zeus گفت:

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

  9. Avatar for AMIR HOSSEIN AMIR HOSSEIN گفت:

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

    1. Avatar for Sisoog Os Sisoog Os گفت:

      سلام نه لزوما
      کارت های مایفر را غالبا با سیستم انلاین اگر متصل کنند میتونن تقلب ها را در اون پیدا کنند

  10. Avatar for ehsan ehsan گفت:

    سلام، من سال ۹۶ سرباز بودم و خیلی با مترو و اتوبوس جابجا میشدم ولی متاسفانه هزینه های که برای سرباز باید رایگان میبود نبود! این بهونه ای شد که یک کارت مترو تهیه کنم و هکش کنم. تجربه جالبی بود، البته بعد خدمت تقریبا هیچوقت مترو و اتوبوس سوار نشدم و به کارم هم نمیاد مگه اینکه ماشین خراب بشه، در کل میخواستم بگم سیستم پرپیت ممکنه به درد بعضی ها که واقعا حقشون ضایع شده بخوره! همه هم سو استفاده نمیکنن.
    پ.ن. من سرباز کلانتری بودم و پرونده های مردم رو بین دادسرایی جابجایی میکردم ?

    1. Avatar for Sisoog Os Sisoog Os گفت:

      سلام ای بابا…

    2. Avatar for پورمراد پورمراد گفت:

      سلام ، داداش چجوری تونستی هک کنی بگو منم فیض ببرم

  11. Avatar for alisafarzadeh376 alisafarzadeh376 گفت:

    با سلام و خسته نباشید
    من خیلی وقته سایت شما رو دنبال میکنم و از مطالب مفید شما بهرمند میشم لازمه توی این زمینه اطلاعات خودم رو بیان کنم تا منم در انتقال این اطلاعات سهیم باشم.
    من تایم زیادی در زمینه کارت های mifare کار انجام دادم و انجام میدهم و در شهر مقدس مشهد زندگی میکنم
    من کارت های شهر مشهد یا هم کارت های پرداخت اتوبوس رانی و مترو شهر مشهد از مدل mifare desfire هستند و از سه لایه رمز نگاری aes و 3kdes استفاده شده که master key های آن دوباره داخل ای سی های سخت افزاری به نام mifare sam قرار دارد که شبیه سیم کارت اند و داخل دستگاه های شارژ و دشارژ آن قرار میگیرد که با نصب یک نرم افزار ساده TagInfo شرکت nxp روی گوشی های دارای nfc خود میتوانید از این موضوع مدل کارت ها اطمینان حاصل کنید
    البته من فقط کارت من کارت مشهد رو در این باره اطمینان دارم و سایر شهر ها رو چک نکردم

    و مدل که شما در این مقاله مورد مطالعه قرار دادید از نوع mifare classic است به سادگی میشه توی اینترنت روش هک و دست رسی به بلاک های داخلی آن را پیدا کرد و nxp روی این کارت زیاد نسبت به اطلاعات حساس نبوده است .

    شرکت nxp برای برنامه نویسی سخت افزاری کارت های mifare desfire خود قرار داد NDA دارد اما برای کارت های کلاسیک خود محدودیتی نگذاشته است
    من هم عنوان معدود برنامه نویس های سخت افزاری کارت های mifare desfire در ایران میتونم اثبات کنم که این کارت های mifare desfire که برای من کارت شهر مشهد استفاده میشود غیر قابل نفوذ است
    هم چنین از این سری کارت در کشور های آمریکا و ژاپن هم برای پرداخت هزینه درون شهری استفاده میشده که تائیده بر حرف بنده است .

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

    1. Avatar for Sisoog Os Sisoog Os گفت:

      سلام دوست عزیز
      در مورد بحث کارتها حق با شماست و البته ما اطلاعی از روندها در شهری مثل مشهد نداریم
      منظور ما هم همون کارتهای mifare classic هستند که الان خیلی شهرها دارند استفاده میکنند و البته روزی که قرار بوده شروع کنند کلی فرایند بررسی شارژهای نامتعارف را تو سیستم خودشون در نظر گرفتند که به مرور همه اینها حذف شده
      به هر حال ممنون بابت به اشتراک گذاشتن اطلاعاتتون

  12. Avatar for محمد رضا محمد رضا گفت:

    سلام
    واقعا این مطلب نباید باشه
    درسته که شهرداری تهران یه اشتباهی انجام داده اما انتشار آسیب پذیری حتی بدون سورس هم اشتباه هست
    بدلیل گستردگی کارتای مترو جمع کردنش تقریبا غیر ممکنه و انتشار همچنین مطلبی فقط میتونه به ضرر این ماجرا باشه

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

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

      1. Avatar for حسین حسین گفت:

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

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          این که میگید نکته نیست – این آموزش حتی شروع هم نشد!
          بخاطر چی شروع نشد بخاطر جنبه های حقوقی مساله!
          البته این مقاله صرفا معرفی کارت مایفر بوده اگر دقت کنید قرار بود جنبه های مختلف مساله بررسی بشه که نشد چرا ؟ به همون دلایلی که قبلا گفتم !

        2. Avatar for زئوس Zeus زئوس Zeus گفت:

          در ضمن اون آدمی که میخواد بره دنبالش نیازی به این مقاله نداره – قطعا با یه سرچ ساده به نتیجه اش میرسه
          تو هر زمینه ای نه تنها این زمینه!
          باید آگاهی عمومی افزایش پیدا کنه

          1. Avatar for نازنین نازنین گفت:

            به نظرم ادامه دادن که هیچ اصلا همین مطلب هم باید حذف شه
            عنوان مطلب رو حداقل میتونید تغییر بدید

  13. Avatar for mahdi zamani mahdi zamani گفت:

    قبلا تو مترو یکی رو دیدم 5 تومن میگرفت 20 تومن کارت شارژ میکرد ولی من فکر میکردم اینا همه دارای دیتابیس هستن ….

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      هر چیزی یه راهی داره :/
      فکر نمیکردم تا اینجا پیش رفته باشن 😐

      1. Avatar for امیرحسین امیرحسین گفت:

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

        1. Avatar for Sisoog Os Sisoog Os گفت:

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

  14. Avatar for محمد رضا محمد رضا گفت:

    سلام
    از چه ماژولی برای انجام اینکار میتونیم استفاده کنیم؟ وسیله ای موجود هست که مستقیم با درگاه usb ارتباط برقرار کنه؟ همینطور در ابونتو پشتیبانی کنه؟

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام – از ماژول pn532 استفاده کنید
      و میتونید از طریق رابط سریال به اوبونتو وصلش کنید 🙂

  15. Avatar for جواد جواد گفت:

    سلام
    میتونید یه مقاله راجع به سیمکارت, مدار داخلی اون, سیستم عاملش, حافظش, داده های ذخیره شده داخلش( ICCID , IMSI,ki, …) و رمز گشایی اونها ,برنامه اش با جاوا, پروتکل هاش
    و’ امکان و نحوه ساخت سیم کارت توسط خودمون ‘ و یا ‘ تغییر یه سری امکانات در همین سیم کارت های موجود’ و یا جایگزینیش با یه روش جدید( مثلا امکان رابطه مستقیم با BTS با یه ابزار دیگه ) و …. بنویسید.

    البته در مورد GSM modem مقاله های خوب و جامعی داخل سایت هستش ولی یه مقاله شبیه “همه چیز درباره راه اندازی MMC/SD ” و البته جامع تر راجع به سیم کارت

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

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

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

      1. Avatar for احمد احمد گفت:

        سلام
        مگه کلید ki داخل eeprom سیم کارت ذخیره نمیشه؟ خب اونم که نمیشه دامپ کرد پس چجوری قراره کلون بشه؟؟

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          خوب اجازه بدید بحث رو بازش نکنم :/
          ولی بدونید در اغلب اوقات راهی هست

          1. Avatar for حسین معظم حسین معظم گفت:

            حالا با یکمی توضیحات در همین حد کارت های مایفر برای سیم کارت که مشکلی پیش نمیاد و فقط کسایی که دنبالشن خودشون میرن پیگیری کنن
            من میزارم کلید ki رو کرک کنه ولی یکی دو روز گذاشتم و نتیجه ای نداشت مشکلش از الگوریتم رمزنگاری سیم کارت هست به نظرتون یا پروگرامری که استفاده میکنم؟

          2. Avatar for زئوس Zeus زئوس Zeus گفت:

            شاید زمان بیشتری لازمه که صبر کنید – من یک بار انجام دادم موفق بودم – البته قضیه برای خیلی سال پیش هست و ممکنه الان چیزهایی رو عوض کرده باشند که اطلاعی ازش نداشته باشم

          3. Avatar for حسین حسین گفت:

            خب میتونن بپرسم پروگرامر و نرم افزار یا سورسی که استفاده کردید چی بود؟
            چون من تاحالا با هر پروگرامر و نرم افزاری تست کردم نشد

          4. Avatar for Zeus ‌ Zeus ‌ گفت:

            اگه میتونستم بگم که مطلب رو ادامه میدادم :/

  16. Avatar for محمد رضا محمد رضا گفت:

    سلام
    خیلی جالب بود ممنون لطفا قسمت بعدی رو منتشر کنید

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      والا یه سری مسائل (شما بخونید قانونی) هست که یه مقداری محدودمون میکنه

  17. Avatar for علیرضا علیرضا گفت:

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

    1. Avatar for Sisoog OS Sisoog OS گفت:

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

      متاسفانه این سیستم نفوذ پذیره
      همشون هم میدونن
      و خیلی ها هم دارند سوء استفاده میکنند

      اصلا دوست نداریم با انتشار کامل اطلاعات فرصتی به اون مدیر نالایق شهری یا غیرشهری بدیم که مشکلات مدیریتی و سیستمی خودشون را فردا پس فردا گردن ما بندازه

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

      1. Avatar for علیرضا علیرضا گفت:

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

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          با یه جستجوی ساده توی اینترنت میتونید پیداش کنید
          عبارت mifare nested attack رو سرچ کنید

  18. Avatar for مسعود مسعود گفت:

    مقاله بسیار خوبی بود.لطفا مطلب رو کامل کنید

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

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

  19. Avatar for آرمان آرمان گفت:

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

    1. Avatar for Sisoog OS Sisoog OS گفت:

      سلام مطمئنا اطلاعات در این زمینه به دلیل سوء استفاده ها نمیتونه اشتراک گذاشته بشه 🙂

      1. Avatar for امیر امیر گفت:

        هر کی بتونه حلالش!
        فقط خودش بتونه و توانایی اینکارو داشته باشه!!!شما اموز هم بدی چند نفر مگه تو ایران میتونن؟

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          خخ ما که آموزش بدیم هر کسی تو هست میتونه ^_^
          برای همین هم …. بگذریم
          اما اینطور هم نمیشه گفت هر کسی بتونه حلالش ؛ به نظرم مسئولین کوتاهی کردند در این زمینه

      2. Avatar for زئوس Zeus زئوس Zeus گفت:

        البته من نظرم خلاف نظر شماست ؛ دلیل نمیشه چون با چاقو میشه آدم کشت اونو در دسترس عموم دور کنیم ؛ در واقع راه حلش اینه که آگاهی رو بالا ببریم و آموزش بدیم چاقو برای مصارف دیگه طراحی شده !
        متاسفانه سیاست های موجود واقعا اشتباه است !

    2. Avatar for زئوس Zeus زئوس Zeus گفت:

      خوب برای این کار اولین قدم است آن است که متوجه بشید داده های ذخیره شده روی کارت کدشده هستند یا نه !
      برای این کار روش های مختلفی وجود داره ؛ یکی از روش هاشو توی مقاله هک st-link آموزش دادم ؛ اگر داده های کد شده نباشند که کار خیلی راحت تر هست و اگر داده ها کد شده باشند که باید وارد دنیای جدید رمزگذاری بشید ؛ چون ممکنه داده ها رو با هر کلیدی و هر الگورتیمی رمز کرده باشند که شکستن رمز قائدتا کار ساده ای نخواهد بود.

  20. Avatar for رضا رضا گفت:

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

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      سعی میکنیم که قسمت دوم رو هم منتشر کنیم

      1. Avatar for رضا رضا گفت:

        خیلی خیلی ممنونم

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          خواهش میکنم دوست عزیز.

      2. Avatar for رضا رضا گفت:

        خیلی خیلی مممنونم

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          خواهش میکنم !

  21. Avatar for دومان دومان گفت:

    منبع این مقاله رو میشه بفرماسسن تا خودمون بخونیم ؟

    1. Avatar for Sisoog OS Sisoog OS گفت:

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

  22. Avatar for mohamad mohamad گفت:

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

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

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

  23. Avatar for مهدی مهدی گفت:

    5 ماه گذشت و قسمت بعدی نیامد ?

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام ؛ حقیقتا دو تا دلیل داره ؛ اول این که بخاطر بار قانونی که ممکنه ایجاد کنه و باعث درگیری بشه و دوم این که زیاد مورد توجه کاربرها قرار نگرفت برای همین فعلا دست نگه داشتیم

  24. Avatar for بچه شهر بچه شهر گفت:

    من یه کارت دارم گیت مترو رو میگیره و به راحتی بدون پرداخت پول عبور میکنم این حرفات همه شعره ….

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      در خصوص چیزی که از آن طلاعی ندارید نظر ندید ؛ بهتره 🙂

  25. Avatar for احسان احسان گفت:

    سلام
    مقاله خیلی خوبی هست
    قسمت بعدی کی میاد ؟

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      انشالله به زودی

  26. Avatar for MHD MHD گفت:

    اول اینکه حتی اگر کارت را هک نمایید اطلاعات قرار داده شده داخل کارت غالبا بصورت خاصی چیده یا رمز نگاری شده اند که پیدا کردن الگوریتمهای اون بسیار سخت و گاها غیرممکن است.

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

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      بله کاملا درسته ، مقاله به این نخواهد پرداخت که چطور ار اطلاعات کارت استفاده نمایید ، و البته خود دیتای موجود در کارت میتونه به هر روش دیگه ای رمز شده باشه که استفاده از اون رو غیر ممکن بکنه ! که البته اون هم لایه دیگری از امنیت است. فرض کنید خود دیتای موجود با الگوریتم AES رمزگذاری شده باشه یا با کلید وابسته به زمان رمز شده باشه و…. و هزاران راهکار دیگه که میشه برای تامین امنیت اطلاعات استفاد کرد.
      و البته ناگفته نماد که راه کار هایی وجود دارد که میشه باز امنیت را حتی در سطح سحت افزار افزایش داد !
      ولی در آخر امنیت یک مقوله مطلق نیست و همیشه راهکار های مختلفی برای دور زدن اون وجود خواهد داشت ؛

      1. Avatar for MHD MHD گفت:

        و البته خود دیتای موجود در کارت میتونه به هر روش دیگه ای رمز شده باشه که استفاده از اون رو غیر ممکن بکنه !
        عرضم اینه که با هیچ مدل رمزنگاری نمیشه سواستفاده از کارت رو غیر ممکن کرد.حتی با استفاده از aes , …
        استفاده از کلید وابسته به زمان برای این مورد (یک کیف پول آفلاین) هم فک میکنم بی معنی باشه !
        به همین دلیله که خود nxp تاکید داره که استفاده از مایفرهای کلاسیک در موارد تجاری کنار گذاشته بشه و محصولاتی مثل اویستر کارت و … مدتهاست به دسفایر کوچ کردند.

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

          بله دوست عزیز، فرمایش شما درست در نهایت با ندونستن ساختار دیتا میشه کارت رو کلون کرد ولی الان واقعا کدوم کیف پول آفلاین هست ؟ کارت مترو یا اتوبوس تا اونجایی که اطلاع دارم آنلاین هست و دیتا در نهایت به یه سرور ارسال میشه حالا اونجا چه پردازش هایی مبشه برای پیدا کردن تخلف ؛ اونو دقیقش رو اطلاع ندارم ولی میدونم چنین کاری رو انجام میدند.
          شاید هم فعلا هیچ بررسی روش انجام ندهند ولی اطلاع دارم که ساختارش وجود داره.

      2. Avatar for محسن زیبایی محسن زیبایی گفت:

        سلام ممنون از مطالب و سایت مفید و جالبتون
        من به عنوان یک دانشجو همیشه تو ذهنم بود که کارت دانشجویی خودمو کپی کنم روی مثلا جا سووچی یا بک کارت زاپاس یا مثلا روی یک تگ چسبان که بچسبونم به مچ یا جایی خلاصه سوالم اینه که امکان کپی کردن ( نه هک یا دستکاری ) ، صرفا کپی کردن کارت دانشجویی بروی یک تگ خام وجود داره ؟ بصورتی که بجای اون کارت اینو استفاده کنیم
        هدف اینه که عین خودش باشه یعنی مثلا میری سلف چه این کارتو بزنی چه اونو غذا بشه گرفت ( هدفم این نیست که دو غذا گرفت ! ) منظورم اینه که هر کارتی که زودتر زده شد همون کار کنه فقط
        آیا امکانش هست و چگونه ؟

        1. Avatar for Zeus ‌ Zeus ‌ گفت:

          سلام و درود دوست عزیز
          خوب این کاری که میخواید بکنید به لحاظ فنی امکان پذیر هست ولی باید به نکات زیر دقت کنید
          ۱. اول این که کلید های خواندن و نوشتن کارت را داشته باشید یا به طریقی به دست بیاورید که قادر باشید که دیتای ذخیره شده در کارت رو بخوانید
          ۲. مسال دوم سریال کارت است، هر کارت یه شماره سریال منحصربه‌فرد دارد، که قابل نوشتن نیست، اگر از این شناسه برای شناسایی یا رمزگذاری استفاده شده باشد نمی شود این کار را کرد.
          – البته کارت هایی هستند که این بخش شناسه کارت هم قابل نوشتن هستند ولی این کارت ها معمول نیستند و در مواردی مثل کاربرد شما کاربرد دارند.

  27. Avatar for V V گفت:

    جالب بود
    ممنون

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      خواهش میکنم دوست عزیز.

  28. Avatar for Pofa Pofa گفت:

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

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

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

      1. Avatar for محمد محمد گفت:

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

        1. Avatar for زئوس Zeus زئوس Zeus گفت:

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

دیدگاهتان را بنویسید

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