نحوه انجام احراز هویت با ZAP زمانی که API فقط نشانه را در بدن XML می پذیرد؟

در حال حاضر در آزمایش یک برنامه زاویه ای 6 با استفاده از OWASP ZAP کار می کنم. من واقعا از این ابزار لذت می برم، اما مانند بسیاری از ما، با بخش احراز هویت مبارزه می کنیم و بدون آن کل ابزار تبدیل به یک همبرگر می شود.

مسیر ورود در localhost در / login و نقطه پایان API من https://api.mytestproject.com/auth تنها XML خام را قبول می کند مانند:


   1.0 
  
     ...
    
       testuser 
       تست 
       blablabla 
    
     ...
  

در پاسخ من یک نشانه دریافت می کنم، اما API نیاز به فرستادن در بدن را به عنوان فیلمی از هر درخواست و نه به عنوان یک عنوان مجوز دارد

همچنین، اجرای عنکبوت نمی کند هر زمان برای ورود به صورت دستی مراجعه کنید و من نمیتوانم هیچ رشته ای برای گفتن اینکه آیا من به سیستم وارد شده یا از سیستم خارج شده ام را ارائه می دهم، زیرا برنامه زاویه ای من سرور نیست.

ابدی نشانه چیست؟ X Enters بالای 100% 646 بارگیری رشد

ابدی نشانه چیست؟ X Enters بالای 100% 646 بارگیری رشد

blockchain صنعت هنوز در مراحل اولیه و به عنوان “disruptor” دو بانک ها و صنایع دیگر دیده می شود. اما این بدان معنی نیست که نمی تواند وجود داشته باشد disruptors در صنعت. شرکت هایی که پاپ و شروع به تهدید دوبارۀ در یک فضای خاص.

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

اوراکل Blockchain چیست؟

قرارداد هوشمند فوق العاده موثر و رمان راه های اتوماسیون و تصمیم گیری، اما آنها در حال حاضر داخل “باغ دیواره” زیست محیطی خود را زندگی می کنند. ما مورد بحث شرکت های که blockchains های مختلف و همچنین شرکت هایی که استفاده از blockchain برای اتصال دارایی های دنیای واقعی، اما نیاز به اتصال داده های خارجی را به blockchain نیز وجود دارد.

اوراکل مدت از یونان باستان اسطوره شناسی که در آن مردم اطلاعات کافی را ندارد تصمیم گیری و اکنون می خواهم به اوراکل برای ورودی های اضافی می آید. این دقیقا به چه هدف “اوراکل” به انجام است. اتصال Dapps و APIs فقط آغاز قدرت اوراکل است.

Ethereum Bitcoin و صورت انزوا با بدون اتصال به اطلاعات خارج از زنجیره های مربوطه خود را به کار گیرند. این شرایط اعتباری هوشمند قرارداد بسیار دشوار می سازد. در حالت ایده آل، اوراکل خواهد بود قادر به ترجمه اطلاعات خارج به شرایط است که می تواند به درک Dapps، بنابراین تحریک (یا نه رها سازی) قرارداد هوشمند.

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

Chainlink

از آنجا که مردم متوجه عظیم وجود دارد رقیب بالقوه برای هر کس به اطلاعات مانند تغییرات قیمت پرداخت یا حتی چیزی که بی گناه به عنوان درجه حرارت به blockchain چطور می تواند شرکت های بیشتر است کار بر روی حل این مشکل. Oraclize طولانی به عنوان جبهه دوم صنعت با behemoths دیگر مانند آی بی ام و مایکروسافت به پرتاب کلاه خود را در حلقه نیز دیده شده است.

Chainlink دیر به بازی است، اما پیشرفت قابل توجهی در زمان آنها شده به رفتن بعد از سهم بازار ساخته شده است. با مشخصات بالا مشارکت از جمله پرداخت سریع IC3 و باغبان، آنها به سختی ناشناخته دیگر است.

سکه خود را، پیوند، چه استفاده می شود به پرداخت برای اوراکل (یا گره) ارائه داده است. خدمات ارائه شده شامل خدمات صدور گواهینامه اعتبار و شهرت با f o اهداف اجرای یکپارچگی کلی شبکه های اوراکل. از لحاظ تاریخی، Chainlink ضعیف در اتصال از شده است و قصد دارد تا فناوری خود صحبت کردن را انجام دهید. در حال حاضر خود را mainnet هنوز زنده است و هنوز isn ‘ تی تی روشن است هنگامی که آن را منتشر خواهد شد. به همین دلیل تنها راه برای واقعا داوری چگونه انجام می دهند در مشارکت های خود را و لیست فایل های خود را بر اساس.

Chainlink های اخیر عملکرد

در چند هفته گذشته، به ما Chainlink صعود به رتبه بندی را وارد کنید بالا نشانه ERC-20 20 از نظر ارزش بازار را دیده اند. وحشی 23.8% در هفته گذشته، این را به دلیل ترکیبی از چند قطعه از اخبار است. اول، Bithumb اعلام کرد که لینک در خود تبادل شده خواهد بود. سپس، Chainlink همکاری با Gamedex که در آن آنها ترجمه نتایج مسابقه ورزش حرفه ای به Dapp اعلام کرد.

این چند تکه از اطلاعات به تنهایی بسیار معنی نیست، اما اغلب بازی حرکت است که می تواند به عنوان یک شرکت را از گمنامی بیرون می آید وجود دارد. در بالای 20 capitalizations بازار تعداد خوب است.

تصویر ویژه نیت Shutterstock.

فیلترشکن پرسرعت

.net – یک روش امن برای استفاده از نشانه های پی اچ پی در یک برنامه C # چیست؟

