نوشته‌های ترمینالی
2.62K subscribers
423 photos
12 videos
32 files
2.25K links
Download Telegram
نوشته‌های ترمینالی
سوال که می‌خوام جواب بدم اینه که آیا ممکنه یک نفر یا یک نهاد اینترنت کل جهان رو قطع کنه؟ اگر وقت ندارید: + ممکنه یک شرکت خدمتی ارائه نده مثلا گوگل + ممکنه برای چند ساعت اینترنت اختلال جدی داشته باشه + اما برای بیشتر از یک روز به نظر نمیاد کل اینترنت قطع بمونه…
کار ICANN: (اینطوری که من متوجه شدم) اینه که قرارداد می‌بنده با مسئول top level domain ها مثلا مسئول دامنه‌ی ir تو ایران. اینطوریه که: ما که ICANN باشیم، تو رو به عنوان DNS این ناحیه معرفی می‌کنیم، در عوض تو هم اطلاعات درستی به بقیه بده (طبق پروتوکل‌ها). همچنین اینکه سینک شدن بین اطلاعات 13 تا DNS Root server به شکل مناسب انجام بشه.
(اینکه یه دامنه که فروخته می‌شه رو هم ICANN زیر نظر داره یا نه رو متوجه نشدم.)

اگر ICANN نباشه: اگر در یک لحظه ICANN و اون ۱۲ تا سازمان دیگه همه تصمیم بگیرن اطلاعات ندن یا اطلاعات غلط بدن، در لحظات اول که مشکلی پیش نمیاد چون ما از کش‌های دیگه استفاده می‌کنیم. اما به مرور کش‌ها اطلاعات غلط رو از TLD های فیک که به جای TLD های اصلی بهشون وصل می‌شیم می‌گیرن و به مشکل می‌خوریم.

اما چند تا راه حل هست: برنامه‌هایی که به IPشون وصل می‌شن برای اتصال همچنان (احتمالا) کار خواهند کرد. مثلا تلگرام احتمالا به مشکلی نخوره. یکسری alternative root dns هم وجود دارن که الان هم فعال هستند و خارج از سلسله مراتب اصلی dns خدمت می‌دن، اون‌ها اگرچه الان توصیه شده نیستند و خطرناک شناسایی می‌شن ولی به هر حال پتانسیل جایگزینی رو دارن. alternative بودن و فرقشون با dns server های مرسوم (که به عنوان cache بهشون اشاره کردم) اینه که اطلاعات خودشون رو عینا با اطلاعات سلسله مراتب بروز نگه نمی‌دارن. مثلا یک سری TLD دیگه (که رسمی نیستن) رو هم اینا دارن. الان هم می‌تونید dns serverتون رو به یکی از اینا تغییر بدید یا حتی بدتر، شاید ISPتون خودش به شکل پیشفرض به یه alternate راهنماییتون کنه.

نظر شخصی من: بیاید به گذشته نگاه کنیم. اتفاقای که افتاده و جنگ‌ها و ماجراها هیچوقت تهدیدی برای اینترنت نبودن و همیشه تلاش شده اینترنت هیچ نقطه‌ی single point of failure نداشته باشه. بلکه نامتمرکز باشه و حتی در مواقع بحرانی که لینک‌های زیادی قطع شدن یا تعدادی هکر توی سامانه وجود داره یا یه قسمت بزرگی از شبکه قطع می‌شه هم فعالیت کنه.

با فرض اینکه کاملا قطع بشه اینترنت: باقی جهان (جدا از ایالت متحده) هم منابع زیادی دارن هم برای شهروندانشون ارزش قائلن و درک می‌کنن چه ضرر هنگفتی داره قطع بودن اینترنت پس طولی نمی‌کشه که مشکلاتی که هست رو حل می‌کنن، مثل کانفیگ کردن دوباره روترها و عوض کردن مسیرها یا بازگردوندن دیتای name serverها.

در نهایت بزرگ‌ترین چیزی که باید نگرانش باشیم همینه که سرویس‌ها به ما سرویس ندن (که الانم اکثرا نمی‌دن) مثلا گوگل دیگه سرویس نده و اطلاعاتمون رو هم از دسترس خارج بشه، تا اینکه زیرساخت اینترنت به هم بریزه.


مطالب تکمیلی:
در مورد ICANN و IANA بیشتر بخونید:
https://www.itblock.sg/post/it-support-101-what-is-icann-and-iana

