chrome – دریافت تشخیص مرورگر TLS

من یک سرور TLS در جاوا دارم که درخواست مشتری (cert) را نمی دهد. من یک مشتری TLS جاوا دارم که خوب کار می کند. اما اگر مرورگر در آن (Edge یا Chrome) اشاره کنم، مرورگر به تدریج بعد از پیام درخواست Cert، دستخوش خاتمه می شود. گواهی مشتری مرورگر به نظر می رسد به خوبی در یک زمینه متفاوت کار می کند

سوال من این است که آیا در هر مرورگر معمولی تنظیمات وجود دارد که به من تفسیر خود را از آنچه در حال انجام است و به همین دلیل، آنها فقط بسته سوکت . چیزی معادل با javax.net.debug

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

من همیشه این درد را برای ایجاد یک کلید جدید برای توسعه پیدا می کنم و من فکر می کردم که این کار را برای خودم انجام دهم و به دیگر توسعه دهندگان کمک کنم:

  1. ثبت دامنه مانند fakesite.com [19659003] دریافت یک گواهی SSL معروف
  2. هر دو فایل های گواهی و کلید خصوصی را در اختیار عموم قرار می دهد
  3. سایت های خود را به صورت محلی تست کنید با اضافه کردن مطالب به فایل های میزبان من برای هر چیزی که می خواهم تست کنم (یعنی api.fakesite.com، www .fakesite.com، و غیره) یا اشاره به 127.0.0.1 یا ip من در شبکه محلی من و با استفاده از گواهی عمومی و کلید خصوصی.

fakesite.com تمام زیردامنه ها را به یک صفحه در وب سایت اصلی که می تواند توضیح دهد چه چیزی برای آن بود. گواهی واقعی و کلید خصوصی در جاهای دیگر مانند یک مخزن Github قابل دسترسی خواهد بود.

تنها مشکلی که می توانم از آن بپرسم

1) مهاجم می تواند یک حمله MITM را تغییر مسیر DNS خود را به وب سایت خود، که آنها میتواند با استفاده از کلید خصوصی خصوصی در دسترس عموم قرار بگیرد و شما را در مرور به یک صفحه وب مانند 'citibank.fakesite.com' و ورود اطلاعات خود متمرکز سازد.

2) به عنوان یک توسعه دهنده، یک URL را از بین میبرد و ارسال میکنم ترافیک به apu.fakesite.com، که مانند بالا استفاده می شود، بنابراین می توانند ترافیک را که من برای ارسال به کامپیوتر محلی خود می گیرم، ضبط کنم.

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

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

آیا مسائلی وجود دارد که من فکر نمی کنم یا به احتمال زیاد به احتمال زیاد این یک ایده بد است؟

</p>
<pre>TLS - چه مشکلی وجود دارد با یک کلید خصوصی باز برای توسعه دهندگان برای استفاده؟<br />

tls – آیا HTTP و HTTPS به طور خودکار در وب سایت من کار می کنند و یا باید به نحوی اجازه داده شود؟

این سایت از کوکی ها برای ارائه خدمات ما و نمایش آگهی های مرتبط و لیست های شغلی استفاده می کند.
با استفاده از سایت ما، شما تأیید میکنید که ما خط مشی کوکیها، خط مشی رازداری و شرایط خدمات ما را خوانده و درک کردهاید.
استفاده شما از محصولات و خدمات سرریز پشته، از جمله شبکه سرریز پشته، تحت این شرایط و ضوابط است.
                

tcp – MQTT بدون TLS – جلوگیری از ارسال پیام ها از دستگاه های غیرقابل شناسایی

من یک مورد استفاده دارم که در آن من نمی توانم از MQTTS / TLS به دلیل محدودیت در دستگاه استفاده کنم.

برنامه ما این است که در طول MQTT CONNECT تأییدیه را منتقل کنیم، یک نشانه JWT به عنوان یک کلمه عبور. اگر به درستی درک کنم MQTT یک اتصال TCP را برای تمام پیام های بعدی باز نگه می دارد.

با توجه به یک Broker استاندارد MQTT (مانند HiveMQ، VerneMQ، …)، ممکن است یک مهاجم به PUBLISH mqtt message بدون تماس CONNECT ابتدا؟

البته آنها به طور بالقوه میتوانند نشانه JWT را تشخیص دهند و با CONNECT تماس بگیرند، اما این نشانه تنها برای مدت کوتاهی معتبر خواهد بود .. و همچنین ما می توانیم برخی از حسابرسی در CONNECT برای جلوگیری از حملات (فیلتر کردن IP، …)

قرار داد.

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

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

آیا استفاده از TLS، SSH و SSL در یک اتصال امن تر می شود؟

پروتکل های رمزگذاری شبکه چند لایه به طور خاص اطلاعات محرمانه یا یکپارچگی داده های باربری شما را انتقال نمی دهد. در حالی که SSL شکسته شده است (پروتکل SSL2 و SSL3)، TLS نسبتا قوی است، به ویژه TLS1.2 و TLS1.3 آینده. همانند SSH2 درست است (تقریبا تمام اتصالات SSH مدرن از SSH2 استفاده می کنند)، که همچنین از الگوریتم های قوی و امن استفاده می کند. پروتکل های متعدد لایه بندی خطر احتمال پیاده سازی یک پروتکل را برای حمله ی مرگبار آسیب پذیر می سازد و موجب می شود که لایه ی آن ها بدتر شود.

اساسا، تمام این پروتکل های مختلف، پیاده سازی الگوریتم های مشابه (یا معادل) هستند. هر دو TLS و SSH از DHE یا ECDHE برای ایمن مبادله کلید مخفی استفاده می کنند، هر دو از رمزهای قوی مانند AES برای رمزگذاری اطلاعات خود با کلید رمز مخفی پشتیبانی می کنند و هر دو از تکنیک های قوی مانند HMAC برای محافظت از یکپارچگی داده ها استفاده می کنند. آنها تنها در آنچه که برای بهینه سازی هستند متفاوت است. به عنوان مثال SSH دارای ویژگی هایی است که زمان تأخیر برای ارسال کلید های کلیدی را کاهش می دهد، در حالی که TLS دارای ویژگی های فراوانی برای پشتیبانی از PKI قابل اعتماد (زیرساخت کلی عمومی) است.

در عوض، شما باید یک پروتکل واحد را انتخاب کنید که برای نیازهای شما مناسب است از آن استفاده کنید. برای چیزی شبیه اتصال به پایگاه داده MySQL، احتمالا بهترین استفاده از TLS است. این برای این نوع اتصالات بهینه شده است، در حالی که SSH بهینه سازی های مختلفی دارد که ممکن است لازم نباشد. از لحاظ الگوریتم های رمزنگاری واقعی استفاده شده، همه آنها به همان اندازه قوی هستند.