10 най-добри софтуера за управление на секрети за сигурност на приложенията

Осигурете това, което има значение за вашия бизнес.

Има много за какво да мислите, докато работите с контейнери, Kubernetes, облак и тайни. Трябва да използвате и свържете най-добрите практики относно управлението на идентичността и достъпа и да изберете и използвате различни инструменти.

Независимо дали сте разработчик или професионалист в системния администратор, трябва да изясните, че имате правилния избор от инструменти, за да поддържате вашите среди защитени. Приложенията се нуждаят от достъп до конфигурационни данни, за да работят правилно. И докато повечето конфигурационни данни не са чувствителни, някои трябва да останат поверителни. Тези низове са известни като тайни.

Не ми казвайте, че все още имате тайни в GitHub.

Е, ако изграждате надеждно приложение, шансовете са вашите функции да изискват достъп до тайни или всякакви други видове чувствителна информация, която пазите.

Тези секрети могат да включват:

  • API ключове
  • Идентификационни данни за база данни
  • Ключове за криптиране
  • Чувствителни настройки за конфигурация (имейл адрес, потребителски имена, флагове за отстраняване на грешки и др.)
  • Пароли

Сигурното опазване на тези тайни обаче по-късно може да се окаже трудна задача. И така, ето няколко съвета за разработчици и системни администратори:

Коригиране на зависимостите на функцията

Винаги помнете да проследявате библиотеките, използвани във функциите, и да отбелязвате уязвимостите, като ги наблюдавате непрекъснато.

Използвайте API шлюзове като буфер за сигурност

Не излагайте функциите точно на потребителско взаимодействие. Възползвайте се от възможностите на API шлюза на вашите облачни доставчици, за да включите още едно ниво на сигурност в допълнение към вашата функция.

Защитете и проверете данните при пренос

Не забравяйте да използвате HTTPS за защитен комуникационен канал и проверете SSL сертификатите, за да защитите отдалечената самоличност.

Следвайте правилата за безопасно кодиране за код на приложение.

Без сървъри за хакване, нападателите ще насочат мислите си към приложния слой, така че полагайте допълнителни грижи, за да защитите кода си.

Управлявайте тайни в защитено хранилище

Чувствителната информация може лесно да бъде изтекла, а остарелите идентификационни данни са склонни към атаки на Rainbow Table, ако пренебрегнете да приемете подходящи решения за управление на тайни. Не забравяйте да не съхранявате тайни в приложната система, променливите на средата или системата за управление на изходния код.

Ключовото управление в света на сътрудничеството е много болезнено поради, наред с други причини, липсата на знания и ресурси. Вместо това, някои компании вграждат ключовете за шифроване и други софтуерни тайни директно в изходния код на приложението, което ги използва, въвеждайки риск от разкриване на тайните.

Поради липсата на твърде много готови решения, много компании се стремят да създадат свои собствени инструменти за управление на тайни. Ето няколко, които можете да използвате за вашите изисквания.

Трезор

HashiCorp Vault е инструмент за сигурно съхранение и достъп до тайни.

Той осигурява унифициран интерфейс към тайната, като същевременно поддържа строг контрол на достъпа и регистрира цялостен журнал за одит. Това е инструмент, който защитава потребителските приложения и бази, за да ограничи повърхностното пространство и времето за атака при пробив.

  14 портфейла за криптовалута, за да съхранявате вашата криптовалута сигурно

Той предоставя API, който позволява достъп до тайни въз основа на политики. Всеки потребител на API трябва да потвърди и да види само тайните, за които е упълномощен да преглежда.

Vault криптира данните с помощта на 256-битов AES с GCM.

Може да натрупва данни в различни бекендове като Amazon DynamoDB, Consul и много други. Vault поддържа регистриране в локален файл за услуги за одит, Syslog сървър или директно към сокет. Vault регистрира информация за клиента, който е действал, IP адреса на клиента, действието и по кое време е извършено

Стартирането/рестартирането винаги включва един или повече оператори за разпечатване на хранилището. Работи предимно с токени. Всеки токен се дава на политика, която може да ограничи действията и пътищата. Основните характеристики на Vault са:

  • Той криптира и дешифрира данни, без да ги съхранява.
  • Vault може да генерира тайни при поискване за някои операции, като AWS или SQL бази данни.
  • Позволява репликация в множество центрове за данни.
  • Vault има вградена защита за тайно оттегляне.
  • Служи като тайно хранилище с подробности за контрол на достъпа.

AWS Secrets Manager

Очаквахте AWS в този списък. нали?

AWS има решение за всеки проблем.

AWS Secrets Manager ви позволява бързо да ротирате, управлявате и извличате идентификационни данни за база данни, API ключове и други пароли. Използвайки Secrets Manager, можете да защитите, анализирате и управлявате тайни, необходими за достъп до възможностите на AWS Cloud, в услуги на трети страни и локално.

Secrets Manager ви позволява да управлявате достъпа до тайни, като използвате фини разрешения. Основните характеристики на AWS Secrets Manager са:

  • Шифрова тайни в покой с помощта на ключове за криптиране.
  • Освен това декриптира тайната и след това я предава сигурно през TLS.
  • Предоставя примерни кодове, които помагат за извикване на API на Secrets Manager
  • Има кеширащи библиотеки от страна на клиента за подобряване на наличността и намаляване на забавянето при използване на вашите тайни.
  • Конфигурирайте крайните точки на Amazon VPC (Virtual Private Cloud), за да поддържате трафика в мрежата на AWS.

Трезор без ключ

Akeyless Vault е унифицирана SaaS-базирана платформа за управление на тайни от край до край, защитаваща всички видове идентификационни данни, както статични, така и динамични, включително автоматизация на сертификати и ключове за криптиране. Освен това, той предоставя уникално решение за осигуряване на отдалечен достъп (нулево доверие) до всички ресурси в наследени, мулти-облачни и хибридни среди.

Akeyless защитава тайни и ключове с помощта на вградена сертифицирана и патентована технология FIPS 140-2; няма никакви познания за тайните и ключовете на своите клиенти.

Ключовите характеристики включват:

  • Глобално достъпна SaaS-базирана платформа, която предлага вградена висока наличност (HA) и възстановяване след бедствие (DR) чрез използване на облачна архитектура на върха на мултирегионална и многооблачна услуга.
  • Усъвършенстваното управление на тайни осигурява защитено хранилище за статични и динамични тайни като пароли, идентификационни данни, API ключове, токени и др.
  • Akeyless Vault позволява осигуряване и инжектиране на всички видове тайни към всички ваши сървъри, приложения и работни натоварвания, предоставяйки голямо разнообразие от плъгини, които ви позволяват да се свързвате с всичките си DevOps и IT платформи, като CI/CD, управление на конфигурацията и оркестрация инструменти като Kubernetes & Docker.

Най-бързо време за производство, защото:

  • SaaS – не е необходимо внедряване, инсталиране или поддръжка
  • Незабавно включване с автоматична миграция на тайни от известни съществуващи хранилища на тайни
  Добавете бележки към имейл или нишка за разговор [Chrome]

Платформата поддържа още два стълба:

  • Достъп до приложения с нулево доверие (известен още като отдалечен достъп) чрез предоставяне на унифицирано удостоверяване и идентификационни данни за достъп точно навреме, което ви позволява да защитите приложенията и инфраструктурата без периметър.
  • Шифроването като услуга позволява на клиентите да защитават чувствителни лични и бизнес данни чрез прилагане на разширено сертифицирано по FIPS 140-2 криптиране на ниво приложение.

Keywhiz

Square Keywhiz помага с инфраструктурни тайни, GPG ключодържатели и идентификационни данни за бази данни, включително TLS сертификати и ключове, симетрични ключове, API токени и SSH ключове за външни услуги. Keywhiz е инструмент за работа и споделяне на тайни.

Автоматизацията в Keywhiz ни позволява безпроблемно да разпространяваме и настройваме основните тайни за нашите услуги, което изисква последователна и сигурна среда. Основните характеристики на Keywhiz са:

  • Keywhiz Server предоставя JSON API за събиране и управление на тайни.
  • Той съхранява всички тайни само в паметта и никога не се повтаря на диска.
  • Потребителският интерфейс е създаден с AngularJS, така че потребителите да могат да валидират и използват потребителския интерфейс.

Довереник

Confidant е инструмент за управление на тайни с отворен код, който поддържа безопасно съхранение и достъп до тайни. Confidant съхранява тайни по начин на добавяне в DynamoDB и генерира уникален KMS ключ за данни за всяка модификация на цялата тайна, използвайки Fernet симетрична автентифицирана криптография.

Той предоставя уеб интерфейс AngularJS, който предоставя на крайните потребители ефективно управление на тайни, формите на тайни за услуги и запис на промените. Някои от характеристиките включват:

  • KMS удостоверяване
  • Криптиране в покой на версионни тайни
  • Удобен за потребителя уеб интерфейс за управление на тайни
  • Генерирайте токени, които могат да се прилагат за удостоверяване между услуги или за предаване на криптирани съобщения между услугите.

СОПС

Позволете ми да ви представя SOPS, един невероятен инструмент, който наскоро открих. Това е шифрован файлов редактор, който поддържа формати като YAML, JSON, ENV, INI и BINARY. Най-добрата част? Той може да шифрова вашите файлове с помощта на AWS KMS, GCP KMS, Azure Key Vault, възраст и PGP.

Ето къде става интересно. Представете си, че работите на машина, която няма директен достъп до ключове за криптиране като PGP ключовете. Няма проблем! SOPS ви е покрил със своята ключова услуга. Можете да предоставите на SOPS достъп до ключове за криптиране, съхранени на отдалечена машина, като препратите сокет. Все едно да имате свой собствен преносим GPG агент!

SOPS работи по модел клиент-сървър за криптиране и декриптиране на ключа за данни. По подразбиране той изпълнява локална ключова услуга в рамките на процеса. Клиентът изпраща заявки за криптиране или декриптиране до ключовата услуга, използвайки gRPC и протоколни буфери. Не се тревожете; тези заявки не съдържат никакви криптографски ключове, публични или частни.

Трябва да подчертая, че връзката с ключова услуга в момента няма удостоверяване или криптиране. Удостоверяването и шифроването на връзката чрез други средства, като например SSH тунел, е силно препоръчително за гарантиране на сигурността.

Но чакайте, има още! SOPS може да генерира одитни журнали за проследяване на достъпа до файлове във вашата контролирана среда. Когато е активиран, той записва дейността по декриптиране в база данни на PostgreSQL, включително клеймо за време, потребителско име и декриптиран файл. Доста спретнато, нали?

  Как да намерите дублиращи се стойности в Microsoft Excel

Освен това SOPS предлага две удобни команди за предаване на дешифрирани тайни към нов процес: exec-env и exec-file. Първият инжектира изхода в средата на дъщерен процес, докато вторият го съхранява във временен файл.

Не забравяйте, че файловото разширение определя метода на криптиране, използван от SOPS. Ако шифровате файл в определен формат, не забравяйте да запазите оригиналното файлово разширение за декриптиране. Това е най-лесният начин да осигурите съвместимост.

SOPS черпи вдъхновение от инструменти като hiera-eyaml, credstash, sneaker и password store. Това е фантастично решение, което елиминира неудобството от ръчното управление на файлове, криптирани с PGP.

Azure Key Vault

Хостинг на вашите приложения на Azure? Ако да, тогава това би бил добър избор.

Azure Key Vault позволява на потребителите да управляват всички тайни (ключове, сертификати, низове за връзка, пароли и т.н.) за своето облачно приложение на определено място. Той е интегриран веднага с произхода и целите на тайните в Azure. Приложения извън Azure могат допълнително да го използват.

Можете също така да подобрите производителността, като намалите закъснението на вашите облачни приложения, като съхранявате криптографски ключове в облака вместо локално.

Azure може да помогне за постигане на защита на данните и изискване за съответствие.

Докерски тайни

Тайните на Docker ви позволяват лесно да добавите тайната към клъстера и тя се споделя само през взаимно удостоверени TLS връзки. След това данните се достигат до мениджърския възел в тайните на Docker и автоматично се записват във вътрешното хранилище на Raft, което гарантира, че данните трябва да бъдат криптирани.

Тайните на Docker могат лесно да се прилагат за управление на данните и по този начин да ги прехвърлят към контейнерите с достъп до тях. Предотвратява изтичането на тайните, когато приложението ги използва.

Нокс

Knox, е разработен от платформата за социални медии Pinterest, за да реши техния проблем с ръчното управление на ключовете и поддържането на одитна пътека. Knox е написан на Go и клиентите комуникират със сървъра на Knox, използвайки REST API.

Knox използва променлива временна база данни за съхраняване на ключове. Той криптира данните, съхранявани в базата данни, използвайки AES-GCM с главен ключ за криптиране. Knox се предлага и като Docker изображение.

Доплер

От стартиращи фирми до предприятия, хиляди организации използват Doppler, за да запазят своята тайна и конфигурация на приложения в синхрон между среди, членове на екипа и устройства.

Няма нужда да споделяте тайни по имейл, zip файлове, git и Slack; позволете на вашите екипи да си сътрудничат, така че да го имат незабавно след добавянето на тайната. Доплерът ви дава усещане за релакс, като автоматизира процеса и спестява време.

Можете да създадете препратки към често използваните тайни, така че една актуализация на определени интервали да свърши цялата ви работа. Използвайте тайните в Serverless, Docker или навсякъде, Doppler работи с вас. Когато вашият стек се развива, той остава такъв, какъвто е, което ви позволява да стартирате на живо в рамките на минути.

Doppler CLI знае всичко за извличането на вашите тайни въз основа на директорията на вашия проект. Не се притеснявайте, ако нещо се промени, можете лесно да върнете повредените модификации с едно кликване или чрез CLI и API.

С Doppler работете по-интелигентно, отколкото по-усърдно, и вземете своя софтуер за управление на тайни БЕЗПЛАТНО. Ако търсите повече функции и предимства, вземете стартов пакет от $6/месец/място.

Заключение

Надявам се, че горното ви дава представа за някои от най-добрите софтуери за управление на идентификационните данни на приложението.

След това проучете инвентара на цифровите активи и решенията за мониторинг.