تعریف ICANN از زبان خودشون:
ICANN's mission is to help ensure a stable, secure, and unified global Internet. To reach another person on the Internet, you need to type an address – a name or a number – into your computer or other device. That address must be unique so computers know where to find each other. ICANN helps coordinate and support these unique identifiers across the world. ICANN was formed in 1998 as a nonprofit public benefit corporation with a community of participants from all over the world.
و مطلب کاملش: https://www.icann.org/resources/pages/what-2012-02-25-en

در مورد root DNS serverها: https://www.cloudflare.com/learning/dns/glossary/dns-root-server/

در مورد TLDها: https://www.cloudflare.com/learning/dns/top-level-domain/

نحوه عوض کردن DNS server پیشفرض و دلایل این کار: https://www.howtogeek.com/664608/why-you-shouldnt-be-using-your-isps-default-dns-server/

چند انتخاب DNS server: https://www.lifewire.com/free-and-public-dns-servers-2626062

امکان مشاهده‌ی موقعیت مکانی و اطلاعات این ۶۰۰ تا root dns server و ای‌پی هر کدوم: https://root-servers.org/
👍8
نوشته‌های ترمینالی
کار ICANN: (اینطوری که من متوجه شدم) اینه که قرارداد می‌بنده با مسئول top level domain ها مثلا مسئول دامنه‌ی ir تو ایران. اینطوریه که: ما که ICANN باشیم، تو رو به عنوان DNS این ناحیه معرفی می‌کنیم، در عوض تو هم اطلاعات درستی به بقیه بده (طبق پروتوکل‌ها). همچنین…
افزون بر موارد بالا، یه داستان «۷ کلید» هم وجود داره که شبیه فیلم و قصه‌ها تعریفش می‌کنن ولی در واقع چنین چیزی نیست.

چیزی که گفته می‌شه اینه که: ۷ تا کلید دست ۷ نفر از سراسر جهانه که اگه همگی جمع بشن و این کلیدها رو کنار هم بذارن، می‌تونن اینترنت رو خاموش کنن! از اونجایی که واقعا ۷ تا کلید وجود داره و جزوی از ICANN هم هستن ممکنه فکر کنیم که داستان درستیه. ولی در واقع نیست.

چیزی که درستشه: یه جامعه‌ای داره این ICANN که بینشون رای گیری می‌شه و یه ۷ نفر معتمد انتخاب می‌شن. اینا هم یه کارتی دارن که در یه مراسمی بهشون اهدا می‌شه. با این کارت‌ها هم می‌تونن یه کار مهمی رو انجام بدن ولی اون قطع و وصل اینترنت نیست.
بلکه این کلید reboot کردن DNSSEC های root dns server هاست.

حالا چرا لازمه این اتفاق بیفته و آیا تا حالا اتفاق افتاده؟ اگه یه رخنه امنیتی تو سیستم‌ها به وجود بیاد و private key ها لو بره یا حمله تروریستی اتفاق بیفته اینا کلید‌ها رو به کمک این ریست می‌کنن.

حالا اگر لازم شد، ۵ تا از این ۷ نفر باید تو یه محل خاص (که توی آمریکاس) برن و و گذاشتن کلیدهاشون عملیات رو اجرا کنن.



عبارت‌های انگلیسی از متن مطلب خود ICANN میارم:
there are no keys that cause the Internet to function (or not to function).

the keys being talked about belong to just one single part of the Internet – the mechanism for authenticating the data in the domain name system (DNS), called DNSSEC. It is based on a hierarchy of cryptographic keys starting at the root of the DNS. The cryptographic keys for the root of the DNS are managed by ICANN.

The Internet consists of many different systems, and the DNS is just one of them. Controlling one aspect of the Internet, such as DNSSEC, does not lead to full control of other aspects.


حالا چرا اینقدر امنیت این سیستم مهمه؟
با کمک DNSSEC اون جواب dns ای که می‌گیرید اعتبارسنجی می‌شه که درست و معتبره. حالا هر dns server به کمک dns server بالا مرتبه‌اش اعتبار سنجی می‌شه اما root dns server ها که تحت کنترل ICANN هستن چطوری اعتبارسنجی می‌شن؟ یه private key وجود داره که این امنیتش خیلی مهمه برامون. اگه کسی داشته باشتش می‌تونه dns record نامعتبر خودشو با این رمز کنه و ما هم نمی‌فهمیم و یه هک از نوع dns hijacking خیلی زیبا اتفاق می‌افته.
اینا هم حساب کردن اگه هر کدوم از آدما ۵ درصد خطاکار باشه، یه جوری سامانه رو چیدن که نیاز به چند آدم معتمد باشه، احتمال اینکه چیزی مورد خرابکاری قرار بگیره یک در ملیونه.