به نظر می رسد مانند شما، همانطور که بسیاری از شما قبل از انجام آن، تلاش می کنید تا آن را انجام دهید، بنابراین فقط یک «مجاز» میتواند به API آنلاین شما (احتمالا یک سرویس وب) دسترسی پیدا کند. این، به نظر شما، غیرممکن است. شما می توانید بسیاری از مراحل را برای ایجاد یک کارمند غیر مجاز کارآمد (ایجاد اشتباه، رمزگذاری کردن نشانه ها به صورت محلی، مسدود کردن استفاده از پروکسی متوقف شده با استفاده از تایید گواهی، طرح های مختلف دیگر DRM و غیره) سخت تر کنید، اما در پایان روزی، اگر مشتریان کار را به شما ارائه می دهیم، آنها می توانند (و اگر هر دلیلی برای ناراحتی دارند، ) همه مواردی را که مشتری انجام می دهد کپی می کند تا سرور شما آن را قانع کند.

بزرگتر سؤال این است، چرا به شما اهمیت میدهید؟ به طور کلی فقط چند دلیل وجود دارد که مردم سعی می کنند از مشتریان غیر مجاز جلوگیری کنند:

  1. آنها اعتماد زیادی به مشتری دارند. یک مثال ممکن است یک بازی آنلاین باشد که در آن مشتری به سرور می گوید که آیا کاربر برنده شده یا نه، به جای اینکه مشتری به سرور گفته شود چه کاربر انجام داده و سرور تصمیم بگیرد چه کسی برنده شود. هرگز به مشتری اعتماد نکنید.
  2. سرویس گران به نوعی از نظر هزینه (صرفه جویی در محاسبات، ذخیره سازی و هر چیز دیگری) هزینه دارد و می خواهند محدودیت درخواست های چندگانه را برای آن محدود کنند. رویکرد صحیح در اینجا احتیاج به احراز هویت کاربر است، نه مشتری، و یا کاربر را شارژ یا محدود کردن تعداد درخواستهایی که می توانند انجام دهند.
  3. آنها نمی خواهند مردم به طور اتوماتیک با سرویس ارتباط برقرار کنند، مثلا چون این یک بازی با بسیاری از رفتارهای تکراری است و آنها نمی خواهند که افراد برای رباتها نوشتن کنند. در آن صورت سخت است. تنها چیزی است که می توان در مقابل آن انجام داد و معمولا به نوعی بازنگری انسانی از تکرارها یا چیزی شبیه آن برای شناسایی تقلب ها می پردازد.
  4. آنها می خواهند فقط از کاربران خاص پشتیبانی کنند (مثلا آنها میخواهید با یک برنامه لینوکس آشنا شوید) و نگران هستند که اگر کسی برنامه خود را بسازد، آنها با درخواست پشتیبانی برای کدی که نوشتند بمباران نمی شوند. صادقانه می گویم، هیچ راهی خوب برای این کار وجود ندارد (به جز نام تجاری نام تجاری شما و استفاده از تهدید قانونی علیه کسی که تلاش می کند چیزی را به عنوان شما منتشر کند، این کار را متوقف نخواهد کرد؛ چیزی که "مشتری غیر رسمی YourService (TM) ")

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

تأیید اعتبار – آیا این یک پیاده سازی امن از نشانه های تجدید JWT است؟

من یک نشانه ی بازخوانی JWT را اجرا میکنم و روش زیر را برای تشویق نشانه ها توسعه داده ام. زیر برنامه جریان است:

  • هنگامی که سرور اطلاعات ورود را بازیابی می کند، آن را در برابر رمز عبور بررسی می کند
    پایگاه داده و ایجاد Token JWT با یک نشانه تازه کردن به عنوان یکی از آن
    ادعا می کند در محموله. (کاراکترهای تصادفی). این تازه سازی را ذخیره خواهد کرد
    نشانه در یک پایگاه داده.
  • پس از ورود، سرور ورود به سیستم: true و Token access JWT
  • از آنجا که نشانگر refresh در داخل JWT است، دو نشانه لازم نیست
    فرستاده می شود
  • اگر مشتری یک نشانه دسترسی را که تمام شده است، ارسال می کند، سرور خواهد شد
    کد زیر را در ادعا بررسی کنید و ببینید آیا در داخل db است.
    اگر این کار را کرد، یک نشانه جدید با یک نشانه تازه کردن ایجاد خواهد کرد و
  • اگر مشتری بخواهد از همه دستگاه ها بیرون برود، می توانند به راحتی تمام آنها را لغو کنند
    از نشانه های بازخوانی آنها و زمانی که همه آنها بیرون می آیند
    نشانه ها منقضی می شوند (نشانه های 15 دقیقه JWT).

مزایایی که می توانم در این پیاده سازی ببینم عبارتند از:

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

مشکلاتی که من با آنها می بینم عبارتند از:

  • JWT ها همیشه دارای نشانگر refresh هستند، بنابراین مهاجم همیشه باید باشد
    قادر به انجام یک تازه کردن و استفاده از نشانه refresh تا زمانی که منقضی شود
    مگر اینکه مشتری آن را با ورود به سیستم (از تمام دستگاه ها) لغو می کند.
  • مشتری می تواند تماس ورود به سیستم را در حلقه اجرا کند و پایگاه داده را پر کند
    زیرا هر بار که آنها وارد سیستم می شوند، یک نشانه دسترسی جدید ایجاد می شود و یک
    کد جدید refresh در پایگاه داده ذخیره می شود.

آیا این روش امن است؟ اگر چنین است، من عمدتا با کسی که با پایگاه داده های جدید refresh و پر کردن دیسک پر می کند، نگرانم. چگونه می توانم از وقوع اجتناب کنم؟