1.9 Testing for Weaker Authentication in Alternative Channel

Суть тестування:

Навіть якщо основні механізми автентифікації не містять уразливостей, можливо, вразливості існують в альтернативному каналі автентифікації. Необхідно провести випробування виявлення альтернативних каналів. Оскільки альтернативні канали взаємодії можна використовуватиме обходу основного каналу. Наприклад:

- Стандартний сайт

- Оптимізований веб-сайт для мобільних пристроїв

- Веб-сайти з альтернативними країнами та мовами

- Паралельні веб-сайти, які використовують одні й ті самі облікові записи користувачів

- Тестове середовище, проміжна версія стандартного сайту

Зверніть увагу, що основна увага у цьому тесті приділяється альтернативним каналам. Деякі альтернативи автентифікації можуть відображатися як різний контент, але доставляється через той самий веб-сайт. Також на вразливості у формі аутентифікації є такі аспекти як:

- Постійні зміни у функціональності

- Використання сайту без файлів cookie

- Використання сайту без JavaScript

Навіть якщо обсяг тесту не дозволяє перевірити альтернативні канали, їх наявність має бути документованою. Це може підірвати ступінь впевненості, що у вас все заебіться в аутентифікації і може бути провісником додаткового тестування.

Приклад

Є сайт:

http://www.example.com

а функції автентифікації у нього виконуються на сторінках, які використовують Transport Layer Security:

https://www.example.com/myaccount/

Однак існує окремий веб-сайт, оптимізований для мобільних пристроїв, який взагалі не використовує Transport Layer Security і має слабкіший механізм відновлення пароля:

http://m.example.com/myaccount/

Як протестувати

Зрозуміти первинний механізм Повністю протестуйте основні функції автентифікації веб-сайту. Це повинно визначити, як облікові записи випускаються, створюються або змінюються і як паролі для них відновлюються, скидаються або змінюються. Додатково необхідно дізнатися про будь-які підвищені привілеї користувачів для подальших захистів автентифікації. Ці знання необхідні, щоб мати змогу порівняти роботу механізмів альтернативних каналах.

Визначити інші канали Інші

Канали можна знайти такими способами:

- Читання вмісту сайту, особливо домашньої сторінки, контакти, сторінки довідки, техпідтримки, питання, що часто ставляться, конфіденційні повідомлення, файл robots.txt і будь-які файли sitemap.xml.

- Пошук у журналах HTTP-проксі, записаних під час попереднього збору інформації, для таких рядків, як "mobile", "android", "blackberry", "ipad", "iphone", "mobile app", "e-reader" ,"wireless", "auth", "sso", "single sign on" у шляхах URL і вмістом вмісту.

- Використовуйте пошукові системи, щоб знайти різні веб-сайти однієї організації або з одним і тим же доменним ім'ям, які мають схожий вміст домашньої сторінки або мають механізми автентифікації. Для кожного каналу підтвердьте, чи використовуються спільні облікові записи користувачів.

Перерахувати функціональні можливості автентифікації

Для кожного альтернативного каналу, в якому використовуються загальні облікові записи користувачів або функції, визначте, чи всі функції автентифікації основного каналу доступні, і чи є щось зайве. Може бути корисно створити сітку, подібну до наведеної нижче:

У цьому прикладі мобільний телефон має додаткову функцію change password, але не пропонує зробити log out. Обмежену кількість завдань також можна зателефонувати до кол-центру. Перераховуючи канали, варто звернути увагу на те, як здійснюється керування сеансами, у разі збігу по будь-якому каналу (наприклад, файли cookie прив'язані до одного і того ж батьківського домену, чи дозволені одночасні сеанси на різних каналах).