منابع:
https://www.icann.org/en/blogs/details/the-problem-with-the-seven-keys-13-2-2017-en
و این خلاصه مصاحبه از Paul Kane
https://www.theguardian.com/technology/2010/jul/27/internet-key

اینم مطلب خیلی خوب بود:
https://www.cloudflare.com/dns/dnssec/root-signing-ceremony/
👍2👏2
ارسالی:
برای مصاحبه فنی، این سایته خوبه و دید خیلی خوبی میدی چیا رو احتمالا بپرسن
https://www.fullstack.cafe/
👍1
به‌روش های code review
https://vrgl.ir/sGgzU
👍6
image_2023-01-18_18-13-51.png
762.7 KB
جدول تناوبی زبان های برنامه نویسی هم ببینید.
👍2
شکن چطوری کار می‌کنه

کسایی که با «شکن، تحریم‌شکن اینترنتی» کار کرده باشند می‌دونن که یه ابزاره که تحریم‌ها رو دور می‌زنه. برای استفاده ازش برخلاف VPNها، فقط کافیه DNS serverتون رو عوض کنید. توضیحات فنی خودشون خیلی زیاد نیست ولی طبق شواهد، اونا یه dns server از نوع alternate دارن که برا اکثر سایت‌ها ip درستشون رو می‌ده ولی برای سایت‌های خاصی که تو لیستش هستن (سایت‌های تحریم شده) ip یک سرور دیگه (سرور شکن) رو می‌ده. حالا این سرور شکن اطلاعات و درخواست‌های ما که قرار بوده به سرور اصلی بره رو از طرف خودش به سرور اصلی می‌فرسته و جواب‌های سرور اصلی رو در اختیار ما می‌ذاره. یعنی برای یک‌سری از ip ها مثل vpn می‌مونه برای یکسری نه! البته این حالت اطلاعاتمون رو encapsulate نمی‌کنه بنابراین امنیتی برامون در برابر آدمای میانی توی شبکه ایجاد نمی‌کنه

اما فرق اصلی‌ای که با vpn داره و می‌شه گفت امنه اینه که کانکشنی که ما زدیم در واقع به خود سرور اصلیه و این وسط ترافیک فقط از سرور شکن عبور می‌کنه. چطور ممکنه؟ وقتی که از HTTPS استفاده کنیم، مرورگر ما درخواست هاشو رمزنگاری می‌کنه به شکلی که فقط دارنده‌ی دامنه‌ی مقصد می‌تونه اون رو باز کنه، پس سرور شکن که دارنده‌ی دامنه‌ی مقصد نیست (از نظر ما هست ولی در واقع نیست) نمی‌تونه درخواست ما رو رمزگشایی کنه. البته برای درخواست‌های رمز نشده‌ی http و کلا plain text این خطر وجود داره و درخواست‌هامون برای همه‌ی اعضای شبکه از جمله سرور شکن قابل دیدنه.

(برای مطالعه‌ی بیشتر در مورد SSL/TLS بخونید)
👍21👎1
به نظر من «سی» تا.
نظر شما چیه
😢2👌1
اینجا آقای Bartosz Milewski که از هسکلرهای خیلی خفنه، در مورد Category Theory صحبت میکنه.
یه چیز جالبی که می‌گه و خیلی تو ذهنم مونده اینه که ما آدما حافظه محدود و توانایی پردازش بی دقتی داریم برعکس کامپیوتر ها که دقت بالاتری توی محاسبه دارن ولی از خودشون ایده ندارن.
و میگه ما خوبه بیایم هر کار رو بسپریم به کسی که خوب انجامش میده.

https://www.youtube.com/watch?v=JH_Ou17_zyU
👏5
Forwarded from Digiato | دیجیاتو
📆جاوا، یکی از محبوب‌ترین زبان‌های برنامه‌نویسی جهان است که اولین نسخه پایدار آن موسوم به جاوا 1 در تاریخ 23 ژانویه 1996 منتشر شد.

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

👩‍💻🧑‍💻جاوا به‌طور گسترده در توسعه وب و اپلیکیشن و همچنین کلان‌داده مورد استفاده قرار می‌گیرد. جاوا به عنوان بک‌اند در بسیاری از وب‌سایت‌ها محبوب مانند گوگل، آمازون، توییتر و یوتوب استفاده شده است.

📱@Digiato 📡
🔥7👎4👍1
یک شبکه اجتماعی برای هکر ها

https://twtxt.envs.net/
👎4🤔3
اجرای برنامه‌ی دسکتاپ (حتی گرافیکی) توی داکر
برای مدیریت مصرف رم و پخش نشدن فایل هاشون توی دیسک

https://blog.jessfraz.com/post/docker-containers-on-the-desktop/
🔥1