Публічні бакети
Бакет, відкритий для анонімного читання, — це сайт, який ви опублікували випадково.
Що таке Публічні бакети?
Бакети об'єктного сховища мають назви й нічим не приховані, а сканери цілодобово перебирають шаблони назв. Бакет, налаштований на анонімне читання, — це публічний вебсайт, про публікацію якого ви не знали. Ви знайдете назву бакета на публічній сторінці підтримки, отримаєте перелік його вмісту й одним неавтентифікованим запитом заберете нічний експорт даних клієнтів. Потім увімкнете блокування публічного доступу для бакета й замінете політику із символом підстановки на таку, у якій указано, хто може читати. Закриття доступу до бакета не скасовує завантаження даних, які вже пішли.
Що ви дізнаєтесь у Публічні бакети
- Пам'ятайте: назви бакетів можна вгадати, і їх безперервно сканують. Не вважайте прихованість контролем доступу.
- Враховуйте, що анонімне читання бакета з експортом — це повний витік даних за один запит, і жодне обмеження частоти запитів його не сповільнить.
- Ввімкніть блокування публічного доступу для бакета, який опинився у відкритому доступі, а потім для всього облікового запису, щоб і наступний бакет був захищений.
- Доводьте, що виправлення спрацювало: повторюйте ідентичний анонімний запит і переконуйтеся, що його відхилено.
Публічні бакети — Кроки навчання
-
Хост на сторінці підтримки
Боб обрав ціллю Orbrandt — компанію, програмне забезпечення якої веде графіки прийому та картки клієнтів кількох сотень ветеринарних клінік. У нього немає ні облікових даних, ні плацдарму, і поки що він не шукає ані того, ані іншого. Він починає звідти, звідки може почати будь-хто: з тих частин компанії, які призначені для публічного доступу.
-
Додайте цей хост до списку дозволених
Сторінка саме така, якою себе подає: друковані форми згоди та шаблони імпорту для клінік. Корисна, нудна й цілком призначена для публічного доступу. Одна примітка на ній цікавіша за самі форми.
-
Попросіть у бакета перелік
Бакет, що віддає файли, — це одне. Бакет, що перелічує свій вміст стороннім, — зовсім інше, і це два окремі дозволи, які люди регулярно надають разом ненавмисно. Боб просить перелік зовсім без облікових даних.
-
Що міститься в префіксі exports
Префікс forms — той, який компанія збиралася публікувати. Боб одразу оминає його.
-
Вебсайт, якого ніхто не публікував
Командний рядок — звичка Боба, але він не обов'язковий. Той самий дозвіл відповідає й звичайному браузеру. Це варто побачити, бо саме так на такий відкритий доступ зазвичай натрапляє той, хто його навіть не шукав.
-
Ні входу, ні ключа — лише URL
Облікових даних ніхто не надавав і ніхто не вимагав. Бакет віддав власний перелік вмісту анонімному браузеру.
-
Заберіть копію
Перелік вмісту бакета показує зловмисникові, що там є. Читання з нього — окремий дозвіл, і компанія Orbrandt надала й цей.
-
Що було всередині
Досі йшлося лише про назви файлів і кількість байтів. Боб відкриває початок файлу, щоб побачити, що саме він забрав. Боб закриває ноутбук із копією всіх клієнтських записів, які має компанія Orbrandt.
-
Чому це спрацювало
-
Це знайшов ще хтось
Того ж дня по обіді ніхто в компанії Orbrandt нічого не помітив, бо анонімне читання не залишає у поштовій скриньці нічого, що можна було б помітити. Потім дослідник знаходить той самий бакет і діє відповідально.
Охоплення стандартів безпеки
CWE
- CWE-732 Incorrect Permission Assignment for Critical Resource
- CWE-668 Exposure of Resource to Wrong Sphere
MITRE ATT&CK
- T1530 Data from Cloud Storage
CIS Controls
- CIS 3 Data Protection
NIST CSF
- PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
- PR.DS Data Security