Ключ API, ключ к утечке и манипулированию учетными данными

Ключ API, ключ к утечке и манипулированию учетными данными

Этичный Хакер

Django - это веб-фреймворк на основе Python, который позволяет разработчикам легко создавать безопасные и поддерживаемые веб-сайты. Этот бесплатный фреймворк с открытым исходным кодом является одним из самых популярных фреймворков Python, поскольку он предоставляет множество способов упростить жизнь веб-разработчикам. Проблема в том, что многие разработчики легко упускают из виду важность безопасности при использовании этих ярлыков.

При поиске веб-приложений Django с включенным режимом отладки было обнаружено, что информация об учетных записях базы данных (далее именуемая DB) и ключи API более чем тысяч приложений доступны в Интернете. Это означает, что хакеры могут без проблем присваивать личную информацию и конфиденциальные документы корпорации. Команда CIP AI Spera провела поиск веб-приложений, таких как Django и Laravel, а также связанных с ними ключевых слов, чтобы оценить серьезность утечки учетных данных в Criminal IP, комплексной поисковой системе для анализа киберугроз.

Что такое учетные данные?

Удостоверение личности в словаре определяется как "квалификация" и обычно относится к доказательствам, подтверждающим чьи-либо права и полномочия, таким как ваше удостоверение личности и сертификаты. Однако термин ‘Учетные данные’ также применим к облачным средам и Oauth, таким как Facebook, где вы используете идентификатор ключа доступа / секретный ключ для социальной аутентификации. В последние дни термин "Учетные данные" не обязательно означает ключи, связанные с аутентификацией, но в более широком смысле - информацию об IP внутренних облачных сетях VPC.

При поиске ключевых слов, связанных с аутентификацией (идентификатор ключа доступа, секретный ключ доступа) в Criminal IP Asset Search, вы часто можете найти IP-адреса с открытыми учетными данными, многие из которых имеют либо Oauth, либо RESTfull API.

  • Идентификатор ключа доступа: он же ключ доступа, относится к имени пользователя общих веб-сайтов.
  • Секретный ключ доступа: он же Секретный ключ, относится к паролям общих веб-сайтов.

Например, типы ключей доступа, используемые в Amazon Cloud, состоят из следующих:

Типы ключей доступа, используемых в Amazon Cloud

Кроме того, вы можете искать информацию, связанную с аутентификацией, в корзине, хранилище, часто используемое в облачных сервисах. Если это хранилище доступно, оно может вызвать серьезные проблемы, поскольку любой может украсть нераскрытые файлы с сервера. Команда выполнила поиск по ключевому слову Bucket, чтобы найти сегменты в режиме чтения.

“READ_BUCKET_NAME” 

Выполнив поиск по запросу “READ_BUCKET_NAME” на криминальном IP, вы можете найти в общей сложности 635 веб-сайтов. Среди них вы также можете найти веб-сайты с именем “NAVERCloud VOD Service TBD”, которые, как предполагается, являются демонстрационными страницами загрузки пакетов для пользователей NAVER Cloud. Тем не менее, на этих веб-сайтах есть демонстрационный доменный адрес конечной точки, идентификатор ключа доступа и секретный ключ доступа, которые используются для тестирования загрузки файлов, когда они должны были быть скрыты. Что усугубляет проблему, так это то, что подобных сайтов гораздо больше.


Открытые учетные данные доступа под тегом HTML Body

Как искать сайты режима отладки в Django Web

Режимы отладки часто используются фреймворком Laravel на основе PHP и веб-приложениями Django на основе Python для удобства разработки. Несмотря на удобство, предоставляемое режимом отладки, он также создает проблему как для Laravel Framework, так и для Django, поскольку после активации он предоставляет конфиденциальную информацию в сообщениях об ошибках.

Следующий фильтр можно использовать для поиска веб-сайтов с включенным режимом отладки Django при поиске криминальных IP-активов.

“DisallowedHost at“

Веб-сайт Django с включенным режимом отладки, предоставляющий конфиденциальную информацию для сообщений об ошибках

Заголовок HTTP-запроса, отображаемый в веб-приложении Django, содержит не только упомянутый ранее ключ API, но и информацию, связанную с аутентификацией, такую как администратор и пароль, а также учетная запись DB.

Веб-сайт Django с открытой конфиденциальной информацией, такой как администратор и пароли

Веб-сайты Laravel с включенным режимом отладки также можно искать с помощью приведенного ниже фильтра.

title: “Whoops! There was an error”

Результат при поиске заголовка: “Упс! Произошла ошибка ” при поиске преступных IP-активов

Режим отладки Laravel активирован для всех этих искомых IP-адресов, и при доступе к нему вы сможете увидеть информацию о ключе приложения, учетной записи базы данных и пароле в сообщении об ошибке.

Веб-сайт Laravel с открытой конфиденциальной информацией, такой как учетные записи и пароли БД

Открытые ключи API в виде текстовых файлов

Если вы ищете ‘APIKEY.txt "при поиске активов вы можете найти что-то интригующее.

APIKey.txt

Результат при поиске “APIKey.txt ” об уголовном розыске активов интеллектуальной собственности

Взглянув на искомый веб-сайт, трудно определить назначение сайта. Однако источник страницы дает вам четкое представление о том, что представляет собой эта страница.

Веб-сайт после поиска APIKey.txt

Источник страницы отмечает, что этот веб-сайт использует Firebase в качестве своей базы данных, и в разделе Конфигурация firebase вы можете увидеть, что доступны ключ API, AuthDomain, AppID, которые выдаются при использовании firebase SDK.

Источник страницы веб-сайта выше. Учетные данные открыты.

Команда также обнаружила веб-сайт, который, по-видимому, является китайским RESTfull API с открытым хэшем токена доступа администратора.

Китайский веб-сайт с открытым хэшем токена доступа администратора

Криминальный IP часто показывает HTML-файлы, содержащие учетные данные, которые, как правило, остаются без внимания в результате тестирования или по ошибке. Например, приведенные ниже изображения представляют собой HTML-файлы с метаданными IAM Amazon Cloud Service (AWS) или ключом DynamoDB AWS.

1) HTML-файл с метаданными IAM. Найдены учетные записи пользователей.

HTML-файл, отображающий учетные записи пользователей в метаданных AWS IAM

2) HTML-файл с помощью DynamoDB, одного из основных серверов AWS NoSQL. Предоставляются учетные данные, включая идентификатор ключа доступа и секретный ключ.

DynamoDB Admin

Результат при поиске AWS DynamoDB Admin в поиске преступных IP-активов

Открытый ключ доступа в рабочем скрипте AWS DynamoDB

Заключение

Благодаря облачным технологиям производительность разработчиков заметно возросла. Однако, поскольку основное внимание уделяется производительности, высказывались опасения, что безопасность считается низким приоритетом.

В то время как в прошлом безопасность была сосредоточена исключительно на управлении учетными записями, такими как имя пользователя и пароль в БД, теперь, в облачную эпоху, существуют ключи API с разрешением “изменить”, что означает, что всего одна утечка ключа API может привести к утечке учетных данных или манипулированию.

Облачные технологии развиваются быстрыми темпами, как и безопасность. Поэтому необходимо регулярно проверять разработчиков, чтобы убедиться, что они знакомы с самыми последними технологиями кибербезопасности. Более того, мы все должны помнить, что в эпоху облачных вычислений одна небольшая ошибка, такая как ошибки настройки, может привести к утечке учетных данных, нанося катастрофический ущерб безопасности как частным лицам, так и предприятиям.




Report